الإعلان عن WebCeph - مدوّنة فوّاز
تجربة عظيمة ومشروع رائع فواز، قرأتُ المقالَ كله ربما في وقتٍ قياسي، لدي بعض الأسئلة من واقع تجربتك:
في البداية قرأتُ الموضوع إلى نهايته أين جائزتي :)؟
عندما أعمل على مشروعٍ كبير شخصي، دائمًا أحاول الوصول إلى الكمال؛ -تنظيم العمليات في البرنامج وهيكله، التصميم، أو حتى أسماء الدوال والنطاقات إلى تصميم الشيفرة!- لأني لا أملك الكثير من الوقت؛ يؤجل هذا أغلب مشاريعي أو يلغها في النهاية، هل واجهتَ هذه المشكلة؟
هذا يعرضني لمشكلة، أقتبسها من موضوعك:
إذا كنت بالفعل مبرمجًا ماهرًا، فلماذا لم تُنجز شيئًا مُفيدًا حتّى الآن؟
لماذا يستغرق إعداد برنامج سهل كهذا كلّ هذا الوقت؟ كنت أظنّك مُبرمجًا مُحترفًا!
- لماذا الويب؟ في العادة تكون مثل هذه المشاريع مبنية على سطح المكتب وبلغة C++؛ ألم تخش من البطء مثلًا؟ إن تعقد المشروع في المستقبل ربما الويب لن يناسبه؟؛ -على أي حال لو حتى صفحة بيضاء فإنها تكون بطيئة في المتصفح-.
على الهامش:
كنت أظنُ أنك أخر شخصٍ ستستخدم لغة تترجم إلى جافاسكريبت فما بالك بـTypeScript من ميكروسوفت! :)
سؤال غير مهم -فقط من أجل توحيد المصطلحات-: أكتبُ مقالًا عن الـWeb Workers لفت إنتباهي أنك استخدمت مسالك لترجمة Threads؛ هل هذه الترجمة ترى أنها أفضل من خيوط؟ وكذا معيار لـSpecification بدلًا من مواصفة؟
بما أنك صبور جدًّا، فعليك أن تصبر كثيرًا حتى تصلك الجائزة :)
الكمال عدو الإنجاز كما يقولون، الأمر نفسي أكثر منه "تقني"، تعرضت لنفس الموقف عندما أردت الالتزام بالذّهاب إلى النادي الرياضي، قلت لنفسي: "لماذا سأذهب إن كنت لا أستطيع الالتزام كل يوم؟ بالتأكيد سأعود من الجامعة متعبًا ولن أرى تحسنًا"، ما أفعله عندما أبدأ بطرح هذه الأسئلة، هو أن أجمع ثيابي وأخرج من البيت دون تفكير، فقط ابدأ just get started، استمتع بالعملية وليس بالنتيجة enjoy the process، ولا تنسَ أنّ الخبرة لا يمكن اكتسابها دون أن تمرّ بمراحل تكون فيها "قليل الخبرة". تصالح مع نفسك.
الويب لأنّني أستعمل Linux وكل البرامج المتاحة لهذه المهمة مدفوعة بمبالغ طائلة، ومتوفرة لـWindows فقط، وغالبًا لإصدارات قديمة من Windows. الويب يستطيع فعل الكثير، لكنّ عليك أن تحسن التفكير فيما تفعله، كما أنّه سيكون في جعبتنا قريبًا WebAssembly الّتي ستجعل فكرة التطوير للويب أكثر قبولًا بين المطوّرين. ليس هذا فحسب، مع Service Workers أستطيع تمامًا أن أقنع أي شخص باستخدام تطبيقي، ليس عليه تثبيت أي شيء أو التّفكير في دعم نظامه للتّطبيق، أو "هل يدعم 64 بت"، كيف أحدث التطبيق؟... كل هذا تحصل عليه مجّانًا! المتصفّح برنامج ذو تقنيات شديدة الفائدة والتعقيد، وهو موجود في جهاز المستخدم على كل حال، فلماذا لا نستخدمه؟
بالنسبة لـthreads، كنت أترجمها "خيوط"، لكنّني تعرّفت على هذه الترجمة الجميلة من منهاج الهندسة المعلوماتيّة في جامعات سوريا :)
التعليقات