:: كل المقالات ::

Tue, 13 Dec 2016

قراءة في Masterminds Of Programming

بسم الله الرحمن الرحيم
الكتاب الذي تنشره دار اوريلي و تاريخ اول طبعة هو 2009 يتمتع بـ 496 صفحة يبدو واعدا من عنوانه لكن مع الاسف كلما توغل القارئ في الكتاب خابت آماله. قبل ان نستطرد في الكلام علينا ان نعرف ماذا يقدم الكتاب ؟
الكتاب بكل بساطة مجموعة من المقابلات و الحوارات فكل مقابلة هي مع مصمم و مبرمج لغة ما. و هذه قائمة بالشخصيات و اللغات البرمجية المتوفرة بالكتاب:
· Adin D. Falkoff: APL
· Thomas E. Kurtz: BASIC
· Charles H. Moore: FORTH
· Robin Milner: ML
· Donald D. Chamberlin: SQL
· Alfred Aho, Peter Weinberger, and Brian Kernighan: AWK
· Charles Geschke and John Warnock: PostScript
· Bjarne Stroustrup: C++
· Bertrand Meyer: Eiffel
· Brad Cox and Tom Love: Objective-C
· Larry Wall: Perl
· Simon Peyton Jones, Paul Hudak, Philip Wadler, and John Hughes: Haskell
· Guido van Rossum: Python
· Luiz Henrique de Figueiredo and Roberto Ierusalimschy: Lua
· James Gosling: Java
· Grady Booch, Ivar Jacobson, and James Rumbaugh: UML
· Anders Hejlsberg: Delphi inventor and lead developer of C#
الان نرى اسماء معروفة و مشهورة و لغات برجمية محبوبة ! و لكن مع الاسف الكتاب كان خيبة امل كبيرة لي. اولا السعر فالكتاب الورقي بـ 26 دولار و الكندل بـ 14 دولار ، قررت ان اختار الكندل لكي اتفادى رسوم الشحن و مدة الانتظار . لن اتكلم عن تجربة الكندل فهي قراءة رائعة لا شك في ذلك و ان كنت افتقد الاحساس بملمس الكتاب و اجراء طقوس ما قبل القراءة ! فأنا لا اقرا الكتاب الا بعد ان اشمه و اتصفحه بسرعة قصوى ، لكن في الكندل لا يوجد شيء كهذا .
على كل حال لماذا الكتاب كان خيبة امل لو تجاهلنا السعر؟
النقطة الاولى التي تثير الاشمئزاز هي كثرة الاخطاء الاملائية و كأن الكتاب لم يمر على اي مدقق او محرر، فمن الغريب فعلا و اللغة الانجليزية ليست لغتي الام ان احصي عددا مهولا من الاخطاء الاملائية.
و عندما اشرت الى ان الكتاب لم يخضع لتحرير يبدو اني لم اكن مبالغا فالمقابلات موضوعة هكذا في الكتاب بدون اي تعديل لكي تناسب النشر فهناك الكثير من الكلمات السوقية التي اترفع عنها هنا . و ايضا هناك الكلمات التي لا تصلح للمادة المطبوعة مثلOoh , O’boy , ;) … الخ احيانا كنت احسب انني اقرا حوارا على الماسنجر او بودكاست رخيص!
الشيء المؤسف الاخر هو ان جل الكتاب يتكلم عن تصميم لغات البرمجة و هذا الشيء نادرا ما يقع في فائدتنا كمبرمجين او كمحبي القراءة عن البرمجة لاننا نستخدم اللغات و لا نريد ان ننشئ لغة كي نهتم بتفاصيل التصميم . نعم من الطبيعي ان يكون هناك كلام عن تصميم اللغات لان المتكلمين كلهم مصممين لغات و لكن كان يمكن الاختصار في هذا الجانب و الكلام عن اشياء ملموسة اكثر لنا كعامة القراء.
الغريب انه اذا تركنا الكلام عن تصميم اللغات فغالبا ما سيكون الكلام عن مسائل المزامنة و هي مسائل مملة و ليست في واقعنا الملموس بذلك القدر .
اخيرا الامر المزعج جدا هو ان كل مصمم لغة لا يرتاح نفسيا الا اذا ذكر عيبا في اللغات المنافسة له مثل جافا و سي++ و سي # و كأنه لن يتبين قوة لغته الا اذا استنقص من اللغات الاخرى .
الكلمة الاخيرة اذا كنت مهتما بتصميم لغة برمجية اقرا هذا الكتاب اما اذا كنت جديدا على البرمجة او تحب فقط ان تستخدم لغة البرمجة فهذا الكتاب لا يقدم الكثير. لا انفي طبعا انه هناك نصائح و نقاط جديرة بالتأمل و لكن مع الاسف المحاور لم يركز عليها و لم يسأل الاسئلة التي تعنينا كهواة للبرمجة مثل ما هي الاخطاء التي يقع فيها المبرمجون؟ و كيف نختار لغة البرمجة؟ و كيف نقيم جودتها؟ و ما هي الكتب التي تنصح كل مبرمج ان يقرأها؟ و ما هي اهم الدروس و الخبرات التي تحب ان تقولها …الخ من الاسئلة الممتعة و المفيدة .
دمتم في الرضا ،