الدليل الشامل لتعلم البرمجة من الصفر

360  تعليق

اريد تعلم البرمجة، من أين أبدا؟ سؤال لهُ ألف و ألف إجابة، و لسانُ حال السائل يقول أين أجد مُبتغاي؟! والطريقة الصحيحة لتعلم البرمجة للمبتدئين؟! ألا توجدخطة لتعلم البرمجة؟! وهل​ البرمجة ضربٌ من الخيال حتى تسمع عنها قصصاً تختلف؟!! أم أن تعلم البرمجة من الصفر أمرٌ لن تصل إليه مهما فعلت؟!!!

ما ذنبُك إذا أحببت العلم و رغبت بأن تضع أقدامك على أول الطريق و سؤالُك يضعك في ألف طريق.

فكيف إذا ما فرشنا لك الطريق بالعلوم و الخبرات لتبدأ طريقك لتعلم البرمجة من الالف الى الياء؟

بنهاية هذه التدوينة ستستطيع الإجابة على كل الأسئلة الأساسية التي تجول بذهن الراغب بتعلم البرمجة. كما ستستطيع أن تبدأ تعلم البرمجة دون حيرة!

تعلم البرمجة من الصفر بدايتهُ هذه التدوينة، كما يمكنك الاطلاع لاحقا علي تعليم البرمجة للاطفال.

المفهوم العظيم للغة البرمجة

قبل البدء بالحديث عن البرمجة، فلنضع في بالنا أن هناك فرقاً كبيراً بين المبرمج و المصمم.

هنا نتحدث عن البرمجة، وسنتعرف إلى الفرق بين البرمجة و التصميم بعد قليل.

إليك هذا:

لنفترض أنك وصلتَ إلى أمام البائع لتشتري هاتفاً، كيف تُخبر البائع بالنوع الذي ترغب بشراءه؟

لا بُد و أن تُخاطب البائع لتطلب مبتغاك، أليس كذلك؟ ولكن ماذا إذا كان البائع لا يتحدث لسانك ولا لغتك؟

لن تستطيع أن تحصل على ما ترغب به إلا إذا وجدت شخصاً يستطيع أن يتحدث مع البائع بلغته.

هذا هو حالك مع الحاسب…

أنت المشتري و الحاسب هو البائع، أنت يا صديقي تحتاج إلى هذا البائع لما يملكه من مميزات و قدرات لا تملكها أنت؛ لذا يجب أن تتعلم كيف يتحدث هذا البائع (الحاسب) وكيف تحصل على ما ترغب به.

لغاتُ البرمجة ليست إلا “لغات” ! بمعنى الكلمة، ما تؤديه فقط هو ترجمة ما ترغب به إلى ما يستطيع الحاسب تأديته.

ولكن، لماذا لغات البرمجة مختلفة؟

اللغة العربية بها 28 حرفاً، و الإنجليزية 26 حرفاً، إحدى الكلمات العربية تحتاج إلى جملة كاملة بالإنجليزية لترجمتها مثل “أنُلزمُكموها”.

هكذا اللغات تختلف عن بعضها في قدراتها و تكويناتها، مع وجود فروقات طفيفة في لغات البرمجة.

لغات البرمجة مثل اللغات الطبيعية لها ذخيرة لغوية و كلمات، و لكن تتميز بأن اللغة قد تأخذ إسماً آخربعد تطورها.

الجافا مثلاً تطورت من لغة C++ ، سُميّت جافا و أصبحت لغة برمجة مختلفة ! و إضافة إلى لغات البرمجة الكثيرة!

تعلم البرمجة - لغة جافا

معلومة مهمة:

مهما اختلفت لغات البرمجة، فجميعها في نهاية الأمر تتحول إلى شيء وحيد، و هو الصفر واحد. ومهما اختلفت لغات البرمجة تظل لغات عليا تسهل على المتحدث (المبرمج) مخاطبة الحاسب.

هذا التسهيل ضروري لأن الحاسب في الحقيقة يتعامل فقط مع شيئين هما 0 و 1، و من الصعب على المبرمج أن يكتب أوامره بالصفر و الواحد لأن عملية التحويل صعبة و الكتابة كثيرة .. مثل أن يكتب بدل الرقم 3 [11] و بدلاً من الرقم 9 [1001].

إتخاذ قرار: البرمجة أم التصميم؟

سترى لاحقاً كيف أن البرامج حازت على نصيب الأسد من التحكم في حياتنا و تسيير أمورنا و تسهيلها، ولكن من هم منشئو هذه البرامج.

يوجد خلط كبير بين المسميات الوظيفية لمن يعملون في المجالات البرمجية، لذا سنتطرق لأهم وأشهر وظيفيتين برمجيتين في الأسطر التالية.

وظيفتان منتشرتان في عالم البرمجة: مصمم برامج و مبرمج.

الفرق بين المصمم والمبرمج

المهم في الأمر:

هاتين الوظيفتين أو المهمتين (البرمجة و التصميم) مرتبطيتن معاً كما التوأمين لا تفترقان بتاتاً. و لكن بينهما فروق جوهرية لا بد ان تعلمها حتى تستطيع أن تحدد مسارك المهني و العملي.

حتى نعرف تلك الفروق لا بد أن نتعرف إلى طريقة عمل البرنامج !

البرامج تتكون من شاشة يراها المستخدم. هذه الشاشة يتعامل معها المستخدم، يُدخل فيها بياناته و يختار منها ما يرغب باختياره. يعتقد بعض المُستخدمين أن الشاشة هيالبرنامج، و لكن الحقيقة هي أن هذه الشاشة تماثل هيكل للسيارة.

جميعنا يستقل السيارات و نعلم أن السيارة تتحرك عند الضغط على دواسة الوقود و تتوقف بالضغط على المكابح. ولكن هل تعمل السيارة إذا امتلكنا دواسة وقود فقط و ظللنا نضغط عليها؟ ☺

بالتأكيد لا بُد من وجود شخص آخر ليؤدي العمليات الخلفية التي لا يراها سائق المركبة. فحركة المركبة تعتمد تماماً على ما يحدث عن الضغط على دواسة الوقود، و ليس على الضغط على الدواسة فقط. تتفق معي أليس كذلك؟

إذا ما اتفقت معي فأنت قد ملكت الفرق بين المصمم و المبرمج.

في شاشة تسجيل الدخول مثلاً يكون المصمم هو من يصمم شكل الشاشة التي يراها المستخدم و يضع الصور و يختار الألوان و يُنشئ الأزرار و الأماكن التي سيكتب فيها المستخدم.

أما المبرمج فهو من يُنشئ العمليات الخلفية لشاشة تسجيل الدخول. فعندما يدخل المستخدم إسمه و كلمة المرور فإن البرنامج يتعرف على هذه البيانات ويعرف هل هي مسجلة مسبقاً أم أنه شخص يحاول سرقة الحسابات.

من يُنشئ عملية التعرف هذه هو المبرمج.

خلاصة الأمر؛ أي برنامج يخدم المستخدم لا بد فيه من واجهة مستخدم و عمليات خلفية، يقوم بهما المصمم و المبرمج سوياً.

صفات المصمم والمبرمج

لكل من المبرمج و المصمم صفات شخصية يتسمون بها ليستطيعا التعامل مع مجالهما باحترافية و ينجحا فيه

صفات شخصية المصمم

  • تذوق الألوان !.
  • الإبداع و الإبتكار.

صفات شخصية المبرمج

  • التفكير المنطقي.
  • القدرة على حل المشاكل.

إنتشار البرمجة خارقٌ للعادة

توجد أسباب كثيرة لتتعلم البرمجة؛ ربما تملك هدفاً مُسبقاً ولكن ربما معرفتك بالآفاق التي وصلتها البرمجة تزيد من فضولك لهذا المجال.

ما يعجبني في هذا المجال أن البرمجة تصب في مجال النظم، و النظم تخدم جميع المجالات البشرية. بل أكثر من ذلك أرى أن البرمجة هي التي صنعت من عصرنا عصرنا…

أوّاهُ لحياتنا بلا برامج !

نمو عدد البرامج في قووقل بلي
نمو عدد البرامج في قووقل بلي

من المجالات التي تؤثر فيها البرمجة الآن -وليس جميعها-

  • برمجة الترفيه: من الشائع أن تكون قد لعبت أو أنك تدمنُ اللعب الآن على أحد الألعاب التي لا تعمل إلا على كرت شاشة خاص لجمال رسوماتها، هذه الألعاب فيها قدر عالٍ جداً من البرمجة.
    و لكن يظل الأمر أن الألعاب الحاسوبية ليست الوحيدة في مجال الترفيه. فإدارة الملاهي الكبيرة و الألعاب والبرامج السياحية وإصدار تذاكر الطيران وغيرها من الأمور التي تؤثر فيها البرمجة بقوة.
  • برمجة الطب: ما أدق التشخيص و أنت ترى الطبيب يطلب منك إصدار صورة اشعة ملائمة لحالك لتذهب -سلمك الله من كل سوء- إلى أخصائي الأشعة ليلعب بالأزرار التي تعمل عن طريق برنامج فتخضع لاجراء الأشعة.
    بصورة خاصة وصل الطب إلى درجة عالية من البرمجية بأن أصبح له تخصص اسمه نظم المعلومات الطبية!
  • برمجة السياسة: من المرات النادرة التي ربما ترى فيها السياسة في مدونة علوم، و لكنها تتأثر أيضاً بمجال البرمجة بشدة، فإدارة أنظمة الإقتراع و الحكومات الإلكترونية و التطبيقات التي تسهل حياة البشر من أهم ما يمكن أن تفعله الحكومات لمحكوميها.
  • برمجة علوم الفضاء: يجعلني أتعجب جداً ذاك القدر من الدقة الذي يتوفر ببرامج تدير ماكوكاً فضائياً، أن الجزء من الثانية يعني حياة بشر و جهود سنين عددا! فلغة  HAL/S مثلاً تلعب دوراً دقيقاً في ناسا.
    ولكن حتى تعرف تأثير البرمجة على علوم الفضاء، هل تذكر الصور التي تصاحب إقلاع أو هبوط أحد الصواريخ؟ دوماً تجد عدداً من المهندسين يجلسون أمام عدد كبير من الشاشات و يقفزون فرحاً عند نجاح العملية.
  • برمجة المنازل: هذا الأمر ليس مزحاً، مهما صغرت البرامج تبقى برامجاً، فالمكيف يملك مؤقتاً مبرمجاً، والتلفاز به برمجة تستقبل القنوات والغسالة تعمل الكترونياً بلا تدخل بشري لإحتوائها على برامج مختلفة.

ما يجب أن تعلمه تماماً أن البرمجة الآن تؤثر على كل منحى من مناحي حياتنا بلا استثناء. لذا فإن مجال البرمجة ما زال متطوراً و ما زال سوق عمله يتطلب الكثير من المُبرمجين المختصين.

السؤال الأسطوري: تعلم البرمجة سهل أم صعب؟

هل تعلم البرمجة صعب” ، “هل من الممكن تعلم البرمجة

هل واجهتك هذه الأسئلة أو جالت بخاطرك في يومٍ ما؟

أتفق معك إبتداءً أن تحديد مدى صعوبة أو سهولة ما ترغب بتعلمه يجب أن لا يكون المعيار الوحيد لمواصلة التعلم، أليس كذلك؟

إليك هذا السر:

وفقاً لتجاربي مع المبتدئين بتعلم البرمجة فإنهم يسألون أنفسهم و غيرهم هذا السؤال ليس لمعرفة درجة صعوبة أو سهولة البرمجة، و إنما للتأكد من قدرتهم على تعلم البرمجة.

في بعض الأحيان أيضاً يخلط الناس ما بين تعلم البرمجة و تعلم نظام التشغيل، لن نتحدث عن نظام التشغيل في هذه الجزئية ولكن نتحدث عنه في الجزء التالي مباشرة.

إذا ما كنت ترغب في تعلم أي علم من العلوم فبدايتُه أن تثق أنك ستستطيع تعلمه و أن تبذل أقصى جهدك لتعلمه !

البرمجة ليست بعيدة عن بقية العلوم، لذا سأضع بين يديك إجابة السؤال عن صعوبة و سهولة تعلم البرمجة لتنساه.

النقطة الأولى التي أرى أن تضعها بالإعتبار هي أن تعلم البرمجة يحتاج إلى مجهود. ستقضي ساعات وأيام من القراءة و التعلم حتى تصل إلى درجة المعرفة التي تعينك على إجراء التجارب و الحصول على الخبرات.

النقطة الثانية البرمجة تعتمد على المنطق، لن تجد زقاقاً واحداً في البرمجة لا يعتمد على المنطق، حتى العشوائية فيها منطقية. تأكد أنك ستتعامل مع المنطق بكثرة في تعلمك للبرمجة و إنشاء برامجك.

تعلم البرمجة الوقت مع الخبرة

الإجابة:

البرمجة ليست سهلة ولا صعبة، و إنما تحتاج إلى مجهود لتتعلمها، إذا وثقت أنك تستطيع أن تتعامل مع النقطتين السابقتين فأرى أن تعلم البرمجة سيكون سلسلاً ممتعاً.

ولا شيء يُضاهي رؤية نتاج مجهودك و تعلمك (البرامج) و هي تعمل أمام ناظريك. اطلع على تدوينة هل تعلم لغات البرمجة صعب؟ قبل ذلك يجب أن تتعلم التفكير كمبرمج.

نظام التشغيل الحاضن للغة البرمجة

كلنا على الأقل سمع بنظام التشغيل ويندوز Windows. هناك معرفة لازمٌ استصحابها في تعلمك للبرمجة تتعلق به.

إنها معرفة مفهوم و أنواع نظم التشغيل، إذا كُنت تعرف جيداً ما هي نظم التشغيل و أنواعها فاقفز إلى الجزئية التالية.

هيا فلنتعرف على عمل نظام التشغيل.

إن الحاسب الذي تستخدمه أو يستخدمه غيرك يتكون من أجهزة إلكترونية (معالجات و ذواكر و مخازن بيانات..إلخ) لن تعمل دون أن يوجد مدير يتحكم بهذه الأجهزة.

هذا المدير يسمى بنظام التشغيل، لاحظ أن إسمه يدل على وظيفته [تشغيل الحاسب].

لغات البرمجة و نظم التشغيل

حتى تعرف كيف يدير نظام التشغيل الحاسب لنتعرف على كيفية عمل نظام الويندوز بما أنه أكثر النظم انتشاراً.

عند ضغطك على زر تشغيل الحاسب ! يتم تحميل نظام التشغيل (ويندوز) وفقاً لإعدادات بسيطة ليتم تسليم نظام التشغيل دفة إدارة كافة أجهزة الحاسب.

عندها يبدأ الويندوز بإظهار الشاشات المألوفة و القابلة للتعامل معها بالفأرة، مثل الشاشة التي تحتوي على شعار ويندوز و ما يليها من الشاشات، كما يدير الويندوز الذاكرة العشوائية (RAM) و المعالج و كافة أجهزة الحاسب القابلة للإدارة.

ولكن هناك إحتمال آخر:

من الممكن أن يكون مدير النظام الذي يعمل عند الضغط على زر تشغيل الحاسب مختلفاً، و الشاشات التي تراها عند بدء نظام التشغيل مختلفة.

هنا تأتي أنواع أخرى من أنظمة التشغيل، إذا لم تكن تعرفها فهذا لأنها أقل انتشاراً و شعبية.

من أنظمة التشغيل الأقل شهرة من ويندوز لينكس و سولارس و ماكنتوش.

إذا ما كانت هذه الأنظمة منصبة على حاسبك لتدير نظام التشغيل فإنها لن تمثل فرقاً كبيراً في طريقة عمل حاسبك. للبدء دوماً ستضغط على زر تشغيل الحاسب و لكن الأزرار تختلف.

إذا ما تساءلت لماذا يجب أن تتعرف إلى هذه المعلومات عن أنظمة التشغيل، فإن هذا لأن لغات البرمجة ترتبط إرتباطاً مباشراً ولا فكاك منه بأنظمة التشغيل، فالبرنامج الذي تبذل لتطويره أياماً وليالي سيعمل على (أحد أو بعض أو كل) أنظمة التشغيل.

ولإختلاف أنظمة التشغيل و اختلاف طريقة تعاملها مع الأجهزة و إختلاف شاشاتها يجب أن تعلم كيف سيعالج برنامجك هذه الإختلافات.

مصادر الدخل بين (مفتوح المصدر و مغلق المصدر)

ستمر عليك هاتين العبارتين كثيراً في مسيرة تعلمك للبرمجة و عملك فيها.

ما يفعله المبرمج كما تعلم هو أن يكتب شفراته البرمجية (Source code)، ثم يترجم المترجم الآلي هذه الشفرات إلى لغة الحاسب لتعمل.

حسناً، لنُضف إضافة مهمة…

بعد ترجمة شفرتك البرمجية فإن مترجماً افتراضياً يتكفل بتحويل تلك الشفرات إلى ملف آخر قابل للتنفيذ.

مثل أن يحول المترجم شفرتك البرمجية إلى ملف بالإمتداد exe على ويندوز.

https://youtube.com/watch?v=IgqBw8GXfCs

جميع البرامج في الكون من الممكن أن تكون مفتوحة المصدر أو مغلقة المصدر.

كيف ذلك؟

البرنامج مفتوح المصدر يعني أنه مع نشر البرنامج  تكون شفرته البرمجية متاحة للجميع مجاناً.

أما البرنامج مغلق المصدر فيعني أن البرنامج فقط تم نشره للجميع ولكن تم الإحتفاظ بشفرتها البرمجية.

مايكروسوفت من الشركات التي تتبنى مفهوم البرامج مغلقة المصدر منذ سنوات. فنظام التشغيل ويندوز هو نظام مغلق المصدر ولم تُنشر شفرته البرمجية بتاتاً منذ بدايته و حتى اليوم.

أما نظام التشغيل لينكس فهو نظام مفتوح المصدر و شفرته البرمجية متاحة للجميع للتطوير و التعديل عليها.

مفاهيم مهمة في تحديد نوع البرنامج (مفتوح أم مغلق المصدر).

  • البرامج مفتوحة المصدر تعني أن الجميع يستطيع التطوير فيها و البدء من حيث انتهى الآخرون.
  • هذا التطوير يعني تطوراً أسرع لهذا البرنامج.
  • مغلق المصدر يعني أن هناك فئة محددة تعتني بتطوير البرنامج.
  • البرامج مغلقة المصدر من السهل التحكم فيها تجارياً، على عكس البرامج مفتوحة المصدر.
  • البرامج مفتوحة المصدر لا تعني أن البرنامج مجاني، بل تعني فقط أن الشفرة ستكون متاحة للجميع.

كيف تختار لغة البرمجة في أول الطريق

بعد أن تقتنع بأنك ترغب بتعلم لغة برمجة، تنتقل إلى مرحلة أعلى و هي اختيار لغة البرمجة التي ستتعلمها.

أعتقد أن اختيار لغة البرمجة ليس صعباً كما يعتقد الكثير من الناس.

السبب:

ذلك لسبب بسيط و هو أن لغة البرمجة وسيلة لتحقيق هدف محدد. فإذا عرفت ما هو هدفك فلن تُمثل لغة البرمجة المختارة فارقاً يُذكر.

لذا قبل أن تبدأ تعلم لغة برمجة ما، حدد هدفك الذي تود تحقيقه.

  • إنشاء برنامج معين محاسبي على الجوال.
  • تطبيق للتحكم بالروبوت.
  • موقع تواصل إجتماعي.
  • …إلخ

بعد أن تحدد هدفك حاول البحث عن لغات البرمجة التي تملك المؤهلات لتحقيق أهدافك.

اختيار لغة البرمجة

من أهم المؤهلات التي يجب عليك مراعاتها عند إختيارك للغة البرمجة

  • سهولة تحقيق الهدف: بحيث لا تكون كتابة الشفرات البرمجية لتحقيق الهدف صعبة أو طويلة.
  • الإعتمادية: لغة البرمجة مجربة في مجالك و تعمل بكفاءة مع أهداف مشابهة أو مماثلة.
  • التوثيق: وجود مصادر كافية لتعلم لغة البرمجة و حل المشاكل التي قد تواجهك أثناء تطويرك لنظامك.

توجد العديد من اللغات التي تخدم أهدافاً عامة، مثل إنشاء تطبيقات سطح المكتب و تطبيقات و مواقع الويب و غيرها من الأهداف تناولتها في معرض حديثي عن اختيار لغة البرمجة.

تأثير السوق على اختيار لغة البرمجة

تعلم لغة البرمجة لا يقف عند الهواية فقط، البرمجة مجال عملي و مهني و يتوقع المبرمج أن يحصل على عائد ! من أعماله.

و كنتيجة لمجهوداتك المستمرة، فإن برامجك أيضاً كنتيجة طبيعية ستكون جزءاً من مؤسسات و شركات أو مستخدمة من قبل مختلف المستخدمين.

إليك ما يجب أن تفعله:

إهتم بأن تكون أكثر تأثيراً بأن تختار لغة البرمجة المناسبة للسوق الذي تستهدفه.

السوق المُستهدف ربما يعني مكان تواجد مستخدمي برامجك.

من الممكن أن يكون السوق المستهدف حقيقي أو افتراضي.

مثال السوق الحقيقي أن تستهدف بيع برامجك في مدينة الكويت، أما مثال السوق الإفتراضي أن تستهدف مستخدمي ألعاب فيسبوك.

تحديد السوق المستهدف يعتمد على عوامل كثير أغلبها شخصية و عادة ما تكون خياراته قليلة. لذا لا تقلق نفسك كثيراً بمحاولة تغيير السوق المستهدف مالم تكن قابليتك للوصول إليه كاملة.

إنتشار لغة الجافا

بعد تحديد سوقك المستهدف ابحث عن أكثر لغات البرمجة المستخدمة في ذاك السوق، خاصة إذا ما رغبت بإنشاء البرامج للآخرين (تطوير البرامج) أو العمل الوظيفي.

الوصول لمعلومة أكثر لغات البرمجة المستخدمة له طرق كثيرة، و لكن سؤال أهل الخبرة أهمها. كما من الممكن أن تبحث عن الوظائف المطلوبة لكل لغة برمجة و تقارن بينها، شرحتُ هذه الطريقة في تدوينة عن اختيار لغة البرمجة.

من الطرق أيضاً أن تبحث عن أكثر دورات لغات البرمجة توفراً، فكلما كانت الطلب على لغة البرمجة أعلى توفرت لها دورات أكثر. و لكن أرى أن هذا المعيار ليس دقيقاً تماماً.

المهم في الأمر، بعد اختيار لغة البرمجة التي ترغب بتعلمها يتحتم أن لا تكون على جزيرة منعزلة لا تجد من تتعلم منه ولا من يرغب بتوظيفك ولا من يرغب بأن تطور له البرامج.

التخلص من عقدة اللغة الإنجليزية في البرمجة

عندما بدأ العلم كان العرب و المسلمون هم رُعاتُه = تاريخ.

تتفق معي أننا الآن و في أيامنا هذه أصبحت اللغة الإنجليزية هي عماد العلوم و اللغة العالمية للتخاطب و التعلم.

قبل أن أتحدث عن اللغة الإنجليزية أود أن أعبر عما بخاطري.

أؤمن تماماً بأن اللغة العربية بإمكانها أن تعبر عن العلوم جميعها إذا ما تُرجمت العلوم الموجودة إلى اللغة العربية و كُتبت المؤلفات العلمية باللغة العربية.

فلنعُد.. و بما أن اللغة الإنجليزية هي عماد العلوم في عصرنا و خاصةً في مجال الحاسب الآلي و البرمجة، فهل يجب أن تكون جيداً في اللغة الإنجليزية لتتعلم الحاسب؟

لا أعتقد ذلك.. فالبرمجة بصورة عامة لا تحتوي على قدر كبير من المفردات الإنجليزية، و بالإمكان تعلم مهامها حتى دون معرفة معناها.

التحول الإيجابي:

بالتأكيد إذا ما كنت جيداً في اللغة الإنجليزية فإن هذا سيسهل عليك فهم أمور كثيرة.

كما أن الكُتب الجيدة عن البرمجة عادة ما تكون متوفرة باللغة الإنجليزية. لاحظ قولي عادة وليس دائماً. يوجد بعض الكُتّاب المميزون في مجالات الحاسب و البرمجة في وطننا العربي.

لا تفكر كثيراً في اللغة الإنجليزية فهي لن تقف عائقاً في طريق تعلمك للبرمجة.

ولكن بلا شك.. يبقى تعلمها فائدة كبيرة، و أداة تزيد من سرعتك في تعلم العلوم عامة.

لا يكفي أن تتعلم فقط

البرمجة ليست نظريات… فقط.

في بدايات تعلم البرمجة و طوال تعلمك و عملك تستصحبك نظريات عديدة تسهل من عملك و تطور من مستواك العملي و العلمي.

ولكن إذا ما وجدت أن الحديث عن البرمجة يتوقف على النظريات فقط فاعلم أن هذا هو الطريق الخاطئ.

البرمجة تتحدث عن إنشاء منتج محسوس..

تتحدث عن نتاج مجهود و عمل و تفكير..

تتحدث عن تحويل الأفكار إلى واقع..

هذا يعني أن البرمجة لا تتوقف على تعلم النظريات فقط، لا تضيّع وقتك في تعلم نظريات لن تطبقها.

ما عليك أن تفعله فعلاً هو أن تتعلم النظريات من ناحية لتؤثر في طريقة عملك و مخرجاتك. ما يجب أن تفعله هو أن تطبق هذه النظريات و ترى نتائجها و تعتمدها إن نجحت و تغادرها إن فشلت.

السحر الخفي: التعلم في 24 ساعة و 3 أيام و 7 أيام

أنا و أنت و غيرنا … نرغب بالحصول على أفضل النتائج في أقصر وقت ممكن.

هذا هو السر في النجاحات التي تحققها مثل هذه الكتب.

ولكن المنطق يقول، إذا كانت البرمجة أو غيرها من المواضيع التي تتعلق بالكتب التي تسمى بتعلم البرمجة خلال … (وقت قصير جداً و غير منطقي) فعلاً تحول الشخص إلى مبرمج، فهذا يعني أنه بإمكانك أن تكون محترفاً لـ 10 مجالات خلال 10 أيام لتبدأ العمل باحدى الشركات ثم يأتي غيرك و قد قرأ 11 كتاب خلال 11 يوم ليكون أفضل منك .. و هكذا !!!

طلب تعلم البرمجة السريع

أعجبني تعلم الروحانيات في يوم !

من الجلي أن الأمر ليس منطقياً.

ولكن هل من الممكن تعلم لغة البرمجة بسرعة على كل حال؟

نعم، السرعة ممكن إذا حددت هدفك.

إذا ما كان هدفك إنشاء برنامج آلة حاسبة مثلاً، بدأت بتحليل ما يجب عليك أن تفعله حتى تبرمج آلة حاسبة ثم تعلمت ما تحتاجه فقط لا غير و طورت الآلة الحاسبة، هذا من الممكن أن يتم خلال يومان أو ثلاثة.

ولكن إحتراف لغة برمجة تم تطويرها خلال سنوات من العمل المتصل و خبرات مئات أو آلاف الأشخاص الموثقة في آلاف الصفحات يتم إستخلاصها في 20 صُفيحة صغيرة… يا للدهشة!

ستقرأ لاحقاً في هذه التدوينة آراء خبراء في البرمجة عن تعلم البرمجة و كم من الوقت يستلزم تعلم البرمجة و هذا سيضع بعض النقاط فوق الحروف.

حياة المبرمج العملية

بما أنك تقرأ حتى هنا، فهذا يعني أنك ترغب بتعلم البرمجة حتماً، ولكن..

هل تعلم كيف هي حياة المبرمج العملية؟

قبل أن تتعرف إلى حياة المبرمج العملية سنتطرق إلى شيء أهم و هي نماذج تطوير البرمجيات.

من أبسط نماذج تطوير البرمجيات هو نموذج الشلال، هذا النموذج يعتمد على إجراء مرحلة واحدة ثم الإنتقال إلى التالية دون

مراحل التطوير هي:

نموذج الشلال

  1. جمع المتطلبات: يقوم بهذه المرحلة محللو النظم عادة و يجلس فيها محلل النظام مع العميل لفهم احتياجاته و توثيقها.
  2. التحليل: يُكمل محلل النظام عمله بتحويل المتطلبات إلى نماذج و مخططات و هياكل معيارية لتُستخدم في المراحل المقبلة.
  3. التصميم: يشارك في هذه المرحلة الخبراء من المبرمجين و إداريو قواعد البيانات و مصممي البرامج، يتم فيه هذه المرحلة وضع الهيكل الخارجي للبرنامج مفككاً.
  4. البرمجة: في هذه المرحلة يعمل المبرمجون و إداريو قواعد البيانات و المصممين على ربط التصاميم المنشأة وفق نتائج التحليل و الهيكل المعد مسبقاً من قبل الخبراء. (اقرأ عن أخطاء البرمجة)
  5. الاختبار: الإختبار يجريه مختبرو النظم، فيه يقارن مختبرو النظم بين النظام الناتج من البرمجة و متطلبات العميل للتأكد من موافقتها لاحتياجاته كما يتأكدون من عدم وجود خلل بالبرنامج.
  6. الصيانة: تثبيت البرنامج لدى العميل و صيانة البرنامج بصورة دورية قد يشارك فيها أي عضو من أعصاء تطوير البرمجيات.

لا تنخدع بهذا العدد:

وفقاً لواقع الحياة، فإن هذا النموذج لا يُطبق إلا في الشركات الكبيرة أو البرامج الكبيرة، أما الشركات المتوسطة قد تدمج أكثر من عملية.

أما المشاريع الفردية و البرامج الصغيرة فيؤدي فيها المبرمج كامل المهام.

هل لاحظت أين هو دور المبرمج في نموذج تطوير البرمجيات؟

إذا ما عملت في بيئة احترافية فإن مهمتك الفعلية هي تسلم التصاميم من المبرمجين الخبراء، و تسلم وثائق متطلبات النظام و تحويل التصميم إلى برنامج حي وفقاً لمتطلبات العميل.

وكلما كانت الشركة أقل احترافية أو كان البرنامج أصغر كثُرت المهام التي تؤديها.

ماذا قال خبراء الحاسب

الإستماع لآراء الخبراء قبل تعلم لغة البرمجة من الأمور المساعدة لاختيار الطريق الصحيح و توفير الكثير من الوقت و العناء.

أحمد معتصم - مطور نظم
أحمد معتصم

أحمد معتصم (رحِمهُ الله، أسألُكَ الدُّعاء لهُ) مطور نظم:

  • أتقن لغة السي شارب.
  • تعلمت السي شارب لأنني علمتُ أن الطلب عليها من قبل الشركات كبير.
  • يحتاج المبتدئ لإنشاء برامج كبيرة بلغة السي الشارب إلى 3 أشهر تقريباً إذا أمضى 4 ساعات يومياً بالتعلم.
  • تطلب لغة السي شارب من قبل شركات تطوير المواقع الالكترونية و بعض الجهات الحكومية وشركات تطوير الألعاب التي تستخدم إطار عمل framework يعتمد على الدوت نت.

محمد علي الطيب مبرمج شيربوينت:

  • اتقن لغة الجافا، البي اتش بي، السي شارب.
  • الجافا تم تدريسها في الجامعه، واول شركه عملت بها كانت تستخدم الجافا كلغة برمجه اساسيه ومن ثم استخدمتها في تطوير تطبيقات الاندرويد.
  • البي اتش بي تعلمتها بعد الجامعه من اجل تطوير مواقع الويب لانها اكثر لغه مشهوره على الانترنت وبالاضافه لكثرة العمل الحر للغة البي اتش بي واشهر انظمة ادارة المحتوى مبنيه على البي اتش بي (ويردبرس، جوملا، دروبل).
  • السي شارب: تعلمتها فقط بدافع الفضول وتجربة لغة برمجه جديده ولم اتقنها الا بعد عدة سنين عند عملي كمبرمج في شركه وكانت اللغه المستخدمه لبرمجه جميع التطبيقات هي السي شارب.
  • اعتقد اسبوع الى عشره ايام تكفي لتعلم كافة الاساسيات لاي لغه والبدء في بناء تطبيق كامل.
  •  لم تواجهني اي صعوبات في عملي بسبب تعلمي لغة برمجة محددة.
  • تطلب الجافا من قبل الشركات التي تعمل في برمجة تطبيقات الجوال ومن بعض الشركات التي تقوم ببناء انظمه كبيره(Enterprise).
  • البي اتش بي تطلب من قبل الشركات التي تعمل في بناء المواقع الالكترونيه والانظمه المبنيه على الويب.
  • السي شارب تطلب من قبل شركات برمجة تطبيقات الجوال (ويندوز فون) وبالاضافه للشركات التي تعمل في برمجه التطبيقات لنظام التشغيل ويندوز بالاضافه للشركات التي تقوم ببناء التطبيقات المبنيه على الويب.

اطلع على تدوينة هل ألتحق بالجامعة من أجل تعلم البرمجة؟ النظرية وعكسها!.

تعلم البرمجة للمبتدئين

سأفترض أنك شخص قد شغفت بتعلم البرمجة بناءً على ما عرفته عن البرمجة من خلال مدونة علوم أو أي وسيط آخر وتريد أن تضع أول لبنة في الطريق إلى تعلم البرمجة، وتسأل؛ كيف يتعلم المبتدؤون البرمجة؟

سأضع لك خطوات هنا أعتبرها خطوات تعلم البرمجة للمبتدئين:

[tie_list type=”checklist”]

  • اختر مرشدا: المرشد شخصٌ يساعدك في تحديد الطريق الصحيح لتعلم البرمجة.
  • اختيار احدى لغات البرمجة: لا يهم أيُّ لغة برمجة هي، المهم أن تبدأ.
  • ابدأ التعلم: بدون تأخير، ابدأ بتعلم البرمجة أونلاين أو عن طريق الدورات.
  • طبّق ونفّذ: التنفيذ أهم خطوات تعلم البرمجة  للمبتدئين، فبها تكتشف المزيد ويرسخ ما تعلمت.
  • طوّر برامج: فور وصولك إلى قدر كاف لتطوير أبسط برنامج ابدأ بذلك فوراً.

[/tie_list]

اذا طبقت الخطوات أعلاه لا بد أن تتحول بعد وقت -ليس بالقصير عادة- من خانة تعلم البرمجة للمبتدئين إلى خانة تعلم البرمجة للمحترفين.

خاتمة

تعلم البرمجة مثل غيره من العلوم يحتاج إلى إجتهاد و مواصلة تعلم، وكُل من يعمل لذلك يصل، لا تنسى أن بعض الدول إعتمدت تعليم الأطفال البرمجة و اعتمدت البرمجة كإحدى المواد الأساسية بالمدارس.

التخلص من التشتت الذهني لكثرة المصادر و المعلومات من أهم الخطوات التي يجب على متعلم البرمجة القيام بها قبل البدء بتعلم البرمجة، و قبل ذلك يجب وضع فترة قصيرة لتحديد أفضل المصادر التي بإمكانك الإعتماد عليها.

ليس بالضرورة أن تتعلم كل شيء بسرعة أو أن تكون الأفضل بالمجال، و لكن من المهم أن تحاول أن تتحصل على كل شيء بسرعة و أن تكون الأفضل إطلاقاً.

كما انه لا يحتاج الي سن معين او مرحلة عمرية معينة هل تستطيع تعلم البرمجة أو علوم الحاسب بعد أن تبلغ من العمر **** عاماً؟ ، كل ما عليك هو البدء فورا.

عندما تجد الفائدة شاركها مع الآخرين، و إذا وجدت الفائدة في هذه التدوينة شاركها مع أصدقائك.

تدوينات مفيدة لك:

5 لغات برمجة غريبة و سهلة و ربما تستطيع صنع مثلها !


قد يعجبك أيضا

100+ شهادة تقنية لإحتراف 8 تخصصات: أمن المعلومات، الشبكات، الإدارة، البرمجة…إلخ

100+ شهادة تقنية لإحتراف 8 تخصصات: أمن المعلومات، الشبكات، الإدارة، البرمجة…إلخ

أعلى 5 شهادات دخلاً في تقنية المعلومات إبتداءً من 94 ألف دولار

أعلى 5 شهادات دخلاً في تقنية المعلومات إبتداءً من 94 ألف دولار
ما رأيك؟ اترك تعليقاً أدناه


  1. انا اجزم ان كل من وضع يده في هذا المقال وكتب فيه انه مبدع

    هذه المره الاولي التي اقرا فيها مقالا دسماً ورائع مليئ بهذا الجهد

    والمعلومات الرائعه حقا اشكركم علي هذا المقال الجمييل جدااً.

    1. مقال جدا رائع ومميز ومرتب وفيه من المعلومات والتفاصيل المفيدة لمن يريد أن يتعلم البرمجة أشكر جميع من كان له يد بإنشاء هذا العمل الجميل.

  2. انا اجزم ان كل من وضع يده في هذا المقال وكتب فيه انه مبدع

    هذه المره الاولي التي اقرا فيها مقالا دسماً ورائع مليئ بهذا الجهد

    والمعلومات الرائعه حقا اشكركم علي هذا المقال الجمييل جدااً.

  3. ايضا اريد ان اتعلم باي ثمن. كل ما تم ذكره شيء جيد ولكن لا يدلني كيف ابداء. هناك معلومات لم ترغبوا في نشرها!!!

  4. في الحقيقة المعلومات رائعة ، والشرح والوصف والتفصيل ممتاز ،
    بارك الله بكل من بذل مجهودًا ليخرج هذا المحتوى بهذه الروعة

  5. شكرآ لحضرتك انا فعلآ استفدت جدآ وكنت حابب لو حضرتك عندك قناة تعليم مجانية للغات إلى حضرتك ذكرتها هنا فى المقال لغه الجافا والى اتش بى والشارب

  6. شكرا لك جزيلا انا مبتدئة واريد تعلم البرمجة وبالتاكيد فى يوما ما سوف اصبح مثلك شكرا على مجهودك

  7. السلام عليكم
    اي لغه يمكن ان تفدني في التحليل البيانات
    واي لغه اقرب الي العمل في الاداره المالية

  8. انا مبتدأ لا أعلم شيئا عن البرمجة او التصميم وأرغب في التعلم بشدة فهل يمكن مساعدتي للحصول على حلمي وامنيتي بارك الله فيكم

  9. السلام عليكم ورحمة الله وبركاته
    بأمانة بارك الله فيك انا كنت بدأت اتراجع عن التعلم بسبب التشتت فى كيفية وماهية الامور التى يجب تعلمها والآن استقريت والحمد لله بفضل الله ثم انت
    وشكرا على ما قدمت

  10. أولا انتم من ومن اي جهة ثانيا لكم مني عاطر التحايا وأشكركم جزيلا الشكر بالفعل المشكلة هي استخدام برمجة الهاتف رقم انني أجيد التعامل مع الكمبيوتر وهده اعتبرها نصيحة غالية . وانا اناشد الجميع بفتح هدا البرنامج لفهم ما ذكرتم والله لكم الشكر .كمال الزاكي

  11. كان مقالا مفيد لقد شرحت فيها البرمجة بي ابسط صورة
    وعندما قرأت المقال كانك تقصدني انا
    لقد استفت شكرا لك وبارك الله فيك وجزاك الله خير

  12. شكرا لكم
    لقد كنت خائفة من تعلم البرمجة بالرغم من أن حلمي هو العمل في شركة كبيرة للبرمجة
    شكرا لكم وجعله الله في ميزان حسناتكم

  13. اشكرك من كل قلبي استاذي مصطفى،،شرح مفصل والله استمتعت وانا اقرا،،انا خريج دبلوم برمجه وكنت محتار ومتشوش وماعرفت ابدا في اي لغه،بعد قرائتي لمدونتك استوعبت كثير،بس في سوأل اشتي اشتغل في قواعد بياناتsql ايش من لغه اتعلم، وجزاك الله خير

    1. مرحباً رشيف، أسعدني وجودك في مدونة علوم وأتمنى رؤيتك هنا دائماً مستمتعاً ومستفيداً كذلك.
      إذا أردت التعلم على المصادر المفتوحة فبإمكانك دراسة mysql أما إذا أردت دراسة نظام إدارة قواعد البيانات الخاصة بمايكروسفت فعليك دراسة SQL Server.
      كل التوفيق لك يا صديقي

  14. السلام عليكم ورحمة الله وبركاته
    جزاكم الله خيرا د مصطفى
    أريد أن أتواصل مع حضرتك هاتف أو واتس
    إذ كان وقت حضرتك يسمح بذلك
    على الرقم التالى 01159686981

  15. السلام عليكم لو سمحتم انا مبتدئه واريد تعلم لغه البرمجه للعمل بها وليس مع شهاده للعمل فى مجالها فهل يمكن العمل بالبرمجه بدون شهاده ومن فتره وانا ابحث عن اول خطوه بدء فى مجال البرمجه واشكركم لاننى الان فهمت واوضحت الكثير من النقاط عن هذا المجال

  16. السلام عليكم وشكرا لكم علي هذه المدونة المفيدة جدا.
    انا مهندس في الشبكات الكهربائية و لدي كذلك ماجستير في نفس التخصص واود تعلم البرمجة – لغة بايثون – للعمل بها وكذلك لاني مقبل علي انجاز اطروحة دكتوراه علوم لذلك فانا في امس الحاجة لتعلم البرمجة. منذ سنة تابعت دورة للغة. c++ عبر النت وكذلك جزء من دورة لتعلم لغة بايثون لكني تقاعست منذ مدة لذلك ممكن تفيدوني بمعلوماتكم عن افضل دورة لتعلم لغة بايثون عبر النت بحيث تكون دورة متكاملة من الفكرة للتحقيق. شكرا مسبقا لكم

    1. وعليكم السلام ورحمة الله ناصر ومرحباً بك في مدونة علوم. نسعد بك.
      لغة بايثون مجالاتها واسعة ونموها مطرد جداً. اختيار موفق ولكني رغماً عن ذلك لا أملك معلومات عن دورة محددة عن لغة بايثون استطيع أن اوصي بها. الدورة الوحيدة الموجودة في علوم لتعليم البرمجة هي بلغة جافا، ولكن تستطيع أن تبحث في يوتيوب فهو مليء بالدورات أو ربما يفيدك موقع Udemy كذلك.

  17. السلام عليكم .في البداية اود ان اشكركم ولكم كامل الاحترام والتقدير.
    حقا اعجبني هذا الموضوع مما جعلني شغوف لهذا المجال .
    اريد معرفة كيفية التسجيل ؟ .
    والشكرا

    1. وعليكم السلام ورحمة الله وبركاته أخي عبدالله ويسعدني تواجدك في علوم.
      للاشتراك ما عليك إلا التوجه إلى قسم الدورات ومن هناك تستطيع التسجيل بدورة تعلم البرمجة من الصفر.
      اذا واجهت أي صعوبات أو تحديات في التسجيل أياً كان نوعها لا تتردد في مراسلتي عبر صفحة تواصل معي.

  18. ممتاز ماشاء الله
    أنا بدأت تعلم البرمجة منذ شهر ونصف تقريبا تعلمت أساسيات البرمجة ثم برنامج سكراتش وبدأت بعدها بلغة البايثون
    أنا في الأساس مهندس معماري ولكن أريد أن أتحول للبرمجة فهل هذا القرار سليم ؟
    وهل أستطيع العمل في المجال بعد تعلم البايثون فقط أم أحتاج للغات أخرى ؟
    وكم يستغرق الوقت لأبدأ في العمل ؟
    وشكرا لكم جدا جدا جدا.
    جزاكم الله خيرا كثيرا ❤️

    1. مرحباً علي، ما دمت ترغب بتعلم البرمجة فالأمر جيد. فهمت من تعليقك أنك تريد تعلم البرمجة من أجل العمل بها.
      في عالم الأعمال البرمجية يسيطر التقييم بالكفاءة على المعايير الأخرى. أثبت أنك مبرمج مقتدر وستجد عملاً. ادرس ثم اعمل على مشاريع غير ربحية (خاصة بك) وكأنها حقيقية، ثم اعرضها في مقابلاتك الوظيفية لتقنعهم بقدراتك.
      كم من الوقت تحتاج، يعتمد على عوامل كثيرة، أرى 6 أشهر من التعلم اليومي كافية لصنع مبرمج مهيب. وللبايثون سوق عمل كبير، وتستطيع عبرها الدخول في مجالات أخرى مثل البيانات الكبيرة.

      كل التوفيق لك

  19. والله انا عندى سؤال اتمنى تجاوبنى علية انا خريج ثانوية عامة من 2006 وحابب ابدا فى تعلم البرمجة واتفرجت على فيديوهات كتير وحابب بس اعرف ابدا منين وازاى ؟؟؟ مع مؤهلاتى دى ؟؟؟؟ مشكورا لو رديت

    1. أخي هيثم، بما أنك اطلعت على العديد من الفيديوهات أعتقد أن لديك خلفية كافية عن مواضيع تعلم البرمجة، ومع ذلك، وضعتُ لك عدة روابط أدناه لبعض التدوينات التي أعتقد أنها ستفيدك.
      خطوتك التالية أخي الكريم هي أن تختار احدى لغات البرمجة وتلتحق باحدى الدورات البرمجية لتعلمها.

      انصحك بالاطلاع على:

  20. جزاك الله خير
    معلومات قيمة و شرح مختصر و مفهوم
    : اريد ان اصبح هكر
    هكر فاعل للخير مثل (حمزة ابن دلاج)

  21. انا مبتدئ و كنت عاوز اعرف ازاى انشأ مجسمات ثلاثية الابعاد و التحرك فى داخل هذا المجسمات و ما هى اللغات البرمجية للدمج و شكرا على معلوماتك القيمة جدا

  22. شكرا جزيلا لك هده المقالة من افضل مقالات التي قرات عن البرمجة في ويب العربي استمر ووفقك الله.

  23. مع أن هالتدوينة بمثابة مقدمة مجلد من 1000 صفحة لكتاب من 1000 مجلد إلا أني بنصح فيها أي مقبل على تعلم لغات البرمجة.
    طويلة صحيح لكن ما شعرت بالملل أبداً بالعكس حسيت حالي عم إقرأ محتوى قيم جداً.
    أسلوبك رائع وممتع وبتمنالك التوفيق.
    حابة ضيف إني أنا كمان حبيت تعلم الروحانيات في يوم!! 🤣

  24. شكرا على المعلومات القيمة والمفيدة لأي شخص ينوي دخول عالم البرمجة..
    وسؤالي هل ينصح بتعلم اللغة c لأي مبتدئ…
    وشكرا

  25. شكرا احي الفاضيل على معلوماتك القيمة اتمنى ان ترشدني ببعض الكتوب للتعلم البرمجة وحتى مواقيع الويب وشكرااا

  26. هذه اجمل مقاله قرأتها واطول المقالات انها غابه في الروعه اكرم الله وجهك وزاد علمك وانار طريقك وشكرا جزيلا لاجل مشاركه ما تعلمت شكرا لعدم احتكارك لهذه المعلومات كما يفعل الغير شكرا لك ⁦❤️⁩⁦❤️⁩

  27. هذه اجمل مقاله قرأتها واطول المقالات انها غابه في الروعه اكرم الله وجهك وزاد علمك وانار طريقك وشكرا جزيلا لاجل مشاركه ما تعلمت شكرا لعدم احتكارك لهذه المعلومات كما يفعل الغير شكرا لك ⁦❤️⁩⁦❤️⁩⁦❤️⁩

  28. السلام عليكم اخي معك الامين من السودان
    مشكور علي المقال وجزاك اللة خير
    عندي سؤال ? دايري اتعلم الذكاء الاصطناعي
    المطلوب لغة باثيون المطلوب مني في لغة باثيون اول انا ابدا من وين بالضبط يعني ????
    اول ابدا بتصميم المواقع ولا معرفة الاكواد المطلوب في الذكاء الاصطناعي???
    معليش علي الاطال

  29. استاذ مصطفي شكرا جدا علي برمجه مفيد جدا بس لدي شرط انا ضغطت عليها الاشتراك كنت عايز احمل تمام هل تسحب المال او شئ اخر سحب رصيد ولا حاجة حضرتك ولا ده اي مش فاهم ممكن توضحلي من فضلك

  30. الله يباركلك انت مكانك مش هنا انت المفروض تبقى رائد تعليم البرمجة بس كنت عاوزك تضيف منهج محدد مقترح الناس تمشي عليه

  31. جزاك الله خيرا على هذا المجهود ،أختصرت عليه أشياء كثيرة وفعلا وجهتني لضالتي ،والله ما تعرف قد أيش أنك ساعدني ربي يوفقك دنيا واخره

  32. استاذ مصطفى الطيب
    ليس لي هدف محدد وارغب الدخول في عالم البرمجة من اجل المال
    ولي رغبة في تعلم الفيجوال بيسك
    فماذا تقول وتنصح؟

    1. مرجباً بك أبو علي،
      ربما تكون لغة فيجوال بيسك ليست لها طلبٌ عالٍ في السوق هذه الأيام. من أجل أن تعمل في سوق البرمجيات وتحصل على وظائفها أنصحك بالبحث عن احد اللغات المطلوبة في السوق.

  33. اولا السلام عليكم ورحمة الله
    ثانيا وفقك الله ورعاك باش مهندس مصطفى الطيب
    ادامك الله ذخر لأهل العلم والمقبلين عليه
    مقال ممتاز وخارق للعادة وتعلمت منه الكثير الكثير ويدل على انك حريص جدا على ايصال المعلومة لناجعله الله في ميزان حسناتك

    شكرا لك وجزاك الله خيرا
    باذن الله سوف اكون من متابعينك بحرارة

  34. بارك الله فيك، مجهود كبير وشرح متكامل ، استفدت جدا وأنرت ليا الطريق بفضل الله ، كامل التحية والتقدير لك ، اكرمكم الله ووفقكم

  35. اشكرك جدا جدا علي المقال وافادني جدا لانني كنت متردد بسبب اللغه الانجليزيه
    هل تنصحني ان اتعلم البرمجه مع العلم انني ف اللغه الانجليزيه لست جيد بها
    وشكرا جزيلا لك

  36. السلام عليكم
    اريد تعلم كيفية تصميم مواقع انترنت .
    هل الجافا لغة برمجة مناسبة لهذا الهدف .
    اذا كان الجواب نعم ،،، اريد الخطوات الاولى لتحميل هذه اللغة وتعلمها ..

    1. وعليكم السلام ورحمة الله،
      بصورة عامة إذا كان هدفك هو العمل في الشركات الكبيرة فجافا مناسبة تماماً. أما للعمل على مستوى المشاريع الصغيرة فربما تكون php أفضل.
      على كلٍ، تستطيع البدء بتعلم جافا من هنا شرح أسهل برنامج في لغة جافا الرائعة و شرح المفاهيم المهمة للمبتدئين.

  37. شكرا د.مصطفى الطيب اشمل مقال مر علي من قبل وجدت فيه كل شيء احتاجه انا عمري 18 سنه شغوف جدا بالبرمجه كنت اجد مقالات تتحدث بشكل عام ولاتكون كافيه لتحديد الهدف شكرا لك من جديد واتمنى لك التوفيق والنجاح

  38. مدونه تستحق المتابعه فهى طريق مبسط لمن اراد الوصول لهدفه.. اتت من شخص صاغ الكلامات باسلوب رائع يجعل القارى يحفظ كل نقطه.. ومالتعليقات الموجود بالمقاله الا دليل على مهارتك بارك الله فيك. فانت نموذج رائع تمنياتى لك بالتوفيق.. اخوك محمد الزهراني

    1. شكراً لك أخي عبدالعني. نعم البرمجة عملُ المستقبل والكثير الآن يمتهنونها مهنة وحيدة. لا تتطلب جهازاً خاصاً فأغلب أجهزة سطح المكتب والمحمولة كافية للعمل الاحترافي، ولكن هناك بعض البرامج التي تحتاج إلى حواسب بمواصفات عالية بالتأكيد.

  39. السلام عليكم
    اشكركم على هذا المقال المفيد واريد مسعاده منكم
    انا محاسب واتيحت الي فرصة في شركة برمجيات محاسبية خاصة في انشاء وتطوير وبرمجة البرامج المحاسبية
    ولكن بشرط ان احصل على شهادتي ال oca و ال ocp من شركة اوراكل
    هيا فرصة عظيمة وجيدة وانا من محبي التعلم والتطوير …

    السؤال هنا : كيف استطيع دراسة وتعلم البرمجة بدون اللجوء الى معاهد تعليمية نظرا لغلاء هذه الدورات ؟
    وهل يوجد مصادر مجانية لتعلم هذه الدورات وتعلم لغة البرمجة بشكل عام ؟

    شكرا جزيلا

    1. وعليكم السلام ورحمة الله حامد،

      أتمنى لك التوفيق في ذلك. أعتقد أن الانترنت مثقل بالدورات المجاني منها والمدفوع بجميع المستويات. تستطيع البحث عن دورة مجانية مثلاً أو بمبلغ مقبول بالنسبة لك للتعلم.
      كما تستطيع دوماً العودة إلى موقع أواركل لقراءة المراجع الأساسية.

  40. انا شاب فضولي واريد ان اتعلم البرمجة و اريد منك يا استاد مساعدتي لاتقانها فأنا مبتدأ لا اعرف اي شي عي البرمجة او اريد ان اتقنها او اصير مطور برامج

  41. أخوي مصطفى انا مبتدأ الان،،
    وماعندي اي خلفيه عن البرمجة غير مقالك هذا.. والحمدلله استفدت كثير لكن السؤال الأول انا ابغى اتعلَّم البرمجة وهدفي اسوي موقع تجاري إلكتروني وتطبيق في الايفون وين ممكن اتعلَّم ؟

    مع العلم اني من المملكة العربية السعودية مدينة جدة

    السؤال الثاني ابغا اشتري لاب توب او كمبيوتر مكتبي اش تنصحني في اي نوع مع ذكر التفاصيل الله يسعدك ؟

    أخر سؤال هل القرصنة لها علاقة في البرمجة ؟

    1. مرحباً بندر،
      تستطيع الإلتحاق بإحدى الدورات البرمجية في معاهد مدينتك “جدة” أو اللجوء إلى التعلم الإلكترونية عبر المنصات التعليمية المنتشرة عبر الانترنت.
      أما بالنسبة للأجهزة الالكترونية فلا أستطيع إفادتك فيها .. تفاصيل كثيرة منقوصة كما أن معرفتي بها ليست بتلك الجودة.
      أما القرصنة فلها علاقة بالبرمجة لأن البرامج من الممكن أن تُقرصن.

  42. مقالة ومدونة رائعة لكن لى سؤال هل للسن تأثير فى تعلم البرمجةفمثلا أذا كان رجلا او شخصا تعدى الخمسين ويريد تعلم البرمجة والعمل بها ودراستة السابقة تعطية عقل منظم وقدرة على حل المشاكل فانا دراستى وعملى التحكم الالى وتستهوينى البرمجة جدا لدرجة الشغف والعشق لكنى لا اعرف كيف أبدأ وشكرا لكل على مجهودك الرائع

  43. السلام عليكم ورحمة الله تعالى وبركاته
    سيدي الفاضل
    قرات كثيرا عن هاذ المجال لكن للأماته ما وحدت تدوينة مثل هاذه ابدا
    المضوع ليس إطراء ولكن الحقيقة والله العظيم كنت واقعيا جدا ووفقت بعون الله للشرح المطلوب
    احتصارا احييك من موريتانيا واقول لك جزاك الله خيرا عن العلم
    جعله الله في ميزان حسناتم
    شكرا جزبلا لك اخي الكربم

  44. جزاك الله عنا كل خير.. مقالتك غاية في الروعة وفهمتني الكثير في عالم البرمجة بالرغم من حبي للبرمجة من قبل قراءة مقالتك
    الفكرة أنني أعاني من النسيان وتشتيت الانتباه ولقد أشرت حضرتك في تلك المشكلة لأنها تتعارض مع تعلم البرمجة بخلاف حيرتي الشديد في أي لغة أبدأ وأتعلم.. فأنا عملت كثيرا مع الأكسس وأحببت بشكل مبدأي لغته وأخشى أن تكون اللغة التي سأتعلمها صعبة علي ولكن من باب تحديد طبيعة العمل فأريد تصميم وبرمجة برامج كمبيوتر تعمل على الإنترنت وأتمنى أن أجد مكان أو مركز أتعلم فيه لكي أكون ملتزم بالحضور والتعلم لأن تعلم الانترنت قد يكون صعب فأتعلم يوم وأتجاهل يوم

    1. مرحباً بك أخي عبدالرحمن يسعدني وجودك في مدونة علوم.
      لنكن أكثر دقة، التشتت وقلة التركيز قد تكون عائقاً معتبراً في طريق العمل البرمجي، ولكنه لا يمنع التعلم.
      المحبّة الحقيقية للبرمجة تأتي بعد تعلم البرمجة وتجربتها فعلياً، أن ترى كلماتك تتحول إلى برامج وأفكارك تُستخدم من قبل غيرك ولياليك التي قضيتها أمام الحاسب لم تضع سدى!
      عندها فقط تعلم أنك فعلاً تحب البرمجة.
      حتى ذاك الحين، أنصحك ببدء تعلم البرمجة والبدء بالأساسيات. فإذا وجدت أنك تستطيع التعامل مع البرمجة وفقاً لطباعك الشخصية تستطيع المواصلة، وإذا لم يكن فإن المعرفة البرمجية لن تضرك إطلاقاً.
      أتمنى لك التوفيق.

    1. مرحباً فاطمة،
      من الممكن الالتحاق بإحدى الدورات التي توفرها المعاهد في منطقتك، كما أنه بإمكانك التعلم من الدورات عبر الانترنت والتي يوجد منها الكثير في يوتيوب، وبإمكانك أيضاً أن تقتني كتاباً لتعليم البرمجة والتعلم منه.

  45. شكرا لك أستاذي الفاضل على هذه المعلومات القيمة أسال الله ان يحتسبها لك صدقة جارية في ميزان حسناتك. وأطلب منك أستاذي أن تمدني بموقعك الرسمي لكي أستفيد من باقي المعلومات في هذا المجال، وجزاك الله خيرا.

  46. السلام عليكم عليكم و رحمة الله و بركاته
    اريد ان اتعلم الخورزميات لأني اعتقد انها الاساس في تعلم البرمجة فهل لك من دروس او اي مصدر أخر لتعلم هذه المادة
    و جزاك الله خيرا على ما تقدمه من علم و اسال الله لك التوفيق و السداد و الاخلاص في العمل

  47. السلام عليكم انا صيدلانية وحابة جدا انى ادخل مجال البرمجة احاول تعلم لغة تساعدنى فى برمجة برامج لها علاقة بمجالى الطبى واحب ان اعمل باحدى بشركات البرمجة لكنى اتساءل من أين ابدأ وبأى لغة برمجة ابدأ؟؟ وأيها يكون مفيدا لى اكثر وشكرااا

    1. وعليكم السلام ورحمة الله فاطمة، ربما تحتاجين إلى معرفة المزيد عن تطوير البرامج والبرمجة لتحديد هدفك النهائي، هل البرنامج الذي ترغبين بتطويره على الويب (موقع انترنت أو انترانت) أم هو برنامج يتم تنصيبه (برنامج سطح مكتب)، كلما زادت معرفتك بهدفك أصبح تحديد لغة البرمجة الداعمة لهذا الهدف أوضح.
      أنصحك بالاطلاع على تدوينة كيف تختار لغة برمجة وتدوينة هل لغة برمجة واحدة تكفي؟.
      عموماً للمبتدئين أنصح بالبدء بتعلم لغة جافا حيث أنها لغة يسهل تعلمها كما أن لها سوقاً جيداً للعمل وبالإمكان تطوير كل أنواع البرامج والتطبيقات باستخدامها. بإمكانك الإطلاع على دورة أساسيات جافا كذلك.

  48. السلام عليكم
    هل لغة الجافا لها النصيب الاكبر بين لغات البرمجة الاخرى من حيث الادوات والاوامر المعمول بها على بيئة البرمجة او انها هي هدف سوق العمل حاليا

  49. السلام عليكم ورحمة الله وبركاته انا جديد في هذا المجال اشركرك كثيرا استاذ مصطفى الطيب زدت من حماسي خلال قراءتي للمقالة و اشكرك مرة اخرى

  50. السلام عليكم سيد /مصطفي عندي اكثر من سوال كنت عاوزه او ارغب ف تعلم لغات برمجه عندي خلفيه ولكن نظريه لست بارعه ف عملي اعلم جافا وسي شارب ولكن لست مثقفه للاسف بهذه لغات كنت ارغب ف تعلم لغه html كي ابقي مطوره ويب ولكن بحاجه الي تنفيذ وكمبيوتر وكتابه كود وهكذا لا يوجد لدي حاسوب الان هل استطيع تعلم لكي اصبح مثلا مدخله بيانات بمناسبة انا احب تفكير منطقي جدا وأحب ايضا تحليل وحل مشكلات وايضا اعشق الألوان ولكن لا استطيع الرسم ارغب فقط ف تعلم كمحلل بيانات كم يلزمني من وقت وما الكتب التي تنصحني بيها بحثت ع جوجل وجدت مصادر ولكنها ليست متاحه اسفه ع الاطاله وشكرا

    1. وعليكم السلام ورحمة الله ريم،

      أرى أنه من الصعب جداً الرد عليك لأن التعليق يوحي بتعدد التوجهات والأهداف. إن كانت من نصيحة فهي القراءة أكثر عن مجال علوم الحاسب بصورة عامة وتحديد الهدف المطلوب (تعلم البرمجة أم تحليل النظم أم التصميم أم غيره) ثم البحث عن المصادر التي تساعدك على تحقيق هدفك.

      أمنياتي لك بالتوفيق

  51. متى تكون لغة البرمجة اكثر تعقيدا اثناء البدء في مشروع
    هل تكون بسب عدم جمع المعلومات الكافية ام بسبب عدم وجود قدر كافي من فهم الخوارزميات ورموز والادوات والمصطلحات التي يستخدمها المبرمج في بيئة لغة البرمجة

    1. ستكون البرمجة أكثر تعقيداً عند البدء في أي مشروع إذا كانت هي بدايةُ المشروع.
      يجبُ أن يُبدأ المشروع بخطواتٍ أخرى مثل إستهلال المشروع وتحليله وصولاً إلى مرحلة التطوير والبرمجة.

  52. اهم ما خلصت إليه بعد قراءتي لمقالتك الذهبية .. ليس كم المعلومات فقط .. أو الاحاطه بالموضوع من عدة جوانب بالنسبة لمبتدىء … لكنها الايجابيه في توصيل المعلومة .. انها رفع الهمم والطاقات .. الدفع الى الامام وعدم وضع العصا في العجلات .. صديقي باختصار .. البرمجه حلمي من سنين .. لكن عدم تمكني من امتلاك حاسوب (مواصفات عتاد جيد ليخدمني مستقبلا) هو ما يعيقني في المضي قدما في تحقيق حلمي .. لكن كلماتك زادتني عزيمة واصرارا .. أسأل الله العلي القدير أن يجعلها في ميزان حسناتك .. وان يفتح علينا جميعا من العلوم …

    1. الحماس مع الإقدام أخي طارق. يسعدني مرورك بهذه التدوينة البسيطة وأرجو أن تُكمل طريق أمانيك بأن تبدأ ولو في وضعٍ عادي واترك تدبير عتاد الغد للغد. كُن مستعداً للبرمجة عندما تُفرج بعتادٍ جديد.
      أشكرك على كلماتك الطيب وفقك الله.

  53. شكرا أستاذ مصطفى لقد أدخلت الثقه والعزيمه في نفسي بعد قراتي لمدونتك رغم الصعوبات الي اواجهها في الحياه الا انني سوف احارب لاجل تحقيق حلمي

    1. الحياة ملأى بالصعوبات أخي عبدالخالق والجميع يواجهها. الناجح هو من يقاومها بعزيمة، وإن تغلّبت عليه يقف فوراً مرةً أخرى.
      أتمنى لك كل التوفيق.

  54. استازي الكريم اولا شكرا الك عالشرح المطول والمفصل ل مفهوم وكيفيه البدايه ب هاذا المجال وتقريبا نشالله تكون اعذيت شرح وافي لكن عندي تعقيب بسيط لو سمحت انا قرأت المقال كاملا لكن انت نسيت ان تنوه ان اللغه المطلوبه واللغه اللتي تعتمد علا تعلم لغهرالبرمجه هي اللغه الانجليزيه ولم اراك تطرق الى هاذا الموضوع
    يعني لو اي مبتدئ راح قرأ المقال وعجبه كلامك وتحمس واخد قرار وقت يجي يتعلم البرمجه وهوا يكون ما عندو خلفيه قويه باللغه الانكليزيه هاذ الموضوع رح يسببلو صدمه كبيره تحياتي الك وشكرا ع المجهود اللي بذلتو في كتابة المقال

    1. مرحباً بك أخي محمد،
      يسعدني وجودك في مدونة علوم. قراءتُك للتدوينة كاملةً أمرٌ مميزٌ كذلك 👍
      في الحقيقة ربما أختلفُ معك قليلاً. فإني أعتقدُ أن إلماماً معقولاً باللغة الإنلجيزية يكفي لتعلم البرمجة. خاصةً إذا كان التعلُّم من مصادر عربية.
      أما عن أهمية اللغة الإنجليزية وعمليات التعريب فستجدهُ في تدوينة علوم الحاسب باللغة العربية هي المستقبل: يعمل المخلصون على التعريب و الترجمة بثبات.

  55. السلام عليكم ورحمة الله وبركاته
    اخوي واستاذي / مصطفى الطيب ، لك التحية والتقدير على هذا المهود الطيب والرئع

    والله ان الواحد يفخر بان يكون هنالك في الوطن العربي ناس زيك
    يدوك المعلومة بكل تفاصيلها الكبيرة ولاصغيرة، رغم اني خريج علوم حاسوب منذ العام 2012 وكنت في حينها لدي اتقان الى العديد من لغات البرمجة وبديت اعمل بعض المشارئع ببعضها

    لكن .. اشتغل في مجال غير مجالي ونسيت كل الاشياء الجميلة المتعلقة بالبرمجة ، لذلك اتمنى من اخوتي و اخواتي المبرمجين ان يكونوا دائما تحديث مهارتهم للبرمجة من حين لاخر .
    لانو والله بعد “تطول منها” صعب ترجع بنفس قوتك او حتى بنصفها .

    مرة اخرى لك الشكر والتحية ،،،

    1. وعليكم السلام ورحمة الله وبركاته أخي الضو،

      أشكرك على طيبِ كلماتك وأتمنى لك كامل التوفيق.
      نصيحتُك قيّمة والتغيير سنةٌ الحياة والمجالِ التقني.

      دُمت بود.

  56. جزاك الله كل خير اخي الكريم. انا تعلمت المعلوماتية الادارية ولكنني نسيت جميع ما تعلمت للاسف لاسباب وضغوط حياتية. ارجو منك اخي الكريم ان تدلني على اسهل لغة برمجة يمكنني البدء في تعلمها فانا الآن املك الوقت والظروف ملائمة جدا للتعلم. ارجو منك الاجابة واشكرك جزيل الشكر على عملك الصالح.

    1. مرحباً بك أخي علي جُزيت الجنّة.
      لاختيار لغة البرمجة أرجو أن تطلع على تدوينة كيف تختار لغة برمجة تخدمك مثل مارك زوكربيرج ستجد فيها ما يعينك على الاختيار بإذن الله.
      إن اردت اجابة سريعة دون مراعاة لأي عامل آخر فسأقول لغة جافا جيّدة لتعلم البرمجة من أجل تعلم البرمجة فقط.

  57. سل أخي الكريم شرحكم هذا غاية في الروعة وجزاكم الله على ذالك .
    لدي سؤال كيف يمكن لي أن أصبح شخص متمكن من عل المعلوميات بكافةمجالاتها علما أني أتابع دراستي في نفس المجال
    شكرا

    1. شكراً لك محمد على وجودك في مدونة علوم،
      أعتقد أن الإجابة المباشرة هي “لا يمكن”. علوم الحاسب متشعبة جداً مع تخصصات دقيقة كثيرة. يجب أن تختارَ مجالاً واحداً وتصل فيه لأعلى المراتب تخصصاً. بقية التخصصات تكفيك فيها معرفة الأساسيات أو المعرفة قدر الحاجة.

  58. جزاك اللّٰه كل خير اخى الكريم على هذه المقالة الاكثر من رائعة، ولكن يراودنى سؤال ما ارجو حضرتكم بالرد عليه.
    لقد قررت ان اتعلم لغة جافا بإذن الله، هل تعلم هذه اللغة كافياً ام علَىَّ ان اتعلم المزيد من اللغات بعد ان اتقنها؟

    1. مرحباً أخي عزت،
      المحدد للكفاية يأتي من إجابة السؤال “لماذا تريد أن تتعلم البرمجة؟”
      مثلاً إذا كان الهدف تطوير المواقع أو تطوير تطبيقات الأندرويد أو تطوير برامج سطح المكتب فالجافا قادرةٌ على ذلك. وهي بداية جيّدة.
      ولكن انتبه. من الأفضل أن تجرّب لغات أخرى دوماً وتتعلم أساسياتها على الأقل. فقد تحتاج أحياناً لتشغيل برامج مكتوبة بلغات أخرى ضمن برامج جافا أو حتى قد تحتاج إلى أن تكتب شفرات مصدرية بلغات أخرى وقد تنتقل تماماً إلى لغة أخرى إذا ما وجدت فيها ما يحقق أهدافك 🙂

  59. شكرا يا هندسة علي المعلومات دي وبجد استفد كتير وزدت حماس اكثر ولكن اريد خطوات البدء في البرمجة اريد اول خطوة ثم الخطوات الاخري حتي اتعلم وشكرا

    1. مرحباً محمد،

      النقطة رقم 7 تتحدث عن هذا الأمر. إذا ما أردت أن تنتقل إلى تعلم البرمجة فعلياً فربما تفعل ما يلي:

      1. حدد هدفك من التعلم.
      2. حدد لغات البرمجة التي تؤدي هذا الهدف (مثلاً مواقع الويب بالإمكان برمجتها ببايثون أو asp.net أو php وغيرها من اللغات).
      3. اختر احدى اللغات (ولو عشوائياً لتبدأ فقط) وركز عليها لتكمل التعلّم
      4. طوّر مشروعاً باستخدام هذه اللغة.

      إذا أكملت الخطوات السابقة “والتي تحتاج منك لمجهود حقيقي حتى تكملها” ستستطيع أن تحدد طريقك بيسر بعد ذلك.

      أتمنى لك التوفيق.

  60. السلام عليكم.
    أحببت أن أعبر عن إعجابي الشديد بالأسلوب التعليمي الرائع الذي صيغ به هذا المقال. كم تمنيت أن يطور المقال إلى كتاب يساعد المبتدئين ويحافظ على نفس الروح مع التوسع والأمثلة ليجري المكتبة العربية. أنا على استعداد لتقديم العون مجانا تكريما لصاحبوالمقال وإكراما لغتنا وشبابنا العربي.
    أما وجه استفادتي فعميقة فأنا أملك أفكارا ومشاريع للبرمجيات ولكني في المرحلة الصفر من تعلم البرمجة وقد تزودت بثقة كبيرة من هذا المقال. أجدد تحيتي وإعجابي ومودتي الأخ مصطفى فإلى الأمام

    1. و عليكم السلام د.ممنجي ومرحباً بك.

      أشكرك على كلماتك الراقي وتشجيعك. يسعدني وجودك في مدونة علوم كما أشكرك على مقترحك الجميل وهو قيد النظر فعلاً.
      اطّلعتُ على مدونتك الجميلة، تأكّد أني سأعود إليك إذا ما اتجه الأمر إلى النشر.

      تقبّل تقديري.

  61. اعطني اسماء كتب او مراجع بالعربي افهم منها البرمجه انا كويس في اللغة الانجليزية والرياضيات

  62. جزاك الله عنا خير الجزاء لقد اصبت لب الحقيقة وبيت القصيد هذا ما كنا نبحث عنه لافادتنا ودعمنا شكرا جزيلا لك

  63. شكرا جزيلا وجزاك الله كل خير ، والله يرحم والديك اللي اتو بك الى هذه الدنيا ، بصراحه استفدت واختصرت علي مشوار طويل جدا ، شكرا من القلب

  64. جزاك الله خيرا اخي الكريم ورمضان مبارك وكل عام وانت بالف خير
    انا في المانيا واود ان اعرف ماهي لغة البرمجة الافضل المستخدمة في مثل هذه البلدان الصناعية وهل يمكنني تعلمها عن طريق التعلم الذاتي؟
    شكرا ودمتم بخير

    1. رمضانك مبارك أخي حسام ومرحباً بك في مدونة علوم،
      فيما يخص لغة البرمجة الأفضل أنصحك بالاطلاع على تدوينة الإجابة على أفضل لغات البرمجة| الجافا تتصدر الآن.
      التعلم الذاتي من الأساليب المتميزة في التعلم إذا ناسبتك، وبالإمكان تعلم البرمجة بالتعلم الذاتي إذا ناسبتك الطريقة.

  65. السلام عليك أنا أدرس في الثانية باكالوريا و أنا الآن على ابواب الإمتحان انشاء الله.
    لكن هل يمكنني بعد اجتيازي لهذه السنة . دراسة البرمجة منفردة دون دراستها في إحدى الجامعات ؟؟

    1. ليس بالضرورة الإلتحاق بالجماعة لدراسة البرمجة “فقط”.
      بالإمكان دراستها في المعاهد أو حتى عبر الإنترنت أو بالتعلم الذاتي سواءً من كتب أو دورات.
      الجامعة لدراسة “علوم الحاسب” والبرمجة إحدى العلوم التي تُدرّس في الجامعة.

  66. عندي سؤال هل استطيع تعلم البرمجة بدون ان ادرسها في الجامعة يعني تعلم فردي اونلاين ام انه يجب ان ادخل هذا التخصص في الجامعة

    1. مصادر التعلم المتوفرة على الانترنت كافية لتعلم البرمحة من المنزل بإذن الله. الإلتحاق بالجامعة ليس من أجل تعلم البرمجة وإنما من أجل تعلم علوم الحاسب. البرمجة إحدى هذه العلوم.

  67. شكرا لك على هذا المقال الرائع ، أجده من أفضل الأساسات التي تستيطيع بناء نظرة شاملة و هادفة لتعلم أي شئ و ليس لغة البرمجمة فقط ، أخي الكريم أو أن أ طرح عليك سؤالين . 1- أن جديد فيمجال البرمجة بالتحديد لغة الجافا بما ذا تنصحني بعدما تعلمت الأساسيات ؟ 2- هل يوجد تمارين أو تطبيقات أو برامج تخرج المتعلم من عالم النظرية وفقط ..، علما أنني أتعلم لغة الجافا لوحدي من المنزل؟

    1. الإجابة على كلا السؤالين تتمحور حول التطبيق. افترض متطلبات لبرنامج ما واعمل على تنفيذها. مثل أن تطور برنامجاً محاسبياً أو ساعة أو آلة حاسبة أو غيره. ابدأ بالسهل وتطور حتى تصل. والانترنت مليء بالموارد المساعدة على التعلم.

  68. جزاك الله خيراً أخي ، بعد اذنك انا هشتري لاب توب ، ايه الإمكانيات المناسبة لتعلم البرمجة بدون تهنيج الجهاز ؟

    1. وجزاك خيراً محمد.
      لست خبيراً في الأجهزة، ولكن يعتمد اختيار الحاسب على البرامج التي تحتاج لتشغيلها عليه. في حال أردت أن تقتني اليوم أعتقد أن حاسباً بمعالج core i7 مع ذاكرة 4 قيقا يكون أعلى بقليل مما تحتاجه للبدء بالبرمجة. مع العلم أنك تستطيع البدء في حاسب بانتيوم 4 🙂

  69. من فضلك كم سأستغرق لإنهاء تعلم لغة جافا مع العلم انه ليس عندي خلفية حيث اني اريد ان اصبح مطور تطبيقات اندرويد .
    ولم افهم قصدك استاذي عن البيئات الهجينة؟
    شكرا

  70. السلام عليكم شكرا لك أخي على المعلومات القيمة وجزاك الله كل خير لأنك تساعد الناس
    سؤالي هو ما هي لغة البرمجة التي أحتاجها لإنشاء تطبيقات اندرويد و اي او إس
    وشكرا.

    1. وعليكم السلام أخي عبداللطيف،

      من احدى الخيارات المتاحة لتطوير الاندرويد لغة جافا، ومن احدى الخيارات المتاحة لتطوير ios لغة سويفت.

      توجد العديد من الخيارات الأخرى متضمنة البيئات الهجينة التي تنتج أندرويد و ios بعد عملية تطوير واحدة.

  71. حقيقه مقال رائع وجميل ومفيد من فترة وانا بقرا عن البرمجه لكن حقيقه السرد شيق ومرتب الله يديك العافيه
    وسوالي هو هل بالضرورة تكون دارس علوم حاسوب حتي تصبح مبرمج جيد ولا لو كنت تفهم الحاسوب ممكن تكون مبرمج

    1. شكراً لثناءك أخي مبارك.
      جميع مناهج علوم الحاسب موجودة على الانترنت ويستطيع الناس دراستها في منازلهم. لذا لم نعد في وقتٍ نقولُ فيه أن الدراسةً يجبُ أن تتم في الجامعة. ولكن..
      دراسةُ مواد علوم الحاسب تجعلُ المبرمج أكثرَ فهماً لما يفعل، وهذا ما يجعلهُ أكثر تأهيلاً -أحياناً- للعمل على بعض المشاريع.
      في نفس الوقت، من الممكن دراسة البرمجة فقط والبدء بإنتاج البرامج دون دراسة بقية المواد.. خيارٌ متاح كذلك.

  72. مقال رائع..
    أنا عندي رغبة في التعلم أي تخصص من IT بس عندي تشتت في اختيار المجال. أتمنى أختار مجال أتفوق فيه. للعلم تخرجت IT بس من غير استفادة كل دراستي نظري.
    سؤال لحضرتك : أفضل دورات لشهادات دولية أستفيد منها فعليا ..

    1. بالنسبة لاختيار التخصص أنصحك بالاطلاع على تدوينة الدليل الشامل لتعلم البرمجة أما فيما يتعلق بالدورات فاطلع على أعلى 5 شهادات دخلاً..
      بإمكا الإطلاع ايضاً على تدوينة 100+ شهادة تقنية لاختراف 8 تخصصات حيث تجد فيها العديد من الشهادات الداعمة لمختلف المسارات.

  73. أنت انسان لا تستاهل الشكر فقط بل (بوسة شوارب) كمان. والله ردودك فقط فضل كبير علينا وذلك من تاريخ2016-2018الله يطول بعمرك…بس سؤال اللي بدو يمشي بشي ينفع شؤون دولته برمجيا+تحصين نفسه من القرصنة شو بتنصحوه أستاذ لو تتكرم برد

    1. مرحباً بك أخي معن ويسعدني وجودك في علوم مهما طالتِ المدة.
      عندما تتحدث عن الفائدة فإنك تتحدث عن سد احتياج. ابحث عن النقطة التي بها أقصى حوجة برمجية ثم حاول سد ذلك الاحتياج. أما بالنسبة للحماية من القرصنة فإن الثقافة عن هذا المجال على الاقل أمرٌ ضروري.

  74. جزاك الله خير وحقيقة مقال قوي ومسوق ويعطي دافع لتعلم. فهل عمري فوق ال٥٥ سنة ممكن تصبح مبرمج ؟
    وكيف متواصل معك. وسكرا. ابو محمد

  75. السلام عليكم
    بعد التحية
    كما تعرف حصرتك ان البرمجة دخلت في عموم نواحي الحياة وأنا اخص بالذكر مجال السيارات حيث ان التقنيات الحديثة تمثلت وبشكل واضح في كمبيوتر السيارة او مايسمى (العقل) وان هذا الجهاز يقوم بمهامه وفق برنامج يدير شؤون السياره بكل تفاصيلها وهنا يبدأ السؤال اي لغة تستخدم في هذا المجال وكيف توصلني الى مايرشدني الى ذلك ومن الله التوفيق

    1. وعليكم السلام ورحمة الله عبدالستار،
      برغم عدم عملي على تطوير نظم للسيارات إلا أنه وفقاً لمؤتمر JavaOne فإن جافا تتواجد في 15 (بـ)ـليون جهاز متضمناً ذلك 2 (بـ)ـليون سيارة.

  76. السلام عليكم و رحمة الله
    أولا اريد ان أتقدم لك بجزيل الشكر على مقالتك الرائعة و أسلوبك الممتاز في الشرح . عادة ما اشعر بالملل عند قراءة مقالة طويلة . ولكن بفضل براعتك في تبسيط الشرح استمتعت كثيرا.
    بارك الله فيك و جعلها في ميزان حسناتك .
    ثانيا أود أن أطرح سؤالا . هل يمكنني أن ادرس البرمجة من خلال الانترنيت فقط ؟ لأنه لا يوجد عندنا أقسام او تكوينات في هذا المجال في مدينتني الصغيرة . ففكرت في استغلال وقتي على الانترنيت بشكل مفيد .
    و اتمنى ان تفيدني اذا كنت تعرف اي تطبيق او موقع يفيدني في متابعة الدروس من الأول .
    و شكرا لك مرة أخرى و اتمنى لك المزيد من التوفيق و التألق .

    1. وعليكم السلام ورحمة الله وبركاته أمل.

      أشكرك على قضاء وقتك في مدونة علوم ويُسعدني أن وجدتِ بعض فائدةٍ بها.
      التعلّم عبر الإنترنت فرصةٌ بإمكانك استغلالها إلى أقصى درجةٍ ممكنة. تتوفر بالإنترنت دوراتٍ ومقالاتٍ ودروس مجزّئة أو مقسّمة مع إمكانية البحث وفق ما يرغبُ الدارس. بإمكانك تعلّم أغلب ما ترغبين بتعلّمه وخصوصاً لغات البرمجة عبر الإنترنت. ولكثرة الدورات ولتعدد الوسائط المتاحة للتعلم من كتب ودورات بطرق مختلفة وأساليب مختلفة يجب على الدارس أن يبحث عن ما يُناسبُهُ هو شخصياً ثم إتباع الدورة حتى نهايتها.
      أنصحُك بتحديد لغة البرمجة التي ترغبين بتعلّمها ثم البحث عن دوراتها في الإنترنت ثم اختيار الأنسب لكِ.
      أمنياتي لكِ بالتوفيق.

  77. 1. ماهو التخصص المناسب للنساء في مجال علوم الحاسوب وتقنية المعلومات من حيث طبيعة العمل ؟
    2. هل بمقدور الخريجين في مجال تقنية المعلومات أن يصممو برامج , أم أنها ممكن أن تدرس في دورات منفصلة ؟ وهل بمقدورهم أيضا تصميم صفحات في النت وادارتها كصفحة الفيسبوك ومحرك البحث قوقل (أتمنى أنني لم اخطيء في محتوى السؤال ! ).
    3. انشاء أنظمة تشغيل كوندوز واندرويد يتم تعلمها تحت أي تخصص ؟

    1. الكثير جداً من تخصصات الحاسب يحتاج إلى جهد عقلي أكثر منهُ بدني وبالتالي يكونُ مناسباً أكثر لمن ترى أنها ترغب بالعمل في المجالات التي تتسم بتلك الصفات. مثالُ ذلك “البرمجة واختبار البرمجيات والدعم الفني”.
      بإمكان خريجي الحاسوب تصميم البرامج وتطويرها إذا تعلّموا ذلك أثناء دراستهم الجامعية. من المُتوقّع أن يدرس طالب علوم الحاسب طريقة تطوير وتصميم البرمجيّات من الأساسيات إلى المستوى المتوسّط. خلا ذلك توجد دورات لتعليم البرمجة.
      أعتقد أن من يرغب بالتخصص في أنظمة التشغيل بدايتُه المناسبة هي مجال علوم الحاسب.

  78. سلام عليكم انا ادرس اعلام الي اولى جامعي بالغة سي وك مبتدئة اتقنها و الحمد لله فقد تجاوزت مرحلة برمجة الة حاسبة و لعبة شطرنج (مخففة )مثلا … وكما قلت تماما تشعر بلذة و انت ترى برنامجك يعمل رغم صغره فالاهم هو الاتقان والطموح الى المستوى التالي .اشكرك على معلماتك البناءة رغم انها قد مرت عليا غير اني قرءتها من مقالك وكاني اراها اول مرة شكرا جزيلا .

    1. وعليكم السلام ورحمة الله دلال. تُسعدني رؤية من يبدأون الطريق عملاً. أتمنى لكِ التوفيق وبإذن الله تصلين إلى طموحك الأعلى ومبتغاك البرمجي والحاسوبي.

  79. شكراً جزيلاً آستآذ مصطفي ولكن لدي آستفسآر بسيط جداً آنآ طآلب في آلصف آلثآني آلثآنوي وحلمي آني آدخل كلية حآسبآت ومعلومآت حتي آستطيع آلسفر لآحد آلدول وآلعمل بآحد آلشركآت آنآ محتآج رآي حضرتك آني آبدآ دلوقتي في تعلم آللغآت ولآ آنتظر ويآريت لو آعرف رآي حضرتك في آفضل آشيآء تفيدني في آلعمل هل هي لغة آلبرمجة آم شي آخر ؟؟
    وشكراً لحضرتك علي هذآ آلمجهور

    1. مرحباً عبدالرحمن،
      طالما أن لديك فرصة التعلم حالياً فابدأ فوراً. تعلم احدى لغات البرمجة فستفيدك كثيراً في مسارك الحاسوبي. كما أن أكثر لغة برمجة تستهلك من المبرمج وقتاً هي أول لغة برمجة يتعلمها. فاكسب وقتك.
      ركّز على لغة البرمجة حالياً ومستقبلاً ستتعلم أشياء أخرى.

  80. ماهى افضل اللغات او اكثره استخداما لنظم المعلومات الحغرافية للعمل على arc gis وياريت لوعندك معلومات عن مطور نظم المعلومات واللغات المستخدمة للتعلم وترتيبه من حيث الاهمية لانشاء تطبيقات

  81. السلام عليكم شكرا جزيلا استاد على هذه التدوينة الرائعة والرائعة جدا
    رغم ان التدوينة واضحة جدا الاان كوني لاافقه شيئ في البرمجة لااعرف اين ابدأ
    بما تنصحني اريد بشدة ان اعمل في مجال المعلوميات وشكرا

    1. وعليكم السلام ورحمة الله أخي عبداللطيف.
      بإمكانك البدء بالإلتحاق بإحدى دورات تعلم إحدى لغات البرمجة “لا يهم أي لغة” فقط ابدأ لتتعرف قليلاً على المجال ثم حدد ما تريد بالضبط.

  82. السلام عليكم ورحمة الله وبركته جزاك الله خير فيما نشرة لنا
    سوالي هو
    انا اريد ان اقوم بصنع جهاز
    او برمجة برنامج
    او حسوب يستطيع ان يفكر ويتخز القرار بمفرده دون تدخل الانسان مطلقا وان وجه مشكل لجا الي الانترنت ويبحث عن الحل بمفرده
    فكرتي هي ان اصمم عقل مثل siri في الايفون ولاكن بدون انترنت ولهو الحريه المطلقه في التعبير
    غرضي ليس للتسويق ولكن شخصي
    اعلم انه صعب جدا جدا جدا علي مبتدا مثلي ولكن ليس مستحيل
    سوالي باختصار هو
    ما هي اللغه البرمجية التي يجب ان اتعلمه لبرمجة هذا العقل الاصطنعي
    وشكرا وانا اسف ان كنت اطلت عليك ولكن كان يجب ان اوضح وجهت نظري كامله
    [email protected] فيس بوك

    1. وعليكم السلام ورحمة الله وبركاته أحمد،

      كما ذكرتَ في مقالك، ستصل بإذن الله طالما واصلتَ المسير.
      لغاتُ برمجة مختلفة تدعم تطوير تطبيقات الذكاء الإصطناعي، أنصحك بإعداد فكرة أوليّة لما ترغب بإنتاجه في النهاية والبحث عن إمكانية تطبيقه مع كل لغة. ولكن عموماً لغة python المشهورة ببساطتها تدعم إنشاء تطبيقات الذكاء الاصطناعي في حال أردت أن تتعلم.

  83. شكرا اخي الكريم ولكن لدى سؤال.
    هل فى بلدى امكانيات للاحتراف ام مقصور على الغرب فقط ومن اين اجد دورات تعليم للغات

  84. انا معرفشي اي حاحه عن البرمجه يعني معلوماتي تكاد تكون صفر
    هل ممكن ان اتعلمها
    ولو حبيت اتعلمه. ابدء بايه

  85. ما شااااااء الله من أأنق المقالات وأفخمها..واضحة ومفهومة..الله يحفظك ويجزااااك كل خير…الله يسعدك يشيخ شي يفتح النّفس..

  86. رغم اني مبرمج واحب البرمجة والتعلم لكوني تعلمت ولازلت اتعلم من الدورات والبحث والتطبيق الا انني لم امضي ربع ساعة اقراء فيها هكذا موضوع من قبل لاكن هذ المرة جودة الموضوع وطريقة الصياغة جعلتني اكمل القرائة للنهاية وصراحة تعلمت عدة اشياء عن مفهوم البرمجة وارتباطها بحياتنا لشكل مباشر.
    اهم دافعل لي في التعلم كان حبي لانشاء ء المواقع لهذا كنت اعمل على منصات مثل بلوجر لاكن كنت اريد شيئ خاص بي لهذا بدأت بالتعلم ولازلت اتعلم مكما قلت ان ترا مجهودك في التعلم مجسد امام شعور لايوصف) فلايكفي ان تتقن الاساسيات فقط بل يجب ان تستمر في البحث والاطلاع على كل ماهو جديد في اللغة التي تريد او تعلمتها بالفعل.
    تحياتي لك دكتور مصطفى واسف على الإطالة.

    1. ونعم المثالُ أنت أخي عادل. كما يقُول حمود الخضر “كُن أنتْ” ?
      أُعجبْتَ بـِ ، ثم بدأتَ وعملتْ، فتعلّمت وواصلت ومازِلتْ. وستكون بإذن الله كما تُريد وأكثر. ولا يكفي أن تُتقنَ الأساسيات فقط ?
      أتمنّى أن أراكَ دوماً في الجوار. دُمت بوُد.

  87. جزاكم اللّٰه كل الخير دكتور ، انا مبتدئ وليس لي اي علاقة او معلومات في مجال البرمجة ولكن لطالما كنت أتمنى أدخل هذا المجال ، فقط دكتور اريد معرفة ما اذا انني أستطيع الاستفادة من تعلم البرمجة ودمجها في مجال التسويق لاني ادرس تخصص التسويق ?

    1. مرحباً أخي فيصل،
      أنا أخوك ولستُ دكتور 🙂
      بالتأكيد تستطيع استخدام البرمجة لتُنتج برامج أو تطبيقات تخدم قطاع التسويق، أكبرُ مثالٍ لذلك نظام التسويق الخاص بقووقل Adwords.
      في كل الاحوال تستطيع تطبيق أفكارك الخاصة.

  88. شكرالك وارجو لك التووفيق لك ولا زريتك كونت احب ان تكثر من ازديادك للععلم للاخرين بتدوين مثلا رقم هتفقك او طريقة للتحدث عنما يحتاجك امبتدئون امثالى وشكرا

  89. شكرا لم استمر فى القراءة منذ فترة لاخر مقالة مثل ما فعلت الان
    شكرا لك يالطيب
    عزمت امرى بعد التوكل على الله ثم قراءة مقالك على بداية تعلم لغات البرمجة
    احبك فى الله

    1. شُكراً لك يا حسام على جميل حديثك وأتمنى لك من قلبي التوفيق في مسيرتك البرمجية بإذن الله.
      أتمنى أن أراك مرةً أخرى لتخبرنا عن مستجدات رحلتك.

  90. شكراً على المقال الجميل …. اريد تعلم لغة برمجة تمكنني من تطوير المواقع وفي نفس الوقت تطوير البرامج وتستخدم بكثرة في الامن المعلوماتي بأي لغة تنصحني

  91. شكرا اخي على المقال المفيد
    اريد ان ابدا في تعلم البرمجة وارجو ان تساعدنى على ذلك باجابة بعض الاسئلة
    اولا : هل يجب تعلم اشياء او مقدمات معينة قبل البدء بتعلم لغة من لغات البرمجة ( مثلا طريقة تفكير الحاسب او ما شابه لا اعلم بالضبط )
    ثانيا : هل استطيع تعلم البرمجة والعمل بها وانا لازلت ضعيفا في الانجليزية
    ثالثا : هل يمكننى ان اتعلم تطوير وتصميم البرامج ام علي تحديد اياها والتخلي عن الاخرى تماما
    رابعا : ان لم يكن هناك ما يجب البدء به قبل تعلم لغات البرمجة فباى لغة تنصحنى ان ابدا اريد منها ان تكون اكثر شيوعا وتسهل علي تعلم لغات اخرى اكثر تطورا
    آسف على الاطالة وشكرا جزيلا لك

    1. مرحباً بك أخي سمير،
      قبل البدء أنصحك بالإطلاع على تدوينة كيف تختار لغة برمجة تخدمك مثل مارك زوكربيرج وتدوينة كيف تختار لغة برمجة تخدمك مثل مارك زوكربيرج، فوفقاً لأسئلتك أعتقد أن هاتين التدوينتين ستتفيدانك كثيراً وتجيبان تحديداً على سؤاليك الثالث والرابع إلى حد ما.
      المهم في تعلم البرمجة أن تبدأ، تستطيع البدء بتعلم لغة ما ثم التركيز على المفاهيم أو العكس. هي رحلةُ تعلُّم وهما منهجيتان لا أختلفُ مع أي منهما. أما اللغةُ الإنجليزية فقد تطرقنا لها في هذه التدوينة في القسم التاسع من هذه التدوينة.
      لمعرفة لغات البرمجة الأكثر شيوعاً ابحث عنها في مؤشر تيوب، في وقتٍ ما كانت الجافا تتصدر، ستجد رابط المؤشر في التدوينة السابقة.

      أتمنى لك التوفيق.

  92. شكرا جدا جزاك الله خير..طرح لطيف ومنسق….معلش حابة اعرف ما الفرق بين مجال الشبكات والبرمجه..اعرف ان الفرق كبير..من تدوينتك عرفت عن البرمجه…لكن اريد ان اعرف عن الشبكات ايضا…مذا نتعلم في الشبكات..ومافرص عملها…..ارجو ان تساعدني حقيقة انا تخرجت هندسة مدنية ولكن وجدت اني لا اميل لها ومفكرة انزل برمطه او شبكات في معهد ابتيك….اتمنى ان تشير علي وتساعدني

  93. شكرا جزيل الشكر
    بعد ازنك كنت عاوز اعرف انا ممكن اخد كورسات اية عشان اكون كويس فى مجال نظم المعلومات و ما هى طبيعة العمل بعد التخرج واية الاماكن اللى انا ممكن اشتغل فيهة وهل مجالات العمل بتكون متوفره ولا لا

  94. اخي العزيز
    انا مدرس لغة انجليزية وعمري ٢٩ سنة
    حقيقة انا لا اجد نفسي في التدريس
    لذلك اتمني ان اتحول الي مجال الحاسب لاني كنت متميزا وبارعا فيه جدا عن اقراني

    ينصحني اخي بمجال الشبكات واخذ دوة سيسكو
    ولكني اكتشفت من مدونتك اني اميل للبرمجة

    السؤال اخي العزيز الان هل لي فرصة بعد هذا العمر والسن ان اتعلم والتحق بمجال الحاسب واصحح مساري المهني ام انه قد فات الاوان؟

    وهل لو مشيت في هذا الطريق هل سأجد عملا حاسوبيا مناسبا غير عملي الحالي كمدرس؟

    وبماذا تنصحني كي اصبح مبرمجما تتوافر لديه فرص العمل؟ وما الدورات التي تنقصني والخبرات التي يجب ان ألم بها حتي يقتنع بي رب العمل؟
    وكم من الوقت او الشهور يلزمني خصوصا وانا أريد أن أعمل بمجال الحاسب وأدرس وأتعلم في نفس الوقت؟ لأن العمر لم يبق به ما يضيع
    ارجوك رد علي استفساراتي بالتفصيل لأن حياتي علي مفترق طريق

    شاكر لك جدا اخي وتحياتي من مصر

    1. مرحباً أخي محمد،

      تعلّم البرمجة فقط ليس بالأمر العسير، والبدء بإنتاج البرامج عادة لا يحتاجُ إلى وقت طويل (سنوات مثلاً).
      ربما تكون تستبقُ بعضاً من الأحداث، ما الدوارت التي تنقصك وأنت لم تبدأ بعد ؟!! ?

      يجب أن تبدأ الطريق خطوة خطوة، والخطوة الأولى هي اختيار لغة البرمجة المناسبة لأهدافك. بالإضافة إلى قراءة هذه التدوينة بتأني أنصحك بالإطلاع على تدوينة إختيار لغة البرمجة و تدوينة تعلم لغات البرمجة المتعددة.

    1. يا اللهي…
      لقد ظللت تأهاً وانا ابحث في الانترنت عن مدلول كلمة برمجه وما تحمله من معنى ووظيفه،إلى أن وجدت هذه المدونه إلتي تستحق أن تصل لكل طالب برمجه.
      احمد الله كثيراً لاني وجدت هذا الموقع،،
      فأنا لازلت في خطواتي الاولى نحو البرمجه،والغني عن الذكر كم اني محتاج لدليل في هذا التخصص…

      شكراً جزيلاً.

  95. شكرا افادني كثيرا . ماذا لو قلت لك عندي موهبة في مصمم ومبرمج وانطبق علي الصفات كلها ولدي هدف ورغبة وعندي فضول اتعلمهم اكثر , انا اقولك راح استمر حتي لو كان طريق صعب وصعب وصعب

  96. السلام عليكم

    شكرا لك علي ابداعك الانيق باظهار امثله سودانيه تدعم طموحاتنا …

    اتمني اضافه لمسات جميله اخري لباقي الموضوعات فقد اعجبني هذا التصوير الفذ .

  97. منذ صغري احب البرمجه والتكنولوجيا والان انا طالبة بمجال علوم الحاسب ولكن للاسف لم اتعلم لغات البرمجه جيدا وكان اغلب تعلم المواد نظري!!
    نحفظ مقالات مطوله بدون تطبيقها بحجة ان حواسب المعامل لم تكن تحتوي على البرامج وايضا 80% من الدرجات كانت للجزء النظري ايضا
    مع قلة خبرة الاساتذه او عدم قدرتهم على ايصال المعلومات , والان انا في سنتي الخامسه ومعدلي منخفض ولم اتخرج بعد
    بصراحه انا لا اهتم كثيرا لامر الشهادة بقدر اهتمامي بما اريد تعلمه
    فكرت اني يجب ان اتعلمها تلقائيا وكان التكاسل والتسويف طاغيا مع قلة وجود مصادر تعلم جيده وكنت ارغب بشده تعلمها ولكن لم يكن لي هدف
    كل الشكر لك استاذ مصطفى
    بعد مقالتك هذه اتضحت لي الكثير من الاشياء وقل التشوش واصبحت اعرف ما الذي يجب تعلمه ومن اين ابدأ

    واعتذر عن الاطاله واشكرك مرة اخرى

    1. أهلاً ومرحباً بك دوماً، الجميلُ في علوم الحاسب أن موارد تعلّمها متوفرةٌ كثيراً، فحاسبٌ وإتصالٌ بالإنترنت وشخصٌ راغبٌ بالتعلم يكفي – مع كوبِ قهوة ☕ أحياناً. ولكن يجبُ اختيار المادة المناسبة للتعلم فعلاً، فطباعُ الناسِ تختلف بين محبّ للتعلم عبر القراءة أو بالشرح المباشر أو بالفيديو وغيره.

      فيما يختص بالتسويف فهذه مشكلة كبيرة ومنتشرةٌ أيضاً، ربما تجدين المزيد من المعلومات عنها وعن حلها في تدوينة التسويف: إلى من ينهي الأعمال بسرعة في آخر لحظة فقط، هذه نظرة عميقة داخل عقلك.

      وفي حال كانت الدراسةُ الذاتية ليست محفّزةً لك، يفضّل استصحابُ شخصٍ آخر معك في هذه الرحلة بحيث تكونُ بينكم تحديّات ويساعدُ كلٌ منكما الآخر ويحفزه. كما أن الإنضمام إلى الدورات أحياناً يخلقُ نوعاً من الإلتزام المفيد.
      يسعدني تواجدك دوماً في مدونة علوم ومرحباً بك.

  98. انا اسمي المقداد وابلغ من العمر 14 وهذا شيئ غريب ولكن هدفي ان اكون مبرمجا وان انجح في البرمجه لاكون مبرمجا ناجحا ولاحقق حلمي قواه المقال اعجبني ولكن هناك شي لم افهمه وهو لماذا الغه الانجليزيه ليست مهمه

    1. مرحباً بك مقداد. مبرمجُ الغد.

      يبدو أنك تتفق مع هذه العبارة

      تتفق معي أننا الآن و في أيامنا هذه أصبحت اللغة الإنجليزية هي عماد العلوم و اللغة العالمية للتخاطب و التعلم.

      من الجيّد أن تقوّي لغتك الإنجليزية. ولكنها ليست عائقاً في طريق تعلمك للبرمجة (إن إردت ذلك)

      ستجد في مدونة علوم و العديد من المواقع ما يعد المبرمجين باللغة العربية ويستطيع الجميع الإستفادة من هذه المواد باللغة العربية.
      أي أن ما أردتُ قوله أنه لا يجب على من يرغب بتعلم البرمجة أن يتعلم اللغة الإنجليزية أولاً.

  99. السلام عليكم أخي الكريم

    قرأت الكثير عن البرمجة وأريد أن أتعلم لغة ++c
    ولكن لا أعرف من أين أبدا

    1. وعليكم السلام ورحمة الله وبركاته،

      ما هو نوع البرامج الذي تريد التخصص فيه كمصمم برامج؟ برامج سطح مكتب أم مواقع أم تطبيقات جوال؟

      بناءً عليه بالإمكان وصفُ اللغات البرمجية أو الوصفية التي يجب عليك تعلُّمها.

      ستحتاج قطعاً إلى دراسة لغات برمجة حتى تصبح مصمم برامج. وبالتالي فإن العمل لا يقتصر على الفوتوشوب والصور فقط.

  100. السلام عليكم ورحمة الله تعالي وبركاته
    جزاك الله الف خييير علي هذة المدونه الرائعه وحقيقة انا شخصياً استفدته منها جدا جدا … في هذا الوقت بالتحديد عايزه ابدا في تعلم لغة برمجه حتي الاحتراف باذن الله وما كنت عارفه ابدا من ويييين لكن بعد هذا المقال الممتااااز حاسه باني مااشه في الطريق الصاااح باذنه تعالي .
    بارك الله فيك

  101. السلام عليكم أستاذ
    انا الان مبرمج بايثون و عمري 15 سنة
    تعلمت الاساسيات و الان انا اتعلم انشاة واجهات المستخدم الرسومية
    هل تعلم GUIسيفيدني ام أن تطبيقات سطح المكتب انقرض استعمالها
    أرجوا الرد و شكرا

    1. و عليكم السلام ورحمة الله و بركاته أخي رضوان،
      GUI تعني واجهة المستخدم الرسومية، و هي ما يظهر للمستخدم في شاشته بغض النظر عن نوع البرنامج (ويب أو سطح مكتب).
      أما برامج سطح المكتب، فبالتأكيد لم تنقرض و لن تنقرض قريباً، لذلك فتعلمها لا بأس به.
      بالتوفيق

  102. استاذ مصطفى
    كيف حالك
    عندي مشكلة وهي من وين ابداء
    انا اريد ان اتعلم لغات البرمجة الخاصة بتطوير المواقع الاكترونية فقط
    ماهي الغات التي يجب ان اتعلمها وماهي الغة التي يجب ان ادرسها اولا
    لدي خبرة ليست بسيطة في الغة التوصيفية html 5 ولغة ال css
    بحيث اقوم بتحسين وتصميم بعض القوالب فقط
    لاكنني لا اجيد غيرها
    واحتاج ان اتعلم لغات البرمجة الخاصة بتطوير المواقع

    1. مرحباً بك أخي سالم و أتمنى أنك بخير،

      في البدء هناك لغات لا غنى عنها إطلاقاً لمبرمج الويب و هي HTML، CSS، Javascript. تأكد أنك تستطيع التعامل معها، و بامكانك معرفة أساسياتها ثم إتقان أحد بدائل إجادتها.
      بعد ذلك تحتاج إلى تعلم إحدى لغات الخوادم python، php، …إلخ، و هنا لك الخيار.

    1. لا يمكن إجراء تفضيل عام، فما يكون حسناً لدى شخص قد يكون عكس ذلك لدى آخر.

      ذكرتُ في تدوينة عن اختيار التخصص (أنصحك بقرائتها) هذه الخطوات للمساعدة على اختيار التخصص، أعتقد أنها مناسبةٌ لحل مشكلتك

      1.تحديد طباعك و ميولك الشخصية و رغباتك.
      2.معرفة الصفات العامة لمجال علوم الحاسب، هل تتفق مع طباعك و ميولك و رغباتك؟.
      3.معرفة صفات كُل قسم من أقسام علوم الحاسب.
      4.تحديد القسم الذي ترغب بدراسته.
      5.البحث عن الجامعات التي يتوفر بها القسم المحدد.
      6.التقديم لهذه الجامعات.