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