بناء مدرسة برمجة مجانية: رحلتنا مع منهج freeCodeCamp والدروس المستفادة
في عالم اليوم سريع التطور، أصبح تعلم البرمجة مهارة أساسية تفتح أبواباً واسعة للفرص. ومع ذلك، فإن مسار التعلم ليس سهلاً دائماً، وقد يواجه الطامحون في هذا المجال تحديات كبيرة. بشكل عام، هناك ثلاثة خيارات رئيسية لتعلم البرمجة:
- التعلم الذاتي: وهو الخيار الأقل تكلفة، ولكنه قد يكون الأكثر إحباطاً وصعوبة. فمن السهل جداً أن تتعثر في طريقك وتفقد الحافز للاستمرار.
- الالتحاق بالجامعة: للحصول على درجة علمية في علوم الحاسوب أو تكنولوجيا المعلومات. هذا الخيار مكلف ويستغرق وقتاً طويلاً.
- الالتحاق بمدارس البرمجة (Bootcamps): وهي دورات مكثفة مصممة لتسريع عملية التعلم ومساعدة الطلاب في العثور على وظيفتهم الأولى في تطوير البرمجيات خلال فترة تتراوح بين ثلاثة أشهر وعام واحد. لكنها أيضاً تتطلب استثماراً مالياً كبيراً ووقتاً مخصصاً.
ليست كل هذه الخيارات متاحة للجميع، خاصة لأولئك الذين لا يستطيعون تحمل تكاليف الدراسة أو أخذ إجازة من العمل أو لديهم التزامات عائلية. من هنا، ولدت فكرة إنشاء freeCodeSchool Indy، وهو برنامج تعليمي مجاني للبرمجة يعتمد على منهج freeCodeCamp. نهدف إلى توجيه الطلاب عبر برامج تعليمية بدوام جزئي لمدة ثلاثة أشهر، مع حصتين أسبوعياً مدة كل منهما ساعتان، نغطي فيها كل شيء من أساسيات HTML إلى JavaScript ومقدمة في React. يُتوقع من الطلاب قضاء 6 ساعات على الأقل أسبوعياً في الدراسة الذاتية، مع إمكانية حضور ساعات مكتبية اختيارية أيام الأحد.
إذا أكمل الطلاب البرنامج الأول، يمكنهم الالتحاق ببرنامج ثانٍ مدته ثلاثة أشهر أخرى، يتعلمون فيه تطوير الويب الخلفي باستخدام Node.js. لقد عملنا على هذه الفكرة لأكثر من عام، ويسعدنا أننا أكملنا دفعتنا الأولى في مايو. والآن، حان الوقت لمشاركة ما تعلمناه.
هدفنا من بناء مدرسة برمجة مجانية
كان هدفنا الأساسي منذ البداية هو توفير تعليم متاح وداعم للجميع، بغض النظر عن الدخل أو ظروف الحياة (مثل القدرة على أخذ إجازة من العمل). نحن لا نسعى للمنافسة مع مدارس البرمجة التقليدية أو الدورات المكثفة؛ فهي أيضاً تقدم خدمة قيمة للطلاب. نحن ببساطة نحاول توفير خيار آخر أكثر سهولة للأشخاص الذين يحتاجون إلى جدول زمني مرن أو لا يستطيعون تحمل تكاليف مدارس البرمجة المدفوعة.
سيتلقى الطلاب التوجيه والدعم من الموظفين والمتطوعين وأفراد المجتمع طوال البرنامج، وكخريجين بعد ذلك. بالطبع، نأمل أن يتمكن طلابنا من الحصول على وظائف في الصناعة إذا كان هذا هو هدفهم، لكننا لا نملك الموارد لضمان أي شيء. نحن فقط نريد تقديم أكبر قدر ممكن من الدعم للطلاب، سواء قرروا الاستمرار في التعلم بمفردهم أو الالتحاق ببرنامج أكثر رسمية، مثل مدرسة برمجة مدفوعة أو كلية.
كيف خططنا للبرنامج
كما ذكرت سابقاً، استغرق الأمر حوالي عام لإعداد كل شيء، بين إيجاد المساحة والمدربين، بالإضافة إلى تحديد نوع البرنامج والمنهج الدراسي. إليك كل ما دخل في إعداد برنامجنا:
تحديد المدة والأهداف
قررنا أن تكون الفصول الدراسية مدتها ثلاثة أشهر، يتعلم فيها الطلاب أساسيات HTML و CSS و JavaScript، مع بعض الإضافات مثل Bootstrap ومكونات React. إذا سارت الأمور على ما يرام، كان هدفنا أخذ إجازة لمدة شهر واحد ثم استضافة دورة مستوى ثانٍ للطلاب الذين أكملوا الدورة الأولى. سيكون المستوى الثاني ثلاثة أشهر أخرى نبني فيها على ما علمناه في المستوى الأول ونعلم المزيد عن أطر عمل JavaScript ونقدم Node.js.
ساعدنا البدء صغيراً ببرنامج بدوام جزئي لمدة ثلاثة أشهر فقط على التعلم وإجراء التعديلات أثناء تقدمنا. كما منح الطلاب هدفاً قصيراً ومحدداً زمنياً لإكمال البرنامج والحصول على حافظة أعمال صغيرة في غضون بضعة أشهر فقط. يمكنكم الاطلاع على منظمتنا على Github. نحن بصدد تحديث موادنا وفتح مصدرها (open-sourcing) باستمرار.
اعتماد منهج freeCodeCamp
تطوير المناهج الدراسية يستغرق وقتاً طويلاً ومكلفاً. لحسن الحظ، لدى freeCodeCamp بالفعل منهج مجاني رائع يمكننا استخدامه وتعديله دون قيود. لقد اعتمدنا منهج freeCodeCamp وتبعناه كخطوط عريضة لمحاضراتنا. استخدمنا تحدياته كواجبات للطلاب لإكمالها بين الفصول الدراسية. كما استخدمنا مشاريع freeCodeCamp كواجبات فردية وجماعية على طول الطريق. طوال الدروس، شجعنا الطلاب أيضاً على بذل القليل من العمل الإضافي للحصول على شهادات freeCodeCamp الخاصة بهم أثناء البرنامج أو بعد انتهائه.
كيف وجدنا مساحة لاستضافة الفصول الدراسية
وافقت مكتبة إنديانابوليس العامة (The Indianapolis Public Library) بسخاء على استضافة فصولنا وتوفير مساحة لنا لساعات العمل. كانت مساحة مختبر الحاسوب محدودة، لذا كان الحد الأقصى لعدد الطلاب الذين يمكننا قبولهم في الفصل الواحد هو 22 طالباً. كان بإمكاننا استخدام غرفة مؤتمرات أكبر في المكتبة لاستيعاب عدد أكبر من الطلاب، ولكن حينها لم نكن لنتمكن من قبول الطلاب الذين لا يملكون جهاز كمبيوتر محمول، وهذا لم يكن ليكون متاحاً للجميع.
لم نخطط لأن نكون برنامجاً عن بعد، لذلك اضطررنا إلى تعديل فصولنا لاستخدام Discord للمحاضرات وجميع اتصالات الطلاب عندما ظهرت جائحة COVID-19. سنتحدث عن ذلك لاحقاً.
كيف اخترنا الأدوات التقنية
لقد أعددنا منتدى Discourse (مثل منتدى freeCodeCamp) قبل بدء الفصول الدراسية حتى يتمكن الطلاب من تسجيل الدخول، والحصول على الإعلانات، وطرح الأسئلة، ونشر الواجبات. كما منح ذلك طاقم الإدارة بعض الامتيازات لتتبع الطلاب والإشراف على تفاعلاتهم.
إدارة المدرسة
العثور على الطلاب
عندما كنا نخطط لهذا البرنامج، كان قلقنا هو أننا لن نحصل على اهتمام كافٍ وأن كل تخطيطنا سيذهب سدى. لكن الواقع كان أننا حظينا باهتمام كبير جداً ولم نتمكن من استيعاب كل طالب. فمقابل 22 مقعداً، كان لدينا أكثر من 140 شخصاً يرغبون في المشاركة! وهذا كان دون القيام بالكثير من التسويق.
كان من المثير جداً الحصول على هذا القدر الكبير من الاهتمام ببرنامجنا، ولكن كان علينا أيضاً أن نقرر أي الطلاب نختار وكيف نختار بطريقة عادلة. قررنا تقليص العدد من خلال مطالبة الأشخاص بالحضور لثلاثة أنشطة فرز مسبق حيث يكملون بعض التحديات الأساسية، مثل لعبة Flappy Game من Code.org. سمح لنا هذا بمعرفة الطلاب الملتزمين بالحضور وخفض عدد الأشخاص المنتظرين إلى حوالي 80. كان هذا العدد لا يزال كبيراً جداً بالنسبة للمساحة التي لدينا، لذلك اضطررنا إلى إجراء سحب عشوائي لاختيار الطلاب النهائيين.
تدريس الطلاب
يتعلم كل طالب بطريقة مختلفة ولديه شخصيته وتفضيلاته الخاصة. من غير المعقول أن نتوقع أننا نستطيع ببساطة إلقاء المحاضرات على الطلاب لمدة ساعة وسيكونون جميعاً قادرين على استيعاب كل تلك المعلومات وبناء المختبر دون مشكلة. لقد قررنا تنسيقاً للمحاضرات نبدأ فيه كل محاضرة بالسؤال عما إذا كان لدى أي شخص أسئلة، وعادة لا نحصل على الكثير. ثم ننتقل إلى الشرائح، ونتوقف كل 15 دقيقة تقريباً لمنح الطلاب “مختبرات” موجهة حتى يتمكنوا من تجربة البرمجة بمفردهم بدعم من التعليمات ولا يزالون قادرين على طرح الأسئلة في الفصل الدراسي. وغالباً ما نخصص آخر 30 دقيقة أو أكثر من حصص الساعتين للطلاب للعمل على مشاريعهم الصفية.
جمع الواجبات
بعض الأشخاص لا يسلمون الواجبات. قد يعني هذا أنهم خجولون من مشاركة أكوادهم حيث يمكن للطلاب الآخرين رؤيتها، أو أنهم ببساطة لا يعتقدون أن ذلك ضروري نظراً لأنها مدرسة برمجة مجانية، وبعض زملائهم في الفصل لا يفعلون ذلك أيضاً. إذا كان السبب هو الأول، فإننا نشجعهم على مشاركة الواجبات مع الموظفين فقط ونخبرهم أننا جميعاً مررنا بنفس التجربة من قبل. إذا لم يسلموا الواجبات لأنهم لا يريدون… حسناً، ليس هناك الكثير الذي يمكننا فعله حيال ذلك. نحاول أن نثني الطلاب الذين لا يرغبون في المشاركة الكاملة في البرنامج عن الانضمام إلى الفصل.
كانت الواجبات تُسلم في الأصل على المنتدى، لكننا كنا نحصل على تفاعل منخفض جداً هناك. لم يكن الطلاب يسجلون الدخول كثيراً ولم يكونوا يطرحون أسئلة هناك أبداً. الآن يتم تسليم الواجبات عبر قناة Discord على الخادم الذي لدينا لمدرسة البرمجة الخاصة بنا. نظراً لأننا ندير برنامجنا بالكامل من نفس خادم Discord، بما في ذلك استضافة المحاضرات والإجابة على الأسئلة وإدارة البرنامج، فإننا نشهد زيادة في عدد الواجبات المسلمة. كما أننا نحصل على ملاحظات أكثر فائدة يتلقاها الطلاب من الموظفين والمتطوعين.
المواعيد النهائية
هل يجب أن تكون هناك مواعيد نهائية لتسليم المشاريع؟ رأينا الحالي هو لا، لا ينبغي أن يكون هناك. معظم الدفعة الأولى تأخرت قليلاً وبعضهم أنهى البرنامج بعد أسابيع من نهايته. هل يجب أن نعاقب الأشخاص الذين ينهون، ولكن ليس في الوقت المحدد؟ لا نعتقد ذلك، وإليك السبب:
- يتعلم الجميع بوتيرتهم الخاصة. إذا أنهى أحدهم في 3 أشهر وطالب آخر في 4 أشهر، فيجب مكافأتهما بنفس الطريقة لإكمال البرنامج.
- في يوم من الأيام، سنتمكن من الحصول على قبول متجدد لبرامجنا البرمجية ومساعدة الطلاب على مستوى أكثر تفصيلاً. وحتى ذلك الحين، أقل ما يمكننا فعله هو البقاء مرنين لاستيعابهم والسماح لهم بتسليم بقية المشاريع متى استطاعوا.
جعل الطلاب يطلبون المساعدة
لقد كانت هذه واحدة من أكبر مشاكلنا! بعض الأشخاص يتأخرون وبعض الطلاب يشعرون بالارتباك ولكنهم لا يريدون طلب المساعدة. بعض الطلاب مرتبكون لدرجة أنهم لا يعرفون حتى نوع المساعدة التي يجب أن يطلبوها. لا يمكنك حقاً إجبار الناس على الحصول على المساعدة، ولكن يمكنك حثهم. أفضل طريقة وجدناها لجعلهم يطرحون الأسئلة هي عمل فقرات مراجعة قصيرة في بداية المحاضرات وتخصيص أوقات دراسة مجدولة حيث يمكن للطلاب الحضور وطرح الأسئلة في مجموعات أصغر بكثير. إذا فضلوا كتابة السؤال، يمكنهم نشره في دردشة الطلاب أو إرسال رسالة خاصة إلى أحد المنظمين. لا يمكننا فعل الكثير. إذا كان الطلاب تائهين أو مرتبكين ولا يريدون طلب المساعدة، فلا توجد طريقة لنا لإصلاح ذلك. نحن نبذل قصارى جهدنا لمقابلتهم حيث هم، ولكن عليهم أيضاً بذل بعض الجهد للحضور إلينا.
استبيانات الطلاب
يساعدنا إجراء استبيانات منتظمة للطلاب حقاً في الحصول على ملاحظات نقدية لبرنامجنا. في المرة الأولى، جمعنا معلومات حول أهداف الطلاب وخلفياتهم في البداية، ثم أجرينا استبياناً للطلاب في منتصف الطريق – حوالي 6 أسابيع – ثم استبياناً آخر في النهاية. بينما تلقينا الكثير من المعلومات الجيدة، في وقت لاحق، كان يجب أن نجري المزيد من الاستبيانات ونضيف بعض الأسئلة الأخرى. هذه المرة، سنقوم على الأرجح بإجراء استبيانات للحصول على ملاحظات الطلاب كل شهر. إليك بعض الأسئلة التي نطرحها:
- ما رأيك في البرنامج حتى الآن؟ هل يلبي توقعاتك؟
- هل تشعر أن المحاضرات مفيدة لأداء الواجبات؟
- كيف يمكننا مساعدتك بشكل أفضل في تحقيق أهدافك؟
- هل لديك أي ملاحظات أخرى لنا؟
التعامل مع المتسربين
الحياة تحدث، والأمور تتغير. يجب أن نفهم أن الطلاب الذين ينوون المشاركة الكاملة قد يضطرون إلى الانسحاب بسبب ظروف لا مفر منها. إذا تواصلوا معنا بشأن الوضع، فإننا نقدم لهم مكاناً في الدفعة التالية. إذا لم يحضروا ببساطة أو لم يتواصلوا معنا، فهم أحرار في إعادة التقديم في المستقبل، ولكن لن يتم حجز مكان لهم.
الموظفون والمتطوعون
استقطاب المتطوعين
بدون المتطوعين، سيكون من الصعب جداً إدارة برنامج كهذا. إليك بعض الأنواع المختلفة من المتطوعين التي ستحتاجها لتحقيق النجاح:
- المنظمون (
Organizers): نعم، نحن أيضاً متطوعون. نحن محظوظون بوجود فريق رائع من المنظمين يديرون البرنامج. يشمل هذا نفسي، واثنين من المطورين الآخرين، ومشرف مختبر حاسوب من المكتبة يعرف أيضاً كيفية البرمجة. نتحادث عدة مرات في الأسبوع عبرDiscordللتأكد من أن البرنامج يسير بسلاسة وأن الطلاب يتقدمون. أعتقد أن 3-5 هو عدد جيد جداً لفريق التنظيم، ولكن قد نضيف المزيد للقيام بأشياء محددة، مثل “مدير مجتمع” أو “منسق متطوعين”. - المقدمون (
Presenters): هؤلاء الأشخاص يقدمون المحاضرات خلال أوقات الفصول الدراسية أو جلسات المساعدة الخاصة التي تعقد عادة في عطلات نهاية الأسبوع. هذا هو أصعب نوع من العمل التطوعي للإدارة. في برنامجنا، تستغرق المحاضرات من 1.5 إلى 2 ساعة وهناك 24 منها فقط، لذلك يجب أن تكون كل واحدة منها دقيقة وتتدفق مع بقية المنهج الدراسي. قد لا يكون بعض المتطوعين ذوي النوايا الحسنة مناسبين لإلقاء المحاضرات على الأشخاص الجدد تماماً في مجال التطوير. من المهم جداً أن تكون واضحاً بشأن ما تريد منهم تغطيته في المحاضرة، وصولاً إلى النقاط الفردية ونتائج التعلم المتوقعة. لقد حرصنا أيضاً على تزويد المتطوعين بمجموعة شرائح جاهزة للعمل عليها لتتوافق مع بقية المنهج الدراسي. - المرشدون (
Mentors): لن يكون لدى الطلاب أسئلة حول البرمجة فحسب، بل ستكون لديهم أيضاً أسئلة حول مسيرتهم المهنية، والشبكات، وما إلى ذلك. الإرشاد رائع للإجابة على هذه الأنواع من الأسئلة. نحن نعمل حالياً على إعداد برنامج الإرشاد الخاص بنا حيث سيقوم المرشدون المتطوعون بالتواصل مع الطلاب مرة واحدة على الأقل في الأسبوع للتأكد من أنهم على المسار الصحيح والإجابة على أي أسئلة لديهم. أحد أسباب التأخير هو أننا نعمل على نظام لكيفية التعامل مع أي شكاوى تتعلق باللغة أو السلوك غير اللائق الذي قد يحدث عندما يلتقي الطلاب وجهاً لوجه مع المتطوعين. - مساعدو المختبر (
Lab Assistants): يتواجد مساعدو المختبر للمساعدة بشكل متزامن خلال جلسات المختبر المباشرة، وعادة ما تكون المشاكل المتعلقة بتشغيل البرامج أو تصحيح الأخطاء (debugging). لقد استخدمنا مساعدي المختبر بشكل أكبر عندما كنا نعقد الفصول الدراسية حضورياً. مع كون الأمور عن بعد، لا يمكننا رؤية شاشات الطلاب، لذلك اضطررنا إلى توفير عدد قليل من الأشخاص للإجابة على الأسئلة في الدردشة إذا واجه الأشخاص صعوبات. - المساعدون العامون (
General Helpers): يساعد هؤلاء الأشخاص في الإجابة على أسئلة الطلاب في الدردشة ويؤدون مهام أخرى مثل مراجعة المشاريع وحافظات الأعمال. كما أنهم مفيدون للطلاب “للتفكير بصوت عالٍ” (rubber ducking) أو للتشجيع.
دليل المتطوعين
لقد أنشأنا دليلاً من صفحتين يوضح توقعات سلوك المتطوعين بالإضافة إلى متطلبات المشاركة في برنامجنا. إنه أساسي جداً في الوقت الحالي، لكننا سنبني عليه مع تقدمنا بالتأكيد. كما نوفر لهم رابطاً إلى مدونة قواعد السلوك الخاصة بـ freeCodeCamp لأنها قصيرة ومفيدة ومباشرة: كن لطيفاً ومتفهماً، وما إلى ذلك.
تزويد الموظفين بالأدوات اللازمة للنجاح
لقد ارتكبنا بالتأكيد بعض الأخطاء، بما في ذلك السماح لمقدم العرض بإنشاء شرائحه الخاصة ثم إخباره في اللحظة الأخيرة أنه يحتاج إلى تغييرها. لم يسر الأمر على ما يرام. كان يجب أن نكون أكثر وضوحاً بشأن ما أردناه منه. الآن، يتلقى الجميع مجموعة شرائح جاهزة منا بالإضافة إلى قائمة بالموضوعات التي يجب تغطيتها. كما نتواصل معهم عدة مرات لمراجعة التقدم في عرضهم التقديمي للتأكد من أنه على المسار الصحيح.
لدينا الآن دليل للمتطوعين، وخطط دروس ومجموعات شرائح للتدريس، وإرشادات للإرشاد، ومجلد Google Drive حيث نحتفظ بجميع وثائق البرنامج، وتقدم الطلاب، ومواد المناهج الدراسية، والخطط المستقبلية. لقد أعدنا تنظيم جميع هذه المواد مؤخراً لتسهيل العثور عليها عند الحاجة. مع نمو هذا البرنامج، سنحتاج إلى إدارة المزيد من المتطوعين وحتى الموظفين المدفوعين. نحن نستعد لذلك من خلال توثيق عملياتنا لجعل عملية الإعداد (onboarding) أكثر سلاسة في كل مرة.
الشركاء المجتمعيون
نحن نحاول حالياً بناء شراكات مجتمعية للحصول على رعاة للتمويل بالإضافة إلى تبرعات بالمعدات التقنية. بعض طلابنا لا يملكون إمكانية الوصول إلى أجهزة كمبيوتر جيدة أو اتصال إنترنت سريع. وفرت لنا المكتبة هذه الأشياء عندما استضفنا الفصول الدراسية حضورياً، لكن الأمر أصبح أكثر صعوبة الآن بعد أن أصبحنا عن بعد. أيضاً، للمكتبات ساعات محدودة فقط، وبالنسبة للطلاب الذين يعملون في وظائف متعددة أو لديهم التزامات عائلية أخرى، قد يكون من الصعب إيجاد الوقت للقيام بجميع أعمال الفصل خلال اليوم. لهذا السبب، فإن رعاية الشركاء المجتمعيين مهمة جداً لجعل برنامجنا متاحاً. في المستقبل، نأمل أن نتمكن من توفير الوصول إلى الإنترنت وأجهزة الكمبيوتر المحمولة للطلاب الذين يحتاجون إليها.
تنظيم التسويق
ليس لدينا أي خبراء تسويق في فريقنا. تتكون جهودنا التسويقية بشكل أساسي من التأكد من الحفاظ على علامتنا التجارية التي اتفقنا عليها – الألوان، الصياغة، وما إلى ذلك – متسقة ومشاركة التحديثات بشكل جماعي على وسائل التواصل الاجتماعي. لحسن الحظ، لدي متابعة صغيرة على YouTube و LinkedIn ومنصات أخرى حيث تمكنت من استقطاب المتطوعين والحصول على بعض الاهتمام المجتمعي ببرنامجنا. كما كانت المكتبة العامة مفيدة في التواصل مع العديد من المجتمعات المختلفة وجذب الطلاب الذين ربما لم نكن لنتمكن من الوصول إليهم بطريقة أخرى. مع نمونا، قد نبدأ في توسيع نطاق وصولنا عبر وسائل التواصل الاجتماعي، ولكن بميزانية محدودة في الوقت الحالي، نحن نكتسب زخماً عضوياً فقط.
البث المباشر عن بعد

واجهة مشاركة الشاشة في Discord.
كانت استضافة البث المباشر عن بعد تمثل تحدياً. قد تنقطع اتصالات الإنترنت أحياناً، بالإضافة إلى وجود منحنى تعليمي للطلاب لاستخدام البرنامج. لقد كان Discord خياراً رائعاً لنا، لأنه يمكننا استضافة البث المباشر داخل التطبيق حيث توجد جميع محادثاتنا وكل شيء آخر. وبهذه الطريقة، يتعين علينا فقط شرح كيفية استخدام برنامج واحد. بالإضافة إلى ذلك، يسمح لنا Discord بمشاركة الشاشة مع ما يصل إلى 50 شخصاً في وقت واحد في غرف الدردشة الصوتية. وكل ذلك مجاناً! لقد بحثنا في Zoom وبعض الأدوات الأخرى، لكننا سنلتزم بـ Discord حتى نحتاج – ونستطيع تحمل تكاليف – شيء بميزات أكثر.
التأسيس والتمويل
أردنا البدء في طلب التمويل من الشركات والأفراد، لذلك كان علينا أن نتأسس كمنظمة غير ربحية العام الماضي. في الولايات المتحدة، تستغرق هذه العملية حوالي ستة أشهر. كان علينا أولاً التسجيل كشركة لدى ولايتنا ثم صياغة وثائق العمل والتقدم بطلب للحصول على وضع غير ربحي لدى الحكومة الفيدرالية. في بداية هذا العام، حصلنا أخيراً على تأكيد بأننا منظمة غير ربحية من فئة 501c3! الآن نحن نحاول إيجاد طرق للحصول على التمويل وتلقي التبرعات. سنضيف زر “تبرع” إلى موقعنا على الويب ونتواصل أيضاً مع الشركات لطلب تبرعات أكبر. كانت هناك أيضاً بعض المناقشات الداخلية حول ما إذا كان التمويل الجماعي (crowdfunding) فكرة جيدة أم لا. هل لديك أي اقتراحات لنا في هذا المجال؟ يرجى ترك تعليق على هذه المقالة أو التواصل معنا على contact@freecodeschoolindy.com.
أدوات الاتصال
المنتدى (Forum)
كما ذكرنا سابقاً، بدأنا باستخدام منتدى Discourse، لكننا وجدنا أنه كان صعب الصيانة ولم يكن يلبي احتياجاتنا. وجد الناس صعوبة في استخدامه، خاصة على الأجهزة المحمولة. كما واجهنا مشكلة في جعل الموظفين والطلاب يسجلون الدخول ويتحققون منه بما يكفي لجعله يستحق الجهد. لهذا السبب تخلصنا من المنتدى ونقلنا برنامجنا بالكامل إلى Discord.
ديسكورد (Discord)

لدينا الآن خادم Discord معد لمدرسة البرمجة بأكملها! نستخدمه لاستضافة المحاضرات المباشرة – يمكننا استضافة ما يصل إلى 50 شخصاً في الدردشة الصوتية ومشاركة الشاشة معهم في نفس الوقت، وإدارة الطلاب، وتنظيم الأنشطة التطوعية، وتدريب المتحدثين، والإجابة على الأسئلة، والقيام بالمشاريع الجماعية، ومراجعة حافظات الأعمال، وأداء المهام الإدارية. لقد كان جمع كل شيء في مكان واحد أفضل قرار اتخذناه على الإطلاق. فليس فقط أن تكاليفنا أقل، بل إنه يجعل إدارة البرنامج أسهل بكثير. كل شخص نحتاج إلى التفاعل معه إما موجود بالفعل على Discord، أو يحتاج فقط إلى دعوة للانضمام إليه 🙂
التخرج
كانت لدينا خطط كبيرة لإقامة حفل تخرج حضوري لطلابنا هذا العام. لسوء الحظ، بسبب جائحة COVID-19، اضطررنا إلى إلغاء تلك الخطط. كان علينا الاكتفاء بإرسال الشهادات بالبريد للطلاب الذين أكملوا البرنامج وتقديم “تهنئة افتراضية” للجميع على إنجازهم. الآن بعد أن أصبحت فصولنا افتراضية، نود أن نتمكن من فعل شيء ممتع لحفل تخرج دفعتنا الثانية في نهاية أغسطس. هل لديكم أي أفكار؟ يرجى إعلامنا إذا كان لديكم.
الخلاصة التقنية
إن بناء وتشغيل مدرسة برمجة مجانية مثل freeCodeSchool Indy يمثل تحدياً تقنياً وإدارياً كبيراً، ولكنه يحمل في طياته مكافآت هائلة. تبرز التجربة أهمية تبني الموارد المفتوحة مثل منهج freeCodeCamp لتقليل أعباء تطوير المحتوى، وتؤكد على الدور المحوري لأدوات الاتصال الموحدة مثل Discord في تسهيل التفاعل الطلابي والإدارة الفعالة، خاصة في بيئات التعلم عن بعد. كما تكشف عن الحاجة الماسة للمرونة في المواعيد والأساليب التعليمية لتلبية احتياجات المتعلمين المتنوعين، وتؤكد على أن الدعم المجتمعي والشراكات الاستراتيجية هما حجر الزاوية لضمان استدامة ووصول هذه المبادرات التعليمية إلى أوسع شريحة ممكنة. هذه التجربة لا تقدم فقط تعليماً برمجياً، بل تبني جسوراً نحو فرص أفضل للعديد من الأفراد.
خاتمة
قد يكون تجميع هذا البرنامج أصعب شيء قمت به على الإطلاق. إنه يتطلب الكثير من العمل ولكنه مجزٍ للغاية. يمكن أن يغير حياة الطلاب. لم أكن وحدي في ذلك: كان هناك فريق من الأشخاص يساعدون، ولم يكن أي من هذا ليحدث بدونهم. أود أن أقدم شكراً خاصاً لـ Jared Wilcurt و Cassandra Bautista و Marianne Mckenzie ومكتبة إنديانابوليس العامة (The Indianapolis Public Library) و freeCodeCamp وجميع متطوعينا الرائعين، الذين كانوا جميعاً حاسمين في تجميع هذا البرنامج.
نحن نعمل على فتح مصدر منهجنا الذي استخدمناه – الشرائح والمشاريع وتحديات freeCodeCamp والمواد التكميلية وما إلى ذلك. يستغرق الأمر بعض الوقت لتجميع كل شيء بتنسيق جيد، ولكن تحلوا بالصبر، وسنصدره لأي شخص مهتم قريباً 🙂
أنا مهتم بآرائكم. هل لديكم أي أفكار لأشياء يمكننا القيام بها بشكل أفضل في المرة القادمة؟ يرجى التواصل معي وإعلامي.
- حسابي على
Twitter:@gwen_faraday - قناتي على
YouTube:Faraday Academy - موقع البرنامج:
freecodeschoolindy.com
إذا قرأت حتى هذا الحد، فاشكر الكاتبة لتظهر لها اهتمامك. قل شكراً.
تعلم البرمجة مجاناً. ساعد منهج freeCodeCamp مفتوح المصدر أكثر من 40,000 شخص في الحصول على وظائف كمطورين. ابدأ الآن.