يُعد علم البرمجة من العلوم الحديثة والأساسية لتطور أي من الجهات أو المؤسسات أو حتى أي بلد موجود في هذا العالم الذي غزاه المبرمجون في شتى المجالات ببرمجيات غريبة ومهمة أصبحت تيسر كثيراً علينا القيام بمهمات كان يصعب بل ويستحيل علينا القيام بها من قبل.
هناك أسس وقواعد عامة يجب أن يهتم بها المبرمج قبل الخوض في هذا المجال الشيق أهمها هو ضرورة تعلم قواعد أمن المعلومات حتى يستطيع المبرمج حماية برنامجه من الاختراق.
ما هو سبب نظرة البعض إلى المبرمج على أنه ” مظلوم “؟
يرى الأستاذ أحمد عبد الرحيم الزرعوني ” الخبير التقني ” أن المبرمجين يعتبرون فنانين العصر لأن أي مبرمج يعتبر رسام لوحات بلغات شتى كما نعرف عن البرمجة التي بها لغات شتى أن كل لغة فيها لها استخدام معين، وهناك برمجيات معينة على الإنترنت والقمر الصناعي وأخرى موجودة على الأثير.
يعتبر المبرمج لديه ملَكة كبيرة كما يُعد المبرمجون من أهم الفئات التي يجب على الدول الاهتمام بها وتقديم لهم الدعم الشامل ودعم تخصصهم البرمجي خاصةً وأن المبرمجين يعتبرون شبه معدومين وقليلين جداً بين الناس لأن مجال البرمجة يتطلب تركيز شديد عند كتابة الأكواد ومحاولة تعديلها وكتابة comments قبل الكود إلخ إلخ.
أما عن الجانب المؤسسي أو الجانب الحكومي ومؤسسات الدولة أو الجهات الخاصة أو غيرها فإن مدراء IT لاحظوا ضرورة وجود تنسيق كبير بين فريق البرمجة داخل المؤسسة أو الشركة مع أهمية وجود تناغم في الأفكار للتطوير بغض النظر عن جنسية هؤلاء المبرمجين وعن لغة البرمجة المستخدمة، كما لاحظوا تطوير واضح في هذه المؤسسة من جانب فريق البرمجة الذي عمل في هذه المؤسسة.
يجدر الإشارة إلى أهمية وجود فريق مدرب من المبرمجين داخل المؤسسات المهنية بشكل خاص دون الاقتصار على جلب البرامج من الخارج وتطبيقها بشكل قد يكون غير ملائم بدرجة كبيرة للمؤسسة لأن المبرمجين الداخليين يمكنهم المساعدة في توفير الوقت والمال بل وإنتاجية هذه الشركة أو المؤسسة التي قد تصل إلى 200%، لذلك يُنصح لأي جهة تبغي الإبداع أن تقوم بتعيين مبرمجين داخل هذه الجهة للعمل على تطوير الجوانب المراد تطويرها من قِبل هذه المؤسسة أو الجهة.
كيف يمكن للمبرمج إجراء برمجياته؟
أصبح علم البرمجة الآن أسهل بنسبة كبيرة من ذي قبل حيث صار هنالك لغات برمجة معروفة مثل لغة react native الموجودة من قبل والتي تم تطويرها من قبل مؤسسة أو شركة فيس بوك.
إلى جانب ذلك، لدينا لغة C sharp من مايكروسوفت وهي أيضاً تعتبر من أقوى اللغات وتُستخدم تقريباً في كل شيء مثل servers وwindows والموبايلات، بالإضافة إلى اللغة السهلة المعروفة php ولغة الجافا التي تعتبر لغة قديمة لم تُطور بعد، كما لدينا لغة java scripts بجانب بعض لغات البرمجة الأخرى.
يعتبر لغة البرمجة لغة مشابهة للأثير الصوتي الذي يتيح للإنسان أن يفهم صوت من يحاوره، لذلك فإن لغة البرمجة هي عبارة عن مجموعة من الكتابات والكلمات والشفرات التي توضع بطريقة معينة يستطيع من خلالها أن يفهم الكومبيوتر المعنى المراد بها حين توضع بهذه الطريقة من قِبل المبرمج بغض النظر عن لغة البرمجة نفسها، وهذا هو المعنى المبسط لكلمة برمجة التي تعتمد على كتابة أكواد عديدة تصل إلى مليون كود في بعض الأحيان.
يجب أن يكون لكل كود برمجي وصف معين للعملية المراد القيام بها ويقوم المبرمج بوضع هذا الوصف على الكومبيوتر الذي يتعرف عليه، ومثال على ذلك وضع كود معين يصفه المبرمج للكومبيوتر بأنه مسئول عن العملية الحسابية كذا، وهذا يعتبر مهمة مدير المشروع في المقام الأول بغض النظر عن المبرمجين لأن مدير المشروع هو ما يعرف جيداً ما يريده صاحب العمل أو الإدارة وبالتالي فإن مدير المشروع يعتبر حلقة وصل بين صحاب العمل والمبرمج حيث يقوم بتوصيل تلك الرسالة إلى المبرمجين حتى يمكنهم ترجمتهما في صورة أكواد برمجية معينة تساعد في تطوير المؤسسة، لذلك فإن فشل العمل البرمجي يعتمد في الأساس على عدم وجود هذا الشخص الذي يمكنه أن يشرح للمبرمجين الهدف المراد تحديداً من العملية البرمجية داخل أي مؤسسة أو جهة.
ما هي الأساسيات التي تتطلبها مهنة البرمجة؟
يعتبر البرمجة مجال عملي كأي مجال آخر كمجال طب الأسنان أو مجال الإعلام عند الدخول فيه يمكن لأي إنسان أن يبدع فيه شريطة حُب هذا المجال ومحاولة التطور فيه طيلة الوقت.
يجدر الإشارة كذلك إلى ضرورة تعلم المبرمج أساسيات البرمجة التي تُعد سهلة للغاية حيث يمكن للمبرمج تعلم لغة C sharp في البداية في أي من المعاهد المتخصصة في علم البرمجة ثم يمكنه تعلم لغة react native لأن هناك العديد من الناس ممن يعرفون هذه اللغة، ثم بإمكان المبرمج الذي يسعى للتعمق في علم البرمجة دراسة أو تعلم لغة الجافا.
بالإضافة إلى ذلك، نحن بحاجة الآن إلى كم كبير من المبرمجين لأن هذا التخصص يمكن أن يقوم به فرد واحد عن طريق إنشاء برامج معينة خاصة به ومثال على ذلك برنامج واتس آب الذي نشأ بواسطة 3 أفراد فقط ومن ثم قام هؤلاء الثلاثة بجني مليارات الدولارات جراء هذا البرنامج الضعيف جداً برمجياً مقارنةً ببعض البرامج الأخرى القوية كبرنامج التليجرام وغيره، كما أن أهم التخصصات التي نحتاجها اليوم هي تخصصات البرمجة و security networking أو أمن المعلومات.
ما هو دور الجامعات في تنمية مجال البرمجة؟
هناك مشروع كبير في إمارة الشارقة أُطلق في دبي يُسمى بمشروع ” مليون مبرمج عربي ” وهو ما نعتبره مباردة رائعة جداً لأن لدينا نقص حاد في المبرمجين العرب في هذه الآونة لأن أغلب البرامج التي نراها الآن على الساحة العالمية حتى في جوجل ومايكروسوفت تأتي من developers موجودين في باكستان والهند ولا يوجد مطورين برامج معروفين في دولنا العربية للأسف مقارنةً بدول العالم الثاني والدول الأوروبية والولايات المتحدة المشهود لهم بكفاءتهم العالية في تطوير المهمة البرمجية المرادة.
أضاف ” الزرعوني “: هناك نقطة هامة في علم البرمجة وهي أن يكون المبرمج متفهم basic instructions الخاصة بأمن المعلومات عند الإقدام على إنشاء أو تطوير برنامج معين حتى لا يتعرض ذلك البرنامج أو هذا system لأي اختراق خارجي وهذا يتطلب مهارة خاصة من المبرمج وهو ما يفرق بين مبرمج ومبرمج آخر حين يقرر كشف منطقة معينة من البرنامج أو تغطية منطقة أخرى ليصعب اختراقها إلخ إلخ.
فيما يخص block chain يمكننا القول أنه لا يُستخدم من قبل الجميع وإنما له استخدام يقتصر على بعض الأفراد أو المؤسسات حيث أنه من كل 1000 حالة هناك 10 أو 20 حالة صحيحة فقط والباقي كله عبارة عن waste of time لأن المعلومات فيه تكون مضمونة وآمنة ومتاحة بصورة مباشرة، لذلك لا يمكننا استعمال block chain بشكل دائم وجعله هو البديل لأي شيء آخر.
من الضروري كما ذُكر سلفاً أن يكون المبرمج مُلم بدرجة أكبر بأمن المعلومات و cloud service كما يُنصح للمبرمجين أن يقللوا من وجود الأطراف المعنية التي يمكنها الدخول على البرنامج الخاصة بالجهة التي يعملون لها.
هل يمكن تعلم برمجة الهواتف بكل سهولة؟
إن أقل وقت يمكن فيه أن يدخل المبرمج لعالم برمجة تطبيقات الهواتف هو سنة خاصةً حين يعرف قواعد وأصول أمن المعلومات حتى يمكنه التخصص في هذا المجال بكل سهولة مع ضرورة وجود فكرة مناسبة أو تطبيق يحل مشكلة ما يستطيع المبرمج العمل عليه وتطويره من وقت لآخر ليكون سهل المنال بين أيدي الناس.
على سبيل المثال، هناك تطبيق إماراتي يُسمى بتطبيق ” كافو ” الذي يتيح لمستخدميه الدخول لطلب بترول أو بنزين في حال تعطل السيارة وتوقفها بسبب نقص السولار أو البنزين، لذلك فإن هذا البرنامج في هذه الحالة يعتبر بمثابة محطة بترول متحركة موجودة بين أيدي الناس بسبب المبرمجين لأنه حل المشكلة بطريقة سهلة.
وختاماً، إنني أنصح المبرمجين قبل إنشاء أي برنامج أن يقوموا برسم الفكرة في أذهانهم أولاً مع ضرورة استشارة الآخرين قبل بدء تنفيذ هذه الفكرة من الأساس حتى يتحصلون على المساعدة من جانب الآخرين.