منشورات بواسطة "وصفات علاجية للمبرمجين"

 


في عالم البرمجة يقبع المبرمج تحت كثير من التساؤلات التي تجول في ذهنه حول أقرانه من المبرمجين وخصوصاً الموجودين في شركات كبيرة أمثال  Google, Apple , Microsoft

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

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

الآن لو قارنتك معه من حيث الإمكانيات الجسدية فلديك مالديه يدين ورجلين ورأس وعقل وكل شئ والحمد لله. 

 لو أتينا للمقارنة البرمجية فإنك أنت وهو عندما تريدان بناء برنامج يحصل التالي : 

 تأتي لك وله الفكرة .. جميل

 ثم بعدها انت تحلل البرنامج وهو يحلل البرنامج 

ثم بعدها كلاكما يحدد اللغة المناسبة للمشروع .. جميل

 ثم بعد ذلك تأتي مرحلة بناء البرنامج وهنا يكمن الفرق الجوهري بينك وبينه فالذي يحدث كالتالي : 

وهو أن المبرمج في شركة جوجل يسأل السؤال التالي : ماهي الأشياء التي أجهلها في هذا المشروع والتي ستعيقني عن بناء البرنامج ؟  بعد ذلك يحدد قائمة بالمشاكل أو نقاط الضعف والأمور التي يجهلها ثم يحدد وقت معين لدراسة تلك الأشياءوتسمى فترة الدراسة بـ   Learning Period  

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

 أولاً تعلم لغة بايثون

 ثانياً معرفة المكتبات البرمجية التي تخص موضوع الرسومات في بايثون

 فهم آلية الآحداث في بايثون 

التعرف على مكتبات GUI في بايثون …

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


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



 


أعاني من الكسل .. فما الحل ؟


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

 باللسان .. وأما إذا نظرنا من الجانب النفسي للمبرمج فالمبرمج في الغالب يكون شخص صاحب طموح كبير ولكنه كسول في غالب

 الأحيان فهو يريد ويريد ولكن لا يريد أن يعمل .. فكيف نحل هذه المشكلة ؟ أنا سأتكلم من منظوري الشخصي هنا فربما هناك من

 استطاع حل المشكلة بطريقة أخرى فأنا اقوم بالتالي :


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

 أمام الكمبيوتر بأقل تقدير مدة ساعتين وتكتب شفرات منوعة وتخطئ وتصيب وهكذا .. أي أنك تفكر في مقدار العناء الذي سيصيبك

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

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

 من خلال بنائه على المال .. لذا فإن ترتيب الأمور يكون كالتالي : فكرة .. عمل .. هدف


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

 تفكر وتتخيل الجزء الأوسط وهو العمل !! أنا أخالفك هنا في نقطة وهي أني أفكر في الهدف .. كيف ذلك ؟


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

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

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


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

شاهد ايضا  : كلام مبرمجين  - معنى API


 


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

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

 تقوم بالتقليد وهذا أصلح.

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

هل تقصد انه يجب علينا إلغاء التقليد للأبد ؟

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

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

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


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

 وقته بالكامل في مواضيع البرمجه !؟


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

 بشكل صحيح أي بكلام أخر يجب عليك القراءه (ولا حظ كلمة يجب) في جميع التخصصات مثل الدين والأدب والرياضيات والفيزياء

 والروايات وغيرها ولا تقل لي أن ليس لهذه العلوم علاقه بالبرمجه!!

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

 هنا أي جميع العلوم المختلفه و أنا أدعوا هنا إلى أن يثقف المبرمج نفسه في مختلف العلوم على أن تكون الحصه الاكبر منها في البرمجه

 وكتقسيم إفتراضي يمكنك وضع 50% للبرمجه بشكل خاص و25% للكمبيوتر بشكل عام أي تقرا في ما يخص الكمبيوتروالتقنيه

 وغيرها و25% معارف عامه لكي تساعدك على تسهيل امورك البرمجيه لأن الجهل بالثقافه العامه هو إحدى نقاط الضعف لدى

 المبرمج فربما تقع يوم في مشكله برمجيه ويتم حلها بسهوله بسبب معرفتك بمعلومه معينه من معلومات الثقافه العامه التى كنت قد

 قرأتها



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


لإزالة اللبس دعنا نكون صريحين ونعود لموضوع التفكير ودعني الأن أسألك سؤالا ً.. كيف تفكر وأنت لا تملك المعرفه الكافيه

 بالموضوع الذي تفكر فيه ؟


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


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

 التي تعمل على الفحم فالقطار لن يسير بدونه والسياره لن تسير بدون وقود.


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

 


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

 بفضل الله أن أزيد إنتاجيتي ولذلك دعنا نبدأ على بركة الله :


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

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

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

 نستطيع التحكم فيها وهذا كلام جميل .


الآن نأتي لشئ أخر ومن وجهة نظر أخرى .. ودعني أقول لك افرض انك تقف في محطة قطار وخلف القطار تحديداً وامسكت القطار

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

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

 إليه إذا نصل إلى الآن إلى أن الأمور تنقسم إلى قسمين من حيث الإدارة :


أشياء قابلة للإدارة


أشياء غير قابلة للإدارة


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

 الأشياء القابلة للإدارة أو الغير قابلة للإدارة ؟


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

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

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

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

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

 أنجزت مجموعة أشياء دون النظر لمتى وكيف فعلتها .. والآن بعد ما عرفنا هذه المفاهيم نريد أن نقوم بحل المشكلة والحل كالتالي:


أمس قد ذهب وغداً في علم الغيب وأنت لاتملك سوى 24 ساعة فيها تفكر وفيها تخطط وفيها تعمل وفيها تنجز وبنهاية اليوم يتحدد

 نجاحك من فشلك .


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

 والسلام .. أحب الأعمال إلى الله أدومها وإن قل .. والذي بني عليه المبدأ الياباني كايزن .. تطوير بسيط ولكن بشكل مستمر .. أي كل

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

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

 مهام بسيطة جداً والنتيجة ستكون بعد اسبوع افضل وبعد شهر أفضل أي بعد شهر ستكون كتبت 60 صفحة وقرأت 30 سورة وهذا

 أفضل من التسويف الذي ضاع عمرك فيه ..


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

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

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

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


وسأختم بمثال على قائمة بسيطة بالمهام كالتالي :


قراءة سورة من القرآن


قراءة مقال انجليزي قصير وحفظ كلمتين جديدة من المقال


المشي لمدة نصف ساعة


الذهاب للسوق لشراء المستلزمات


كتابة صفحة على الوورد في موضوع معين


كتابة ملف برمجي واحد ومراجعته ضمن البرنامج الذي اعمل عليه


التعرف على موقع جديد اليوم على الإنترنت


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


30 سورة من القرآن


حفظ 60 كلمة انجليزية


تكون قد مشيت خلال الشهر 15 ساعة


بالنسبة للمستلزمات فإن المنزل مكتفي بكل شئ لأنك اشتريت جميع المتطلبات في ايام متفرقة


كتبت 30 صفحة على الوورد


كتبت 30 ملف برمجي


تعرفت على 30 موقع 


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

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


والآن لم يأخذ مني هذا المقال سوى 10 دقائق لكتابته إلى 15 دقيقة وعندها فإن هذا الوقت قليل ولكن انظر إلى المستند هذا والذي يعتبر

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


ها أنا الآن أخبرتك بأسلوبي الذي استخدمه .. وهذا مالدي الآن فإن أخطأت فمن نفسي والشيطان وإن أصبت فمن الله عز وجل .

 لا تنسى مشاركة موضوع لتعم الفائدة



 


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

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

 موضوع الشهادات وسنوضحه في السطور التالية


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

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


دعنا نقول أنك حصلت على شهادة دولية فعلاً .. فالسؤال الذي يطرح نفسه هو : وماذا بعد ؟ هنا ستجد المبرمج يقبع حائراً فهو حصل

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

 الشهادة ؟ الشهادة ببساطة هي من يأتي إليك ولست أنت من يذهب إليها ! وكيف ذلك ؟ الشهادة تكون شئ يشهد على أنك متقن لما كتب

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


بكلام أخر يجب عليك أن تؤهل نفسك لنفسك وليس للشهادة وبعد ذلك تتقدم للشهادة وستجد أن الإختبار أسهل مما توقعته وذلك لأنك فعلاً مؤهل وتملك قدرات عالية للحصول عليها وهنا مربط الفرس .. لذلك لا تتعب نفسك في السعي وراء الشهادات وإنما قرر في وقت معين فيما إذا كنت مؤهلاً في هذه الفترة أم لا فالشهادة تختبرك أنت ياغالي ولو حصلت عليها وأنت غير مؤهل فإن الشهادة والتي تحمل شيئاً غير صحيح .. ستفضحك في يومٍ من الأيام لتجعلك ممن يقول : ياليتني لم أحصل عليها !

 لا تنسى مشاركة موضوع لتعم الفائدة


 



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

هل لديك هدف محدد في حياتك ؟


 

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

الجافاسكريبت غير مفعلالمرجو تفعيل الجافاسكريبت لإضهار الويدجات.