تطوير التطبيقات

الوصف

كيفة تطوير و كتابة التطبيقات

عشرة أسباب تجعل من بايثون أداة رائعة للأبحاث وأسباب أخرى تُقلل من روعتها

نشره Fahad في

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

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

للتوضيح، أنا لا أروّج لاستخدام بايثون لوحدها كبيئة مثالية في البرمجة العلمية ، أنا أروج للغة بايثون مع ثلة من المكتبات المستقلة الناضجة مفتوحة المصدر ، و بالتحديد Numpy/Scipy للعمليات العددية ، و Cython  للتحسينات في أدنى مستوى ، و IPython  للعمل التفاعلي ، و MatPlotLib للرسومات ، لاحقاً سأشرح ما سبق سرده بالإضافة إلى مكتبات أخرى بتفصيل أكثر، حيث أنني ذكرتهم الآن حتى أتحدث عنهم لاحقا ضمن هذه المقالة.

صدور أول نسخة مفتوحة المصدر من LiveCode

نشره Fahad في

بعد ستة أسابيع من نجاح حملتها في موقع kickstarter، أطلقت شركة RunRev نسخة مفتوحة المصدر من بيئتها التطويرية LiveCode. إذا لم تكن تعرف ما هي LiveCode فهي بيئة تطويرية مبنية على فكرة برنامج أطلقته أبل في عام 1987 ويدعى HyperCard ولقي رواجا وشهرة كبيرة بين المستخدمين، ولكن شركة أبل أوقفته في النهاية. بيئة LiveCode تسمح بتطوير تطبيقات لحواسيب العادية لمختلف الأنظمة ويندوز وماك و يونكس و أنظمة التشغيل المحمولة من مثل أندرويد و iOS، وتستخدم اللغة الإنجليزية كلغة تطويرية مستوحية هذه الفكرة من HyperCard.

المصدر البرمجي لفوتوشوب 1

نشره عبدالرحيم الفاخوري في

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

البدء بمشروع مفتوح المصدر، نيكولاس سي. زاكاس

نشره زايد في

مع زخم عام ٢٠١١، قمت برفقة نيكول سوليفان باستحداث أداة  CSS Lint والتي كانت عبارة عن أول أداة لـCSS تعنى بجودة الكود البرمجي. لقد قضينا الأسبوعين السابقين في البرمجة مثل المجانين في محاولة منا من كتابة تطبيق يكون بالدرجة الأولى مفيدا للمستخدم النهائي وفي نفس الوقت يكون سهل التعديل والتغيير(مفتوح المصدر). الجميل في الأمر بأنه لم يكن لأي منا أي تجربة في إطلاق مشروع مفتوح المصدر (open-source) مثل هذا من قبل ، مما ساعدنا في تعلم الكثير من خلال هذه التجربة.

مرحلة الدراسة الجامعية..

نشره زائر (لم يتم التحقق) في

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

 

ملاحظة: (بدأت بكتابة أجزاء من هذه المقالة كردود لعدة أسئلة وردت إلي من بعض الطلبة الجامعيين..)

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

من قواعد التنقيح: ملفٌ كاملٌ لكل مشروع

نشره م. وائل حسن -أ… في

قاعدةٌ اخري من قواعد التنقيح debugging العملية، و لكنها هذا اليوم بسيطةٌ جداً و قد يجد الواحد منكم نفسه يراعيها بالفعل أو لا يحتاج إليها من الأصل.
الحكاية وما فيها أنه حينما تعمل علي مشروعٍ برمجيٍ ضخمٍ (مثلاً مُفسِّرٍ للغة برمجةٍ متقدمة) فيجب عليك أن تقوم بكتابة العلل التي تقابلها أثناء اختباراتك للبرنامج باستمرار و بأسلوبٍ واضحٍ مستفيض؛ حتي يمكنك الرجوع لها بسهولةٍِ فيما بعد لترتيب أولويات عملك في المراحل القادمة، و لتغطية جوانب النقص و حل المشاكل التي تظهر في عمل البرنامج.
هذا أمرٌ طبعيٌ، أليس كذلك ؟

الإطلاق الرسمي لمشروع (البرمجة بإبداع)

نشره م. وائل حسن -أ… في

بفضل الله تعالي أولاً و آخراً يسعدني أن أُعلن الإطلاق الرسمي لمشروع (البرمجة بإبداع) و الإصدارة الأولي من لغة البرمجة العربية الاحترافية إبداع بعد عامين كاملين من العمل بصمتٍ قدر الإمكان، و كان عامٌ كاملٌ منهما مُفالشعار الرسمي للغة إبداعرَّغاً تماماً للعمل علي المشروع بكل قوة،
و في المقال التالي تقديمٌ لفكرة المشروع باستفاضة:

لا تحتفل مبكراً

نشره م. وائل حسن -أ… في
قاعدةٌ جديدةٌ من قواعد التنقيح debugging التي استفدتُها من خلال الواقع العملي هي ما يمكن تسميته بقاعدة (لا تحتفل مبكراً) أو (كن مُرتاباً)، بمعني أنه يجب ألا تفرح بإصلاح أي علةٍ bug من العلل قبل أن تتأ

نظرية (المُبرمِج المُحتال) !

نشره م. وائل حسن -أ… في

المُبرمِجون المُخضرمون يعلمون أن للكسل فوائداً عديدةً في المجال البرمجي، لدرجة أنه نُسِبَ لـ(بِل قيتس bill gates) أنه قال أنه حينما يُريد أن يُوكِل مهمةً ما إلي أحدٍ فإنه يُوكِلُها إلي شخصٍ كسولٍ لأنه سيختار أسهل الطرق لفعلها !
و قديماً شاهدتُ محاضرةً عن فوائد الكسل عند المُبرمِجين، حيث أنه يدفعهم لكتابةِ كودٍ سهل غير مُجهِدٍ لهم و عملِ واجهة برمجة API سهلة و آمنة، و غيرها من الأمور الأخري.
و كذا فقد وَصفَ لينوس تورفالدز linus torvalds نفسَه بأنه يُحِب أن يستريح و يشرب مشروبه المُفضل بينما ينهمك الآخرون في العمل (بعد أن يقوم باجتذابهم للعمل معه بمهارةٍ حقيقية و أساليب تستحق التدريس).

حسنٌ: اليوم أريد أن أجعلكم تُلقون بهذه النظرية وراء ظهوركم و تنتبهوا لنظريةٍ أهم و أجمل منها و أكثر تفسيراً لما يجب أن يفعله المُبرمِجون كلهم بدون استثناء،
أيها السادة إنها نظرية (المُبرمِج المُحتال)