"لارس كنودسن" هو خبير مطوّر في Google، تحدثنا معه عن كيفية الاستفادة من جهاز 10 دولار أمريكي في تسهيل وصول الأشخاص الذين يعانون من عجز إلى أجهزة الكمبيوتر.
Monika: ما الذي دفعك لتصبح مطوّر برامج؟ ما هو مجال تركيزك المهني الحالي؟
لارس: حصلتُ على درجة الماجستير في الهندسة، ولكن في الحقيقة بدأ اهتمامي بالتكنولوجيا في وقت أبكر من ذلك. عندما كنت طفلاً في الثمانينيات، كان والدي يملك شركة حوسبة تعمل في مجال تصميم الجرافيك. في بعض الأحيان، خاصةً خلال عطلات الصيف، كان يأخذني إلى العمل معه. في بعض الأحيان، كان بعض موظفيه يراقبونني. كان هناك شخص ذكي حقًا قال لي ذات مرة: "لارس، أنا بحاجة إلى إنجاز بعض الأعمال، ولكن إليك دليل C، وهناك جهاز كمبيوتر هناك. إليك كيفية بدء تشغيل برنامج التحويل البرمجي بلغة C. إذا كان لديك أي أسئلة، تعال واسألني". بدأت في كتابة نصوص قصيرة مترجمة إلى شيء يستطيع الكمبيوتر فهمه. بدا ذلك ساحرًا بالنسبة لي. كان عمري 11 عامًا عندما بدأت في الصف السابع تقريبًا، تمكنتُ من إنشاء تطبيقات صغيرة لزملائي في الصف أو استخدامها في المدرسة. هكذا بدأ الأمر.
على مرّ السنين، عملت في العديد من الشركات، بما في ذلك Nokia وMarersk وOpenwave. في البداية، كما هو الحال في العديد من المهن الأخرى، لأنك تعرف القليل، تشعر أنه يمكنك القيام بكل شيء، ولكن مع الوقت تتعلم أن كل شركة لديها طريقة معينة للقيام بالأشياء.
بعد بضع سنوات من العمل في شركة طبية، بدأت نشاطي التجاري الخاص في عام 1999. عملت كمقاول مستقل، وبفضل ذلك، أتيحت لي الفرصة للتعرف على عدة مؤسسات بسرعة. بعد الانتهاء من العقود الخمسة الأولى، اكتشفت أن كل شركة تعتقد أنها وجدت الإعداد المثالي، لكنها جميعًا مختلفة تمامًا. وفي ذلك الوقت، تعرّضت أيضًا للعديد من التكنولوجيات وأنظمة التشغيل وغيرها. وفي أوائل العشرينات تقريبًا، تغيّرت طريقة تفكيري. في البداية، كنت أركّز بشدة على تقنية واحدة وأردت معرفة كل شيء عنها. مع مرور الوقت، بدأت أفكر في دمج التكنولوجيات كوسيلة لتحسين حياتنا. لديّ اهتمام خاص بتضييق الفجوة بين ما نسميه الفريق "أ" والفريق "ب" في العالم. أحاول نقل أكبر قدر ممكن من المعرفة إلى المناطق التي لا يتوفر فيها للأشخاص رفاهية امتلاك جهاز كمبيوتر أو الدراسة مجانًا في الجامعة.
ما زلت أعمل كمقاول مع شركاء خارجيين، ولكن كلما أمكن، أحاول اختيار المشروعات التي لها نوع من التأثير الإيجابي على البيئة أو المجتمع. أعمل حاليًا على برنامج مضمَّن في شركة لسماعات الأذن الطبية اسمها Oticon. من ناحية البرامج، كنت أعمل على كل شيء بدءًا من أصغر وحدات التحكم الدقيقة إلى السحابة؛ فإن الكثير مما أفعله يدور حول الويب. وأحاول دمج التكنولوجيات عندما يكون ذلك مناسبًا.
Monika: هل كنت تشارك في منتديات المطوّرين قبل الانضمام إلى "برنامج خبراء التطوير في Google"؟
لارس: نعم، لقد شاركت في لقاءات ومؤتمرات. اتصلت بالمجتمع لأول مرة أثناء العمل في شركة Nokia. في العام 2010 تقريبًا، قابلتُ كينيث رودي كريستيانسن الذي أصبح قبلي من قبل GDE. لقد ألهمني لرؤية كيف يمكن أن تكون تقنيات الويب مفيدة للمتخصّصين الطموحين في مجال التكنولوجيا في البلدان النامية. يتطلب تطوير الحلول ونشرها باستخدام C++ أو C# أو Java بعض سنوات الخبرة، ولكن يمكن لكل من لديه إمكانية الوصول إلى جهاز كمبيوتر أو متصفح أو مفكرة البدء في تطوير التطبيقات المستندة إلى الويب والتعلم بسرعة كبيرة. من الممكن إنشاء تطبيق كامل الوظائف باستخدام موارد محدودة، وتحقيق النجاح من لا شيء. لهذا السبب أسمي الويب حزمة تقنية شديدة الديمقراطية.
بالعودة إلى المنتدى، أصبحت مهتمًا بعد فترة بتوحيد معايير الويب والمشاكل التي يمكن أن تحلها أحدث تكنولوجيات الويب. جرّبتُ إمكانات جديدة في أحد المتصفحات قبل إصداره. كنت أعمل لدى شركة Nokia حينها كنت أطور جهاز N9 الرائد المستند إلى نظام Linux. استندنا إلى WebKit في المتصفح الذي أنشأناه، وحصلت على خبرة رائعة في تطوير ميزات لمشروع كبير مفتوح المصدر. في السنوات التي تلت مغادرتي لشركة Nokia، شاركت في مؤتمرات ولقاءات على الويب، لذا كان من المنطقي الانضمام إلى منتدى GDE في عام 2017.
أستمتع كثيرًا بعمل المنتدى وبكل ما أنجزناه معًا، لا سيما مؤتمرات مؤتمرات Chrome للمطوّرين قبل الجائحة، حيث تمكّنتُ من المساعدة في مهام توفير مساحة العمل جنبًا إلى جنب مع مجموعة من مهندسي Google الرائعين وغيرهم من خبراء GDE.
Monika: ما هي النصيحة التي تقدّمها للمطوِّر الشاب الذي بدأ للتو مسيرته المهنية ولا يعرف المسار الذي يجب اتخاذه؟
لارس: استنادًا إلى تجربتي الخاصة، إذا كنت تستطيع تحمُّل تكلفة ذلك، فكّر في العمل الحر لشركتين مختلفتين. وبهذه الطريقة، سيتم التعامل مع الرموز البرمجية في العديد من الأشكال ومراحل التطوير المختلفة. ستتعرّف على مجموعة كبيرة من أنظمة التشغيل واللغات، وستتعلم كيفية حل المشاكل بطرق عديدة. ساعدني ذلك كثيرًا في اكتساب خبرة كمطوّر برامج في العشرينات من عمري. سيساعدك هذا النهج في تحقيق أهدافك المهنية بشكل أسرع.
إضافةً إلى ذلك، يمكنك الاستمتاع، واستكشاف، واللعب، والأجهزة والبرامج. فكر في بناء شيء يحل مشكلة حقيقية - ربما لأصدقائك أو عائلتك أو نشاط تجاري محلي. لا تخف من الانتقال إلى شيء لم تفعله من قبل.
Monika: ما الذي يخبئه المستقبل لتقنيات الويب؟
لارس: أعتقد أنّه على مدى عامين، ظلّت شبكة الويب قادرة بالكامل على توفير منصة للتطبيقات الميدانية الكبيرة، لكل من المستهلكين والأنشطة التجارية. على جانب الخادم، تقدم تقنيات الويب تجربة سلسة، خاصة لمطوّري الواجهات الأمامية الذين يريدون إنشاء مكون خلفية. أصبح من الأسهل عليهم البدء الآن. أعرف أشخاصًا كانوا يستخدمون كلاً من Firebase وHeroku لإنجاز هذه المهمة. وسيزداد هذا الاتجاه، حيث ستكون تقنيات الويب كافية لإنشاء حلول معقدة من أي نوع. وأعتقد أنّ إمكانات الويب - Project Fugu 🐡 توفّر إمكانات جديدة.
من منظور مختلف قليلاً، أعتقد أيضًا أنّنا إذا قدّمنا مستندات كاملة ومقالات مفصّلة ليس باللغة الإنجليزية فحسب، بل إلى لغات أخرى أيضًا (مثل الإسبانية والبرتغالية)، سيؤدي ذلك إلى إتاحة الكثير من الإمكانات في أمريكا اللاتينية ومناطق أخرى. غالبًا ما لا يجيد المطوّرون في هذا البلد اللغة الإنجليزية بما يكفي لفهم جميع المقالات ذات الصلة بشكل كامل. يجب أن نمنحهم أيضًا الفرصة للتعلم في أقرب وقت ممكن، حتى قبل أن يبدأوا الجامعة، بينما لا يزالون في موطنهم. قد يستخدم هؤلاء الأشخاص هذه المهارات لمساعدة المجتمعات والأنشطة التجارية المحلية قبل مغادرة منزلهم وربما لا يعودون أبدًا.
توماس: لقد قطعت شوطًا طويلاً بدءًا من تطوير مجال البرمجة C على جهاز كمبيوتر عشوائي وحتى اختراق الأجهزة. كيف فعلت ذلك؟
لارس: بدأتُ في تفكيك الكثير من الأجهزة التي كانت لديّ في المنزل. لم يكن والدي سعيدًا دائمًا عندما لم أتمكن من إعادة تجميعه. ومع مرور الوقت، تعلّمت كيفية تصميم بعض الأجهزة الصغيرة، ولكن انطلقت هذه العملية في وقت لاحق، عندما انضممت إلى Nokia، حيث حصلت على خبرتي المضمنة. أتيحت لي الفرصة لتصميم شاشات استراحة صغيرة ومكونات لهواتف Series 30. كنت شغوفًا به حقًا ويمكنني التفكير بأسلوب مبتكر. كلّفتني بمهمة تصميم لعبة الثعبان لهذه الأجهزة. لقد كانت تجربة شيقة للغاية. يتمثل الاختلاف الرئيسي بين إنشاء الأنظمة المضمنة ومعظم الأشياء الأخرى (بما في ذلك الويب) في أنك تترك بصمة صغيرة - ليس لديك مساحة كبيرة أو ذاكرة كبيرة لاستخدامها. أثناء إنشاء لعبة Snake، كانت ذاكرة الوصول العشوائي المتاحة لدي أقل من ثلث التخزين المؤقت للإطارات (حوالي 120 × 120 بكسل). كان علي أن أتوصل إلى طرق لإعادة دمج المكونات على الشاشة بشكل خوارزمي حتى تبدو ثابتة، كما لو كانت في شكل مربّعات. لقد تعلمت الكثير - كان ذلك هو الانتقال من الأنظمة الأكبر إلى الحلول الصغيرة والمضمنة.
توماس: تختلف مجموعة مهارات مطوّر الواجهة الأمامية العادي كثيرًا عن مجموعة مهارات الشخص الذي ينشئ أجهزة مُضمّنة. كيف يمكنك تشجيع مطوّر الواجهة الأمامية على النظر في الأجهزة وبدء التفكير في البرنامج الثنائي؟
لارس: أعتقد أنّ الخطوة الأولى هي النظر إلى بعض واجهات برمجة تطبيقات Fuugu التي تعمل في Chrome وEdge، وهي مدمَجة في جميع الأنظمة الرئيسية الحالية. هذا كل ما تحتاج إليه في البداية.
الأمر الآخر هو أن سلاسل الأدوات الخاصة ببناء الحلول المضمّنة لديها منحنى تعلم شديد. إذا كنت تريد إنشاء أجهزتك المخصّصة، يمكنك البدء باستخدام Arduino أو ESP32، الذي يسهُل شراؤه وبتكلفة منخفضة جدًا. باستخدام بيئة التطوير المناسبة، يمكنك إعداد مشروعك وتشغيله في لمح البصر.
يمكنك أيضًا شراء جهاز مراقبة معدل ضربات القلب أو وحدة استشعار متعددة تستخدم خدمات Bluetooth GATT، بحيث لا تحتاج إلى إنشاء أجهزتك أو برامجك الثابتة — يمكنك استخدام ما هو موجود بالفعل وبدء التجربة باستخدام Web Bluetooth API لبدء الاتصال بها.
هناك أيضًا أجهزة تستخدم بروتوكولًا تسلسليًا، ولهذه الأجهزة، يمكنك استخدام Web Serial API (أيضًا Fugu). كنت أدرس مؤخرًا استخدام WebHID API التي تتيح لك التحدّث إلى جميع أجهزة الواجهة البشرية التي يمكن للجميع الوصول إليها. وجدتُ بعض الأجهزة القديمة في طابقي السفلي والتي لم تكن متوافقة مع أي نظام تشغيل منذ سنوات، ولكن بفضل الهندسة العكسية، استغرق الأمر بضع ساعات لإعادة تفعيلها.
هناك مناهج مختلفة حسب ما تريد تصميمه، ولكن أود أن أقول إن عليكم الحصول على وحدة استشعار صلبة، ربما من نوع Thingy 52 من Nordic تعليقconductor. فهو يحتوي على الكثير من أدوات الاستشعار، ويمكنك توصيله بتطبيق الويب بأقل جهد يُذكر.
"توماس": الخطوة الأولى هي التواصل مع الجهاز، ثم التواصل معه بفعالية، وهذا إجراء آخر. لماذا لم تستسلم بعد مواجهة عقبات؟ ما الذي شجّعك على مواصلة العمل؟
لارس: بالنسبة إليّ شخصيًا، كان الجانب الاجتماعي لحلّ المشاكل هو الأهم بالنسبة إليّ. عندما بدأتُ العمل في مشاريعي المُضمَّنة، كانت لدي رؤية ورغبة في إنشاء مختبر علوم في صندوق للمناطق النامية. زوجتي من المكسيك ورأيت بعض المدارس هناك؛ فإن بعض المواقع الموجودة خارج المدن الكبيرة قد تبدو معطّلة إلى حد ما، بدون الوصول إلى المواد والمعدات الموجودة في منطقتنا من العالم.
شغفي لبناء شيء يمكن استخدامه لمساعدة الآخرين - وهذا ما جعلني أستمر. واستمتعتُ أيضًا حقًا بدعم المنتدى. لقد تواصلت مع بعض الأشخاص في Google وكانوا جميعًا متعاونين للغاية وأجابوا بصبر على جميع أسئلتي.
توماس: يمتلك الكثير من الأشخاص نوعًا من المعدّات في المنزل، لكنهم لا يعرفون كيفية استخدامها. كيف تستلهم جميع مشاريعك الرائعة، لا سيما المشروع الذي يحمل الاسم العملي SimpleMouse؟
لارس:حاولتُ مؤخرًا إعادة تصميم الكثير من الأجهزة القديمة، ولكن بالنسبة إلى هذا المشروع بالتحديد، لم يتم تحديد اسم التطبيق حتى الآن، ولكن لنسمّيه SimpleMouse، لقد استخدمت تجربتي. لقد عملت مع بعض حلول إمكانية الوصول في وقت سابق ورأيت كيف لم يعد بعضها يعمل؛ ستحتاج إلى تثبيت نظام تشغيل Windows XP قديم مع تثبيت برامج معينة لتشغيلها. لا يمكنك تحديث هذه الإعدادات، ويمكنك استخدامها فقط في المنزل لأنه لا يمكنك نقل إعداداتك.
لهذا السبب، تساءلت عن كيفية دمج مهاراتي من العالم المضمّن مع المشروع Fugu وما هو ممكن الآن على الويب لإنشاء أجهزة رخيصة وميسورة التكلفة إلى جانب برامج سهلة الفهم من كلا الجانبين، حتى يتمكن الأشخاص من البناء على ذلك.
بالنسبة لهذا المشروع بالذات، أخذت مفتاح USB صغيرًا به شريحة عاكسة، nRF52840. فهو يتصل بالبلوتوث من جهة ومنفذ USB من الجانب الآخر. ويمكنك برمجته في الأساس ليكون أي شيء على كلا الجانبين. ثم فكرت في الأجهزة التي تتحكم في الكمبيوتر - الماوس ولوحة المفاتيح. قد يجد بعض الأشخاص من ذوي الاحتياجات الخاصة صعوبة في تشغيل هذه الأجهزة، وأردت مساعدتهم.
أول شيء فعلته هو التأكد من أن أي نظام تشغيل يرى وحدة USB الإلكترونية كماوس. يمكنك التحكم في ذلك من تطبيق محلي أو تطبيق ويب—مباشرةً في البلوتوث. بعد ذلك، قمتُ بإنشاء تطبيق ويب — وهو قالب بسيط يمكن للأشخاص تمديده بالطريقة التي يريدونها باستخدام مكونات الويب. بفضل ذلك، يمكن للجميع التحكم في أجهزة الكمبيوتر الخاصة بهم باستخدام تطبيق ويب أنشأته في بضع ساعات فقط على هاتف Android.
يتيح هذا الإعداد لأي شخص في العالم لديه بعض الخبرة على الويب أن ينشئ، في غضون أيام، حلاً مخصّصًا للغاية لأي شخص من ذوي الاحتياجات الخاصة ويرغب في التحكم في جهاز الكمبيوتر الخاص به. والميزة الرائعة هي أنّه يمكن اصطحاب هذا الجهاز معك في أي مكان تذهب إليه واستخدامه مع أجهزة أخرى أيضًا. ستحصل على التجربة نفسها. بالنسبة إليّ، إنّ سهولة نقل الجهاز وسعره شديد الأهمية لأنّ الأشخاص لم يعودوا يقتصرون على استخدام أجهزتهم الخاصة، ولم يعودوا يقتصرون على موقع واحد فقط.
توماس: هل سنحت لك الفرصة لاختبار الجهاز في الحياة الواقعية؟
لارس: خلال رحلتي الأخيرة إلى المكسيك، ناقشتُ هذا الموضوع مع خبير ويب يعيش هناك. وهو يبحث الآن في إمكانات استخدام الجهاز محليًا. وهناك تكلفة المعدات باهظة الثمن حقًا، ولكن تكلفة وحدة USB الإلكترونية عادةً ما تبلغ عشرة دولارات أمريكية (أو ما يعادلها بالعملة المحلية). إنه يتحقق الآن مما إذا كان بإمكاننا إنشاء إعدادات محلية هناك لتجربتها. لم أُجرِ تجارب رسمية بعد هنا في الدانمرك.
توماس: إنّ العديد من الأجهزة المصمّمة لمساعدة الأشخاص الذين يعانون من عجز باهظ الثمن. هل تخطط للتعاون مع أي شركة بعينها وطرحها للإنتاج مقابل جزء من سعر تلك المعدات باهظة الثمن؟
لارس: نعم، بالتأكيد. لقد تحدثت بالفعل مع شركة تصنيع أجهزة محلية بشأن ذلك. وبالطبع، لن يحلّ الجهاز محلّ كل هذه الحلول المتخصصة للغاية، ولكن قد يكون الخطوة الأولى نحو تطوير مشروع أكبر، على سبيل المثال باستخدام ميزة التعرّف على الصوت المتوفّرة لتقنيات الويب. سيكون ذلك طريقة سهلة للتحكّم في الأجهزة باستخدام هاتف Android. يمكن أن تعمل مع أي جهاز من أي نوع
فمجرد القدرة على إنشاء ما تريده على الويب واستخدامه للتحكم في أي جهاز كمبيوتر مضيف يفتح الكثير من الاحتمالات.
توماس: هل ستطرح مشروعك على Zephyr مفتوح المصدر؟ ما هو نوع الترخيص الذي تستخدمه؟ هل هناك خطط لاستثمار المشروع؟
لارس: نعم، هذا الحل مفتوح المصدر. لم أضع ترخيصًا محددًا لاستخدام هذا الإصدار، ولكن أعتقد أنّ الإصدار Apache 2.0 سيكون هو السبيل لذلك. وتستخدم العديد من الشركات الكبرى هذا الترخيص، بما في ذلك Google. عندما عملت على SimpleMouse، لم أفكر في تحقيق دخل من المشروع - لم يكن ذلك هدفي. لكنني أعتقد أيضًا أنه من المنطقي محاولة إنتاجه بطريقة ما، وبهذا تكون التكلفة. الهدف النهائي هو جعلها متاحة. أود أن أراه يتم تنفيذه بتكلفة منخفضة وعلى نطاق واسع.