الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اتجه نحو التقليل

بدأه hasan_aljudy في 19 يوليو 2010 · 9 رد · 2,725 مشاهدة · في المقالات العلمية و التقنية
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

المصدر الاصلي: http://gettingreal.37signals.com/ch02_Build_Less.php

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

اتجه نحو التقليل

كن اصغر من المنافسين

الفكرة الشائعة انك لتتفوق على المنافسين يجب ان تقوم باكثر مما يقومون به: اذا كان برنامجهم به عشر خصائص، يجب ان يكون لديك عشرين. اذا كان عندهم عشرين مبرمج، يجب ان يكون عندك ثلاثين .. اذا كان عندهم اربعين كذا .. يجب ان يكون عندك خمسين.

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

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

سنغطي ماللذي يعنيه هذا في ثنايا هذا الكتاب، و لكن مبدئيا هذا يعني:

* تقليل الخصائص و الخيارات

* تقليل الموظفين و البيرقراطية و الاجتماعات

* تقليل الوعود

تم تعديل هذه المشاركة بواسطة hasan_aljudy في 19 يوليو 2010 في 08:37

4
#2

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

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#3
طارق إبراهيم كتب:

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

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

على كل حال ..

تكملة الترجمة ..

النص الاصلي: http://gettingreal.37signals.com/ch02_Whats_Your_Problem.php

ما هي مشاكلك؟

اصنع برامج لنفسك

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

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

(ملاحظة: basecamp هو منتج من 37signals (مؤلفي الكتاب))

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

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

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

تم تعديل هذه المشاركة بواسطة hasan_aljudy في 19 يوليو 2010 في 09:45

3
#4

تكملة .. قفزت هذه المرة الى الفصل التالي مباشرة

النسخة الاصلية: http://gettingreal.37signals.com/ch03_Less_Mass.php

قلل حجمك

كلما كنت انحف، كان التغيير و التحرك اسهل.

كلما كبر حجم الشيء، احتاج طاقة اكبر لتحريكه، هذه القاعدة ليست صحيحة فقط في الفيزياء، بل في الشركات ايضا.

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

• عقود طويلة الامد

• طاقم وظيفي زائد عن اللزوم

• قرارات نهائية طويلة الامد

• اجتماعات لمناقشة الاجتماعات

• سياسات ادارية عقيمة

• برامج و معايير مغلقة و محتكرة

• خطط طويلة الامد

• ثقافة تعامل فاسدة داخل الشركة

و على الجانب الاخر، يمكن تقليل الحجم عن طريق:

• التفكير الفوري

• اعضاء فريق نشطين

• تقبل القيود (الوقت، المال، الخ)

• التقليل من الخصائص و الكود

• فرق صغيرة الحجم

• البساطة

• المصادر المفتوحة و المعايير المفتوحة

• ثقافة منفتحة داخل الشركة تسهل الاعتراف بالخطأ

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

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

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

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

------

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

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

اظن انني ساكتفي بهذا القدر، و من اراد المزيد فعليه بقرائة الكتاب، فهو رائع بحق. :cool:

تم تعديل هذه المشاركة بواسطة hasan_aljudy في 19 يوليو 2010 في 10:43

3
#5

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

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

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

#6
اقتباس
ملاحظة شخصية مني: الشركة اللتي اعمل فيها حاليا هي من النوع الثقيل، مع ان حجم الشركة ليس كبيرا جدا و لكن المنتج كبير و مليء (محشو) بامور عجيبة غريبة، و الشركة لديها سياسات عقيمة للغاية.

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

وملحوظه مني أيضا.....

ال JDK1.5 وصلت لنهاية فترة حياتها (EOL) في نوفمبر 2009, قبلها بعدة أشهر كنا قد بدأنا الإنتقال من JDK1.4 ل JDK1.5 ,,,, و الأن يوجد 1.6 و 1.7 و لا أعتقد أننا سننتقل لأي منها قبل سنوات من الأن.... أي بعدما تشارف على إنتهاء فترة حياة كل منها!

حقيقة,,, أنا أرى أن العمل في المنتجات الصغيره أفضل ألف مره من العمل مع المنتجات الكبيرة المتسرطنه, بعض النظر عن حجم الشركه..

#8

الهندسة تعنى اتقان العمل

وبصرف النظر عن حجم العمل يمكن من خلال التصميم الهندسى السليم Architecture

ومن خلال الادارة السليمة والتنفيذ السليم

اتقان العمل

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

اى لابد من اتفاق الاثنين معا (الموارد المتوفرة + العمل المطلوب انجازه)

فاذا كانت الموارد بسيطة فاختيار العمل المناسب مهم

لانه كلما زارد العمل عن الموارد المتاحة تعرضنا لمشكلة من مشكلتين

الاولى : عدم القدرة على انجاز العمل نهايئا لقلة الموارد

الثانية : امكانية انجاز العمل ولكن بعد سنوات وسنوات

وفى الحالة الاولى الفشل شىء مؤكد

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

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

اما اذا كان الوقت المحدد لايسمح كحاجة السوق للمنتج فى وقت مبكر او المؤسسة الى تحقيق ارباح سريعة لكى تستمر

فهنا لايمكن انجاز العمل الضخم

ما اود قوله ان اختيار حجم العمل يخضع لمعيار اساسى من البداية

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

لكن ان تجعل الاعمال الصغيرة هى الحل - او الاعمال الكبيرة هى الحل بشكل عام فهذا لاستند على اساس علمى

بل الامر نسبى تماما - يعود الى الموارد المتاحة ومايمكن انجازه من خلالها خلال فترة معينة

والله الموفق

#9

السلام عليكم

شكرا اخي على ذكر هذا الموضوع المهم

منذ أيام فقط قرأت هذا الكتاب ، وهو فعلا مجموعة رائعة من الخبرات العملية 'المجانية' و الأفكار المفيدة

هذه نسخة مترجمة للعربية

شكرا للمترجمين.

تم تعديل هذه المشاركة بواسطة 3ml في 1 أغسطس 2010 في 16:05

بسم الله الذي لا يضر مع اسمه شيء في الأرض و لا في السماء و هو السميع العليم

117tpo4.png
#10

أخ PWCT Maker

واضح أن الكتاب لا يتكلم عن عملية الإنتاج الرئيسية

وإنما التطوير والاستمرارية

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

مواضيع مشابهة