هل بتستخدم كل امكانيات الأدوات اللي معاك ؟

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

طبعا كلنا (المبرمجين) أيا كان مجال الـ Development بتاعنا بنستخدم Tools يعني IDEs و Third-Party Components و UI Components وكمان SDKs ومحدش يقدر يقول انه مش بيستخدمها طالما شغال فبرامج تجارية يعني محدش يقولي أنا بعمل Interactive Web Site وبيكتب في الـ NotePad والا يبقي كلام فاضي , وكلنا (وأنا منكم) بنسرع بأقصي سرعة علشان نجيب نسخه من VS 2005 مثلا (للي بيستخدموه) ونسيب VS 2003 رغم انه شغال كويس وزي الفل وآدي VS 2008 جاي وهنسيب VS 2005 رغم اني متأكد ان محدش بيستخدم 50%  من امكانياته الحقيقه , أنا مش ضد ان الواحد يستخدم أدوات أحدث أو تحسن من شكل الـ Product بتاعه بس أنا أكاد اجزم ان (الأغلبية العظمي) بتدور علي السهولة علي حساب أي شئ تاني يعني ان شاء الله  أشباه المبرمجين اللي هيبتدوا يتعلموا برمجة علي VS 2008 اللي جاي لو جربوا يشتغلوا علي VS 2005 أكيد هيلوصوا ويتوهوا رغم ان VS 2005 خلي الدنيا لذيذه خالص وايزي يا عزيزي فما بالك لو جرب واحد منهم انه يشتغل علي VS 2002 or 2003 رغم انهم كلهم دوت نت بس تقول ايه كسل واستسهال بقي محدش بيعرف امكانيات الـ Tools اللي معاه الا لما يكون عايز يعمل حاجه بس مش في الـ Front side يعني تكون متدارية شوية وعايزه لف ودوران فبيضطر يعمل حاجه من اتنين يا يدور علي Component أو يدور ازاي يكتب كود يعمل القصه دي وده الطريق الأصعب بس الأجمل والألذ والأكثر احترافية وده طبعا غير موجود عند مبرمجينا العرب الأفذاذ العباقرة كله عايز يقضي مصلحة واللي مساعد علي كده ان مفيش تكلفة يعني كله بكراكه يا ريس واقلب والضحية الأولي هي سمعة البرمجيات العربية والضحية التانية هي الـ User والباشا المبرمج أو شركة البرمجة يعيني بتتعب وتقبض , طبعا مش كل الحالات هينفع انك تبحث وتفحت لحد ما تعمل اللي انت عايزه بنفسك لأن فيه كذا عامل بيتحكم في الموضوع ده مثلا زي ميعاد تسليم المشروع فلو انت مزنوق ممكن تدور علي Component ينجز لك الشغل لو هياخد وقت كبير أو ممكن تكون عايز تطور الـ UI بتاعت البرنامج بتاعك فبتدور علي أدوات تحسن من الـ UI بحيث متضيعش وقتك في الحكاية دي وتركز علي الـ Engine بتاع البرنامج (طبعا محدش بيركز فيه أبدا ده ان كان فيه حد بيعمله أساسا) ,

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

علي فكرة أنا كتبت الـ Post بسبب اني كنت عايز اعمل حاجه معينه ومرضيتش أستخدم أداة خارجية وفضلت وراها بالبحث والتجربة لحد ما عملتها بالأدوات العادية صحيح هيا أخدت وقت وجهد مش هينين لكن أنا سعيد جدا جدا اني أنا اللي عملتها :)

9 Responses

  1. أنا معاك في 50% بس من كلامك يا حازم
    لكن مش معاك في حاجة هافصلها في نقطتين
    - الأولى إن مش لازم اللي بيتعلم البرمجة جديد إنه يدرس كل الإصدارات القديمة من المنتج اللي هايشتغل عليه
    و إلا كان لازم تكون دارس فيجوال بيسك 6 و كويك بيسك و الناس دي
    أنا أول ما إبتديت إبتديت مع الفي بي 5 و مش مطلوب مني إني أدرس 4 لكن مطلوب مني إني أعرف 6
    لأن كل إصدار جديد بيحتوي على اللي قبله بإضافة للجديد بتاعه
    دي حاجة , الحاجة التانية أنا مايهمنيش إن المبرمج يعرف يكتب كود قد ما بيهمني إن المبرمج يعرف ينتج نظام
    يعني إيه الكلام ده
    يعني يفهم أساسيات البرمجة الصح
    الكود ده آخر مرحلة
    و دي أصلا مرحلة متغيرة بتغير اللغات و حتى بتغير الإصدارات
    لكن المهم إنه يفهم أساسيات البرمجة الصح
    يفهم يعني إيه ألجوريثم
    يفهم يعني إيه داتا ستركتشر
    يفهم أوبجكت أورينتد
    و غيره كتيييييييييييييييييييييييييييييييييير
    ده المهم علشان المخلوق ده يبقى مبرمج بجد مش مطلصقاتي

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

  3. بالنسبه للجزء بتاع ان المبرمج مش مفروض يكون عارف الاصدارات اللي قبله فدي أنا فكرت فيها بس بعد ما كتبت البلوج وكسلت اكتبها
    :D

    أما ان كان مش فاهم
    Concepts
    فبرضه مش هيعرف يكتب كود برضه علشان كده كتابة الكود هي المقياس اللي قدام عيني ان كان فاهم ولا لأ
    :D

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

  4. أنت بتتكلم عن أمكانيات الـ
    IDE
    لناس مش عارفين أساسا لمحة عن أمكانيات الـ
    System
    اللى شغالين عليه

    و بعدين الـ
    Component Mania
    مش هتنتهى عند العرب الا مثلا مع الـ
    VS 2500
    مثلا

    ده أنا شوفت واحد عايز
    Component
    يعمل بيه
    Browse
    لملفات كذا و آخر لملفات كذا و ثالث لملف كذا , يعنى محدش عارف هو بيعمل ايه أساسا

    كله ماشى بنظام أديها قص و لصق و كمل نوم.

    عودة لسؤالك : لا , لا أحد يستخدم أمكانات البيئة المتاحة له بالكامل مهما كانت بسيطة.

    بالمناسبة بعض المحترفين يعشقون النوتباد
    !

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

  6. الصراحه أنا مشفتش حد بيكتب كود حلو وضايع في الأساسيات بس ان كنت انت شفت فخلاص كأني شفت
    :D

  7. ردا علي تعليقك يا دكتور
    أنا لقيت في منتدي الدلفي في منتدي الفريق العربي عضو بيسأل علي كومبوننت لعمل
    Disable
    للـ
    TaskManager
    اللي بكل بساطه هي قيمة في الريجستري

    ومفيش رد أبلغ من كده أظن
    :D
    بالنسبه للمحترفين والنوت باد فمش ممكن تعمل برنامج تجاري بالنوت باد الا اذا كان صغير ومدة المشروع سنة علي الأقل :D

  8. على فكرة
    الستايل ده جميل بس كبر الخط و ظبط الكومبوننتس علشان مشفته ;)

  9. المرجو التدوين بالفصحى
    جازاك الله خيرا

Leave a Reply