تحدثنا كثيرا عن طرق وأساليب واستراتيجيات العمل من خلال المنزل اعتمادا علي الانترنت أو ما يطلق عليه اصطلاحا “الربح من الانترنت” ولكننا لم نتطرق في السابق لمجال البرمجة.
تعتبر البرمجة واحدة من أقوي وأكثر المجالات طلبا في سوق العمل وأعلاها دخلا.
يتم التهافت علي المبرمجين المتميزين وتشغيلهم بمرتبات عالية جدا في معظم الشركات.
في هذا الدليل الشامل سنتحدث عن البرمجة بشكل مفصل:
ما هي البرمجة؟
ماهي لغات البرمجة وفيم تستخدم؟
ماهي مجالات البرمجة؟ وكيف تتعلمها مجانا؟
ماهي فرص العمل المتوفرة لمن يتعلم ويتقن البرمجة؟
وغير ذلك الكثير من النقاط التي سنعرضها في هذا الموضوع الشامل الكامل فتابع معنا من البداية.
ما هي البرمجة؟
البرمجة هي أقوى مجالات الحاسب الآلي و هي لغة التخاطب بين الإنسان ” أنت ” و الآلة مثلها مثل اللغة العربية أو أي لغة أجنبية أخري.
هي عبارة عن مجموعة من الأوامر التي توجه للحاسب لغرض ما سواء للتعامل مع البيانات أو كيفية تنفيد سلسلة من الأعمال المطلوبة و التي تسمى الخوارزميات.
و تتم هذه العملية باللغة البرمجية التي يختارها المبرمج ( الشخص الذي يكتب الأوامر ) فلكل لغة برمجية خصائص تميزها عن الأخرى .
يجب أن نأخد بعين الإعتبار المهمة المطلوبة لكي نستخدم اللغة البرمجية الصحيحة لبناء أو تنفيذ هذه المهمة.
مجالات البرمجة
- مجال الويب: وينقسم إلي: تصميم الويب وبرمجة الويب.
- مجال تطبيقات الهاتف.
- مجال أنظمة التشغيل.
- مجال برامج وتطبيقات الحاسب الآلي: “سطح المكتب”.
- مجال الألعاب.
- مجال إدارة وبرمجة قواعد البيانات.
- مجال برمجة الروبوتات.
- مجال برمجة الآلات الإلكترونية ( داخل في مجال الروبوتات ).
والآن سنتعرف علي أهم لغات البرمجة المستخدمة في هذه المجالات قبل أن نشرح كل مجال منها وكيفية العمل به والوظائف التي يوفرها.
لغات البرمجة وخصائصها
لغة البرمجة في الأساس هي الوسيلة التي تمكن المبرمج من كتابة برنامجه في هيئة تعليمات وأوامر يفهمها الحاسب بغرض تنفيذ العمل المطلوب.
من المعروف ان الحاسب يحول اللغة المكتوب بها البرنامج إلى سلسلة من رقمين هما: 0 و 1، ويبدأ على أساسها عمله. ولكتابة الأوامر، توفر لغة البرمجة المختارة مجموعة من الأمور الأساسية للاستناد إليها أثناء عملية تكوين البرنامج ومجموعة من القواعد التي تمكن من التعامل مع معلومات وتنظيمها بغرض أداء العمل المطلوب.
تتمثل هذه الأسس والقواعد بصفة عامة في:
- المعلومات وتخزينها
- الأوامر وتنظيم سيرها
- التصميم الخاص
الصورة السابقة هي عبارة عن كود مصدري لبرنامج بسيط مكتوب بلغة C، والتي ستخرج رسالة «أهلا بالعالم» عند تجميع وتشغيل البرنامج.
تنقسم لغات البرمجة بناء على قربها من اللغات الإنسانية إلى:
- لغات عالية المستوى (قريبة من اللغة التي يفهمها البشر) مثل سي وجافا.
- لغات منخفضة المستوى (كلغة التجميع؛ وهي قريبة من لغة الآلة).
وتقسم أحياناً بناء على الأغراض المرغوبة من اللغة المستخدمة.
- لغات صُممت لكي تعمل على أجهزة معينة، مثل أن تقوم شركة ما بإنتاج جهاز حاسب أو معالج مركزي (وحدة معالجة مركزية)، وتوفر له دليل استعمال يحتوي على الأوامر التي تنفذ عليه.
- لغات أخرى أكثر عمومية تعمل بشكل مستقل عن نوع الآلة، أي أنها تعمل ضمن آلة افتراضية، مثل لغة جافا
وعموما: فإن لكل لغة برمجة خصائصها التي تميزها عن الأخرى وتجعلها مناسبة بدرجات متفاوتة لكل نوع من أنواع البرامج والمهام المطلوبة من هذا البرنامج.
كما أن للغات البرمجة أيضاً خصائص مشتركة وحدود مشتركة بحكم أن كل هذه اللغات صممت للتعامل مع الحاسب.
أمثلة لبعض اللغات البرمجية ومجالات العمل بها
أولا: برمجة تطبيقات سطح المكتب
=======================
لا يوجد مستخدم للحاسب الآلي لم يتعامل يوميا مع تطبيقات سطح المكتب مثل مجموعة برامج مايكروسوفت أوفيس Microsoft Office أو برامج الأنتي فيروس أو برامج تشغيل الصوت والفيديو.
ولكن لحظة .. في السوق العربى التركيز يكون علي برامج أخري وهي برامج الشركات.
مثال .. محل يريد برنامج لحساب أرباحه وخسائره.
مستشفي تريد برنامج لترتيب وتنظيم مواعيد الأطباء والمرضي.
معرض سيارات يريد برنامج يحسب المبيعات ويحفظ وينظم بيانات العملاء والموردين.
كل ما سبق وغيره الكثير برامج مشهورة ومنتشرة في الوطن العربي تعتمد علي إحدي لغات البرمجة بالإضافة إلي قاعدة بيانات ولعل أشهر اللغات المستخدمة في هذا المجال هي:
1- لغة سي C: هي أقدم اللغات البرمجية وكل اللغات الأخري تم بنائها بالإعتماد عليها وينصح بشدة من يريد دخول مجال البرمجة البدأ بها, حيث تعتبر أسهل لغة في التعامل, ويتم إستخدامها في كافة المجالات.
2- لغة سي بلس بلس ++C: الجميع يعتبر هذه اللغة الأفضل في بناء التطبيقات , ظهرت لأول مرة عام 1983 قام بتصميمها بيارن ستروستروب , ميزاتها أنها سريعة , نقطة الضعف بها أنها أصبحت قديمة بعض الشئ.
الاستخدامات : برمجة الالعاب , كما أنها تعتبر جزء لا يتجزأ في بناء البرامج.
مستخدمة في :Mozilla Firefox , Adobe, Google Chrome , Internet Explorer
3- لغة سي شارب #C: لغة غرضية التوجه ظهرت لأول مرة عام 2000 قام بتصميمها شركة مايكروسوفت , شبيه بلغة java تمتاز بسرعة الأداء , لكن نقطة الضعف أنها تعمل فقط على بيئة windows.
4- لغة جافا JAVA: لغة غرضية التوجه ظهرت لأول مرة عام 1995 حيث قام بتصميمها جيمس جوسلينغ , كما أنها تعد الأكثر شعبية من بين جميع لغات البرمجة.
الاستخدامات : برمجة الشبكات , تطوير تطبيقات الويب , تطوير البرامج , تطوير واجهات المستخدم الرسومية GUI
مستخدمة من قبل أندرويد (نظام التشغيل , التطبيقات).
***********************************************************
هذه اللغات الأربع السابقة هي الطريق الرئيس والأساس الذي يجب البدء من خلاله في تعلم وفهم وإتقان مجال البرمجة بشكل عام.
إن لم تكن تتقن هذه اللغات فأنت ما زلت مبتدأ حتى ولو كنت تعرف جميع اللغات الأخرى.
عندما تتقن هذه اللغات الأربع فقد أصبحت تستوعب مفهوم البرمجة وأسلوب التفكير المنطقي الذي يتطلبه العمل كمبرمج وعندها فأنت الان قادر على الاختيار الصحيح حسب التخصص الذي ترغب في تعلمه وما يستهويك.
بتعلمك وإتقانك لهذه اللغات, تبدأ مشوارك الوظيفي ك Junior software engineer ثم Senior ثم تصبح Team Leader حتي تصل إلي وظيفة Project Manager.
ثانيا – برمجة تطبيقات الويب
==================
مجال الويب: هو مجال من مجالات البرمجة و هو عبارة عن تصميم أو برمجة مواقع الانترنت أو صفحات الويب ( سواء كانت صفحة واحدة أو صفحات متعددة) مثل الفيسبوك, تويتر, يوتيوب و غيرها و به ثلاثة أقسام أساسية تختلف تماما عن بعضها هي:
- تصميم الويب Web Design.
- برمجة وتطوير الويب Web Development.
- قواعد البيانات Data Base.
التصميم يهتم بالشكل الذي يراه المستخدم أو ما يطلق عليه واجهة المستخدم (front end) من تصميم و ألوان و تأثيرات مثل شكل الموقع الذي تراه حاليا.
لكي أكون مصمم ويب ينبغي أن أتعلم جيدا اللغات التالية:
1- لغة HTML: هي اللغة الأساسية المستخدمة في إنشاء صفحات الإنترنت وهي ليست لغة برمجة بالمعنى والشكل المتعارف عليه للغات الأخرى ولكنها لغة هيكلة (Hyper Text Markup Language).
فهي مثلاً لا تحتوي على جمل التحكم والدوران، وعند الحاجة لاستخدام هذه الجمل يجب تضمين شيفرات من لغات أخرى كـ Java, JavaScript, CSS .
كذلك فهي لا تحتاج إلى مترجم خاص بها Compiler . وهي غير مرتبطة بنظام تشغيل معين، لأنه يتم تفسيرها وتنفيذ تعليماتها مباشرة من قبل متصفح الإنترنت بغض النظر عن نظام التشغيل المستخدم.
2- لغة سي اس اس CSS : اختصار لـ (Cascading Style Sheets) وهي لغة تصميم تحدد شكل ملف الـ HTML، فهي تهتم بالخطوط، الألوان، الهامش، والعرض والارتفاع، صورة خلفية الموقع، وكيفية توزيع المساحات وأشياء أخرى كثيرة.
يمكن إستخدام لغة HTML لإضافة تصميم للمواقع، لكن CSS توفر المزيد من الخيارات وهي أكثر دقة وعملية، وهي مدعومة من قبل جميع المتصفحات الرئيسية.
3- لغة جافا سكربت JavaScript: هي لغة برمجة تختلف كل الإختلاف عن لغة جافا Java مع أنها تحمل نفس الإسم, وهي تستخدم لإعطاء حيوية و حياة للموقع بمجموعة من السكريبتات الخاصة على الموقع من إدراج و دخول و خروج بين الصفحات حيث أنها تستخدم في برمجة التطبيقات المتحركة مما يعطي رونقا وجمالا للتصميم.
ليس هذا فحسب بل أيضا تستخدم في برمجة تطبيقات الألعاب وفي برمجة تطبيقات سطح المكتب وهي مستمدة من لغة C وقامت بتطويرها شركة Netscape.
4- مكتبة الـ jQuery: من أشهر المكتبات المبنية على لغة الجافا سكريبت تساعدك في إضافة اللمسات السحرية في موقعك والتحكم بالأحداث الموجودة في الصفحة. وهي لا غنى عنها اليوم في تصميم صفحات الويب بدونها سوف تكون صفحة الويب صامتة لا يوجد فيها أي حركات سحرية تلهم اي شخص يراها ولا غنى عنها في التعليم وهي مكتبة سهلة جدا و بسيطة و يمكنك تعلمها في وقت سريع جدا حسب حبك لها ومعرفتك بإمكانياتها هذه المكتبة سوف تضيف لك الكثير في صفحة الويب وسوف تنقل الصفحة نقلة كبيرة جدا.
5- إطار العمل Framework: من أشر إطارات العمل في الويب هو Bootstrap و هو إطار عمل تمت برمجته من طرف طاقم تويتر لتسهيل عملية إدارة التصاميم و الأكواد وهو إطار عمل جميل يفيدك في إختصار الوقت والجهد في كتابة الكثير من الأكواد, وتستخدمه الكثير من الشركات, و كذلك سوف يساعدك جدا في عمل مواقع متجاوبة Responsive.
بالإضافة لبعض البرامج مثل الفوتوشوب Photoshop و الإليسترايتور Illustrator والتي ليس من الضروري تعلمها ولكن إن تعلمتها فهذا سيجعل منك مصمم محترف ويضفي علي موقعك تأثيرات وتصاميم متناسقة وجميلة.
أما برمجة وتطوير الويب أو ما يطلق عليها الـ Back end فهي مجموعة لغات البرمجة التي تتحكم في إدارة وتنسيق وتنظيم جميع الوظائف التي تحدث داخل مواقع الانترنت وقواعد البيانات وغيرها من الأمور التي لا يراها المستخدم.
هناك العديد من لغات البرمجة التي يمكنك أن تعتمد عليها في برمجة موقعك و من أشهرها وأكثرها إستعمالا هي php و هي مجانية و مفتوحة المصدر.
من اللغات المستخدمة في برمجة وتطوير الويب:
1- لغة بي اتش بي PHP: ظهرت لأول مرة عام 1995 قام بتصميمها راسموس ليردور , وهي اللغة الأكثر شعبية في بناء المواقع وتطبيقات الويب التفاعلية , كما انها مفتوحة المصدر ويمكن أن تكون جزءا لا يتجزأ من ملف HTML،
مستخدمة في : Facebook , Wikipedia , WordPress , Joomla.
2- لغة بايثون Python: لغة برمحة غرضية التوجه , تتميز بسهولة تعليمها , وببساطة كتابتها و قرائتها , ظهرت لأول مرة عام 1991 قام بتصميمها جايدو فان روسم. إنتشارا واسعا في السنوات الأخيرة بحيث يتم إستخدامها في تطبيقات الويب , تطوير البرامج , امن المعلومات وتعتبر أيضا أحد افضل اللغات البرمجية التي يمكن للمبتدأ ان يشق طريق البرمجة عليها فهي سهلة التعامل ويتم إستخدامها من قبل instagram على موقعها وPinterest وتُستخدم أيضاً من قبل Google , Yahoo
3- لغة روبي Ruby: ظهرت هذه اللغة لأول مرة عام 1993, قام بتصميمها الياباني يوكيهيرو ماتسوموتو , وهي غرضية بشكل كامل, مثل سابقتها تستخدم في بناء وبرمجة تطبيقات الويب والهواتف الذكية وتُستخدم من قبل GitHub , Twitter وغيره من المواقع المشهورة في مواقعها الرسمية ,وتعتبر روبي سهلة التعامل إلى حد ما في التعلم بالنسبة للمبتدئين.
4- لغة Asp.net: و هي لغة ليست مجانية و هذا ما جعل أغلبية المبرمجين يتعاملون أكثر مع لغة php ولكنني فوجئت بوجود العديد من عشاق لغة asp.net لذلك جمعت لهم أحسن الدورات في العالم العربي و أيضا الدورات الشاملة في الدورات الأجنبية.
قواعد البيانات
بما أن هناك العديد من لغات البرمجة أيضا هناك عدة لغات لإنشاء قاعدة بيانات لكن أول نصيحة سأقدمها لك قبل أن تبدأ في أي لغة أن تتعلم لغة Sql
لغة إس كيو إل SQL: وهي لغة برمجة تستخدم في إدارة البيانات داخل قواعد البيانات وهي الأكثر إسخداما لهذا الغرض .
وبتعلمك وإتقانك لها ستتمكن من تعلم أي لغة أخري من لغات قواعد البيانات مثل Mysql أو Oracle أو Sql Server و هذه اللغات يتم العمل بها لكي تبرمج موقع كامل به برمجة بنائية و به قاعدة بيانات لتخزين معلومات و بيانات كل مستخدم مثلا: تسجيل في موقع الفيس بوك و يتم إستخراجها أو أظهارها له عندما يحتاجها مثلا أو يتم التعرف عليها بكلمة و رقم سري مثلا و عندما تختار لغة برمجة يجب أن تختار معها لغة برمجة قواعد البيانات و الأكثر إستعمالا في المواقع مع php هي Mysql.
يبقي أن نعرف أن مجال الويب متشعب وبه العديد من الوظائف نظرا لكثرة اللغات المستخدمة فمن الممكن ان تتخصص في لغة الجافا سكربت وتصبح JavaScript Developer او تتخصص في لغة الphp وتكونphp developer.
أيا كانت وجهتك ف لابد لك أن تتقن لغة HTML , CSS ,JavaScript كبداية لك (لا يوجد مطور ويب لا يجيد هذه الاساسيات)
نصيحة علي الهامش
اهتم بالجافاسكربت ومكتباتها فهي تحولك من مطور عادى الي مطور متميز لا تنسي تخصصات هامة مثل الوردبريس او جوملا وهي برامج ادارة محتوي جاهزة كل عملك هو تطويرها وانشاء تطبيقات خاصة بها لتحسين الاداء او اضافة مميزات بهذه البرامج وايضا لا تنسي اهمية التقنيات والمسميات الاتية Ajax – Web Services – xml – Bootsrap – Json
بتعلمك وإتقانك لهذه اللغات, تبدأ مشوارك الوظيفي ك Junior web Developer ثم Senior ثم تصبح Team Leader حتي تصل إلي وظيفة Project Manager.
ثالثا – برمجة تطبيقات الموبايل
===================
بداية من عام 2012 والعالم يتجه بشكل جنونى إلي تطبيقات الهواتف الذكية ويعد سوق الأندرويد هو السوق الأكثر انتشارا ورواجا ويليه سوق الأيفون (Apple) ثم تأتي مايكروسوفت في المؤخرة ومعها البلاكبيري.
مجال تطبيقات الموبايل من المجالات المربحة جدا إذا أتقنتها, والفضل يعود للتنافس الشديد بين الشركات والأسواق الخاصة بالبرامج فيمكنك عمل تطبيق معين ثم رفعه في سوق جوجل بلاي Google Play مثلا وتحديد سعر له والربح من خلال التحميلات أو وضعه مجانا والربح من خلال الاعلانات.
تخيل إذا قام مليون شخص مثلا بتحميل تطبيقك.. هل تتخيل الارباح ؟
للخوض في مجال تطبيقات الأندرويد يلزمك إتقان إحدي لغات البرمجة مثل: XML- Java SE – OOP – MVC وبالطبع ستحتاج إلي دراسة إحدي قواعد البيانات.
ويمكنك العمل علي إحدي المنصات الشهيرة في التعامل مع تطبيقات الأندرويد مثل: ANDROID STUDIO أو ANDROID ECLIPSE.
إلي عشاق مجال تطبيقات الهاتف موقع جميل جدا جدا به أكواد مفتوحة المصدر لأكثر من 7 ملايين تطبيق أندرويد http://www.codota.com/
في حالة أبل ستحتاج لأتقان لغة Objective-C والعمل علي منصة Mac المقدمة من أبل
لغة Objective-C: هي لغة برمجة مستخدمة بشكل رئيسي من قبل شركة ابل لبرمجة أنظمة التشغيل الخاصة بها سواء كانت OS X أو IOS ظهرت لأول مرة عام 1983 قام بتصميمها براد كوكس وتوم لوف إنتشرت هذه اللغة بعد الإنتشار الواسع لبرمجة تطبيقات الأيفون, وقد أصبحت هذه اللغة أيضا مطلب الشركات البرمجية.
وفي حالة مايكروسوفت فبالطبع ستحتاج لأتقان لغة سي شارب #C.
-
رابعا: برمجة أنظمة التشغيل Computer Operating Systems
=======================================
معظم أنظمة التشغيل الحديثة يتم كتابتها وبرمجتها بلغة الـ C بالإضافة إلي القليل من لغة الأسمبلى Assembly, مثل: Windows NT و Linux و MAC OS X,
بعض أنظمة التشغيل كتبت بالباسكال مثل MAC OS القديم (ما قبل MAC OS X) كان معظمه بلغة Pascal و بعض الأسمبلى Assembly.
بعض الانظمة القديمة كتبت بلغة Assembly مثل الMS-DOS, و لكن لاحقا تمت اعادة كتابة بعض أجزاءه بلغة السى.
نظام CP/M كتب بلغة PL/M و هى لغة تم تصميمها حصريا ليتم كتابة CP/M بها, تماما مثلما تم تصميم لغة سى فى الأصل لكتابة نظام Unix بها.
بقي أن نعرف أن أي نظام تشغيل مثل: نظام تشغيل الويندوز من أجزاء عديدة، أهمها: نواة النظام Kernel ومكتبات دوالAPI.
** نواة النظام Kernel: هو قلب نظام التشغيل، الذي يتعامل مع مكونات الجهاز المادية، مثل الذاكرة والقرص الصلب وكارت الشاشة وكارت الصوت…. إلخ.
وهذا الجزء مكتوب بلغة ++C على نظام تشغيل DOS.. ومن المؤكد أن أجزاء من الكود الخاص بهذا الجزء مكتوبة بلغة التجميع Assembly لأنها لغة منخفضة المستوى تتعامل مع مكونات الجهاز مباشرة.. وتتيح ++C للمبرمج كتابة مقاطع من لغة التجميع.
** أما API فهي اختصار للتعبير: “واجهة برمجة التطبيقات” Application Programming Interface، وهي مجموعة ملفات لها الامتداد .dll تحتوي على دوال برمجية تؤدي كل وظائف الويندوز الأساسية، مثل إنشاء النوافذ وعرضها وإخفائها، ورسم الأدوات عليها وكتابة النصوص فيها… إلخ.
وهذه الدوال أيضا مكتوبة بلغة ++C. وقد أدخلت ميكروسوفت تطويرا هاما مع ظهور ويندوز فيستا وويندوز سيرفر 2008، حيث جعلت .Net Framework 3 جزءا أساسيا من نظام التشغيل، يمنحه بعض دوال API في صورة كود مدار Managed Code.
لا يوجد في الانترنت العربي دورة كاملة لتعليم الأسمبلي فهي لغة قديمة و غير موجودة بكثرة أيضا في الويب العالمي, ولذلك أحضرت أفضل دورتين في اليوتيوب باللغة الإنجليزية
الدورة الأولى : Assembly Language Programming Video Course بها 70 فيديو.
الدورة الثانية : Assembly Language Programming بها 55 فيديو وهي دورة جميلة أيضا.
والآن: كيف يمكن تعلم ودراسة هذه اللغات؟
مصادر تعلم ودراسة لغات البرمجة
هناك مجموعة من القنوات علي موقع اليوتيوب التي تتوفر على مجموعة من الدورات التعليمية التي تأخذ بيدك من البداية حتى الإحتراف في مجال البرمجة والتصميم وقواعد البيانات ونظم التشغيل وغيرها الكثير من مجالات الحاسب الآلي والبرامج والشبكات منها:
- قناة المهندس أسامة محمد (Elzero Web School): أضخم قناة عربية تضم دورات تعليمية في جميع لغات البرمجة وقواعد البيانات التي تستخدم في تصميم وبرمجة الويب وبناء الووردبريس ومواقع التجارة الالكترونية.
- قناة Free4arab | Information Technology وهي قناة تعليمية باللغة العربية لشرح الشبكات ونظم التشغيل بالإضافة للعديد من لغات البرمجة مثل جافا و روبي وبايثون و ASP.net وقواعد البيانات أوراكل وMySQl بالإضافة لبعض الدورات حول التسويق الالكتروني والربح من الانترنت.
- قناة وقف أون لاين: قناة عربية تضم مجموعة كبيرة من الدورات الكاملة حول Visual Basic و Oracle developer و SQL server 2008 و asp.net , كما تضم دورة ضخمة لتعلم لغة برمجة سي شارب #C بها أكثر من 170 فيديو وكذلك أكبر دورة عربية لتعليم الفيجوال بيسك 2012 للمدرب أحمد الزيني تضم 330 فيديو, بالإضافة لدورات كثيرة لتعليم الفوتوشوب والدريم ويفر و الـ Actionscript 3 والـ 3D Max والـ Autoplay Media Studio.
- قناة عادل صبور: وهي قناة تعليمية باللغة العربية لشرح أهم لغات البرمجة وخاصة asp.net والجافا والجافا سكربت و السي شارب وتطبيقات الويب والموبايل بالإضافة لدورات في لغات تطوير المواقع وقواعد البيانات مثل: PHP, VB.NET, HTML5, CSS, Oracle
- قناة عبدالله عيد وهي قناة تعليمية باللغة العربية لشرح ما يخص علوم الكمبيوتر والرياضيات من برمجة وتطبيقات وتفاصيل حول لغات كثيرة مثل جافا و سي++ ولغات تطوير المواقع وقواعد البيانات وتطبيقات الجوال مثل الأندرويد.
- قناة ملتقى الدارين: قناة عامة بها العديد من الفيديوهات الطويلة في شتي المجالات ومنها بعض الدورات القيمة في مجالات البرمجة المختلفة.
- قناة محمد عيسى : واحدة من أكبر القنوات العربية التي تهدف لتعليم جميع لغات البرمجة حيث تحتوي علي مجموعة من الدورات الضخمة في لغات Kotlin, Laravel, Angular 4 وكذلك PHP & MySQL CMS و MYSQL server والـ ++C بالإضافة لأكبر ثلاث دورات عربية في الجافا والبايثون والأندرويد ستوديو.
- دورة تعلم لغة ++c تقديم: محمد شيمي بها 64 فيديو.
- قناة خالد السعداني: التي تضم : دورة السي شارب كاملة 110 درس, بالإضافة لعدد من الدورات الأخري مثل: تصميم قوالب الووردبريس وبرمجة وإدارة قواعد البيانات والفيجوال بيسك وغيرها.
- قناة البرمجة: التي تضم عدد من الدورات مثل: دورة لغة C ودورة HTML و دورة CSS و
- قناة Appsstuff Middleware: وهي قناة عربية تهتم بتعليم مبادئ البرمجة وقواعد البيانات وخاصة الجافا والأوراكل.
- قناة الاسطورة للبرمجيات وعالم الكمبيوتر: وبها دورتين أساسيتين وهما: دورة تعليم لغة برمجة جافا المتكامله ودورة االفيجوال بيسك 2010.
قنوات ودورات أجنبية
أقوال المشاهير وبعض قصص النجاح
يقول مارك زوكربيرغ مُؤسس فيس بوك: “يجب التفكير دائمًا أنك بحاجة للبدء من نقطة ما ويجب أن تكون صغيرة، لأن الكثير من المفاهيم الخاطئة في مجال علوم الحاسب تنص على تعلّم كميّة كبيرة من المعلومات قبل أن تتمكّن من بناء شيء عظيم”
ويقول أيضا: “أن البرمجة هي الشيء الوحيد في العالم الذي يُمكّّنك من إنشاء أي شيء ترغب به من العدم”
باختصار، لا تحتاج لأن تكون خارق الذكاء لإتقان البرمجة، بل يجب أن تُؤمن بفكرة أن الهدف الأساسي من البرمجة هو تحويل الأفكار إلى شيء ملموس على أرض الواقع ولهذا السبب صُنعت لغات البرمجة.
مهما اختلفت لغات البرمجة ومهما تطورت، فهي ترتكز في النهاية على أساس واحد وهو التفكير المنطقي العقلاني ولا شيء دونه. لا يُمكنك القفز لمسافة 3 أمتار من أول مرّة، إنما تحتاج إلى التدرّب وفهم أفضل السبل للوصول إلى هذه المسافة من قفزة واحدة فقط.
بيل جيتس مُؤسس مايكروسوفت : قام بتعلّم البرمجة من أجل إنشاء برنامجًا بسيطًا لتنظيم جدول الحصص الدراسية وأسماء البنات الذين يرتادون هذه الحصص، ليتمكن فيما بعد من برمجة أحد أعظم أنظمة التشغيل في تاريخ الحواسب. الحقيقة أنك لتصبح مبرمجًا حقيقيًا ستحتاج أن تواصل التعلم دائمًا وطوال مسارك المهني.
جاك دورسي مُوسس تويتر: لم يصل إلى ما هو عليه بالصدفة، لكنه منذ الصغر كان مهووسًا بخريطة العالم والمدن الموجودة عليها، وتعلّم البرمجة من أجل إنشاء خريطة وإضافة الأماكن والمدن إليها والتعديل عليها فيما بعد.
لأنه استمتع بالبرمجة واعتبر أنها الشيء الذي يسمح له بتحويل أفكاره إلى حقيقة، تمكّن من إنشاء موقع التدوين المُصغّر تويتر فيما بعد.
يقول ستيف جوبس مُؤسس شركة أبل: “يجب تعليم البرمجة لجميع المواطنين في أمريكا لأنها تُعلِمهم كيفية التفكير”.
هذه المقولات وقصص النجاح وغيرها الكثير كانت السبب في إطلاق مبادرة code.org والتي دعمها الرئيس الأمريكي السابق “باراك أوباما” بنفسه ونجده في هذا الفيديو يحث الشعب الامريكي علي تعلم علوم الحاسب وخاصة البرمجة.
مجالات العمل والربح من البرمجة
كما سبق وذكرنا فإن مجالات البرمجة المختلفة تعتبر من المجالات التي يزداد الطلب عليها بشكل كبير جدا وتتهافت الشركات كبيرة كانت أو صغيرة علي المبرمجين المتميزين ويدفعون لهم مرتبات خيالية.
في الصورة السابقة شركة مصرية ناشئة تطلب مبرمجين بمرتبات تصل لـ 35 ألف جنية شهريا أي مايعادل تقريبا 2000 دولار.
يمكنك العمل والربح من خلال تعلم البرمجة بعدة طرق منها علي سبيل المثال:
- العمل بإحدي الشركات أو المواقع الكبيرة كمبرمج أو مصمم ويب أو مطور ويب.
- صناعة برنامج أو مجموعة برامج عليها طلب وبيعها للشركات الراغبة فيها.
- صناعة تطبيقات للموبايل ورفعها علي متجر جوجل بلاي أو متجر أبل وبيعها للمستخدمين أو وضعها مجانا والربح من خلال الإعلانات التي تظهر عليها.
- العمل كمستقل من خلال مواقع العمل الحر والخدمات المصغرة وذلك بأن تتقن إحدي مجالات البرمجة وتقدم خدماتك في هذا المجال نظير مبلغ مالي متفق عليه.
إليك عزيزي أكبر المنصات للعمل من منزلك من خلال جهدك في البرمجة.
موقع يوديمي: و هو عبارة عن موقع للتدريب والكورسات به أكثر من 5 ملايين متدرب من جميع أنحاء العالم, يمكنك وضع دورتك هنا و تحصد أرباح جيدة من خلال بيع دوراتك و من الأحسن أن تكون الدورة باللغة الإنجليزية لتستهدف أكبر شريحة رغم وجود الكثير من الدورات العربية عليه.
موقع 99designs: و هو عبارة عن موقع للمسابقات إذا كنت من محترفي التصميم و تصميم الشعارات و تصميم المواقع أنصحك بهذا الموقع و ادخل في مسابقات كي تعرف ما هو مستواك المعرفي و تحصد أرباح بعدما تربح في مسابقات للتصميم و هناك أيضا مسابقات يتم الدفع لكل المشتركين.
موقع freelancer: و هو الموقع الأشهر علي مستوي العالم في مجال العمل الحر , يتواجد عليه مئات وألاف المبرمجين و المطورين و المصممين و المبدعين في العديد من المجالات مثل البرمجة والتصميم والترجمة والكتابة و مجالات عدة.
موقع creativemarket: و هو موقع لعرض اعمالك و بيعها سواء كانت صور أو مواقع أو قوالب ووردبريس أو بلوجر او جوملا
وهو موقع جميل جدا يمتاز بمرونته و سهولته.
بعض المنصات الاجنبية الأخري:
http://www.elance.com/
http://www.toptal.com/
https://www.upwork.com/
https://www.fiverr.com/
http://studio.envato.com/
http://careers.stackoverflow.com/jobs
https://dribbble.com/jobs
https://www.behance.net/joblist
http://jobs.wordpress.net/
https://www.linkedin.com/job/
http://jobs.smashingmagazine.com/
ومن المنصات العربية في مجال العمل الحر والخدمات المصغرة:
ليس عليك بعد الان أن تقلق من قلة أو إنعدام الوظائف فقط حدد ما أنت بارع فيه (مصمم – مطور- مبرمج) وابدأ فى تعلمة واتقانه ثم اختر الطريق الصحيح الذي ستسير به بعد ذلك.
كلما كنت بارع في مجالات كثيرة كلما زادت عليك العروض وفرص العمل وبالتالي زاد دخلك الشهري.
هل وصلت بالقراءة إلي هنا؟ أشكرك جدا وأبشرك أنك قرأت 3755 كلمة وهذا يعني أنك مهتم جدا بموضوع البرمجة ووسائل تعلمها والعمل بها..
لذلك أطلب منك بكل حب أن تشارك هذا الموضوع مع أكبر قدر ممكن من أصدقائك لتعم الفائدة,
كما يسعدني أن أتلقي أي تساؤل يدور بذهنك من خلال مربع التعليقات أسفل الموضوع.