الجمعة، 17 أبريل 2015

بداية جديدة


الحقيقة فكرت كتير جدا" فى إنى حابب يكون ليا جانب تانى من حياتى غير حياة الشغل والبيت والمسئولية و إلخ ... ولما دورت على حاجة أعملها لقيت وأنا بأدور المدونة دى وأخر مشاركة ليا فيها كانت بتاريخ 3 يناير 2010 يعنى من أكتر من خمس سنين وكانت وقتها إسمها "مستقبل بدون ويندوز " وكان إهتمامها بالبرامج المجانية "مفتوحة المصدر" ونظام التشغيل الموازى للويندوز "لينكس" وكتبت بعض موضوعات تتعد على الصوابع ووقفت بعدها لظروف كتير...
ولأنى مهندس حاسبات ونظم معلومات فى الأصل فالمرة دى كماااان رجليا خدتنى للكتابة عن الكومبيوتر والبرامج والنسج على نفس المنوال ده (لأن هى دى الحاجة اللى بحبها وبعملها وأنا مبسوط) وقلت لنفسى إنى ممكن أترجم مقالات من مواقع ومدونات أجنبية بتعرض حاجات جميلة جدا" عن اللابتوب والموبايل والتابلت والأجهزة اللى إنتشرت جدا" الأيام دى واللى بقينا محتاجين نعرف الجديد فيها وعنها كل يوم يعنى مثلا"  إيه قصة Core i3,i5,i7 وإزاى أقدر أقيم جهاز الكومبيوتر الخاص بيا أو أختار جهاز لابتوب جديد علشان أشتريه ... وكمان إيه قصة الأندرويد وإزاى أقدر أستخدم كل قدرات موبايلى أو التابلت بتاعى بدون مشاكل ... كمان المدونة هايبقا فيها مجال للأخبار الجديدة فى عالم التكنولوجيا زى شرح مفصل للسامسونج جالاكسى S6 ... إيه هى قدراته ؟ وإيه الجديد فيه ؟ وفيديوهات لإختبارات تمت عليه زى إختبار مقاومته للمياه ومقاومته للكسر ... الحقيقة دى كلها أجزاء هاتكون موجودة وأتمنى إن شاء الله يبقى فيه حاجات تانية كل ما الفرصة تتاح لكده.
فى النهاية أتمنى التواصل لتوضيح أى نقد للموضوع أو الشكل ومتقلقوش أنا بأتقبل النقد جدا" ومستعد تماما" لتقبل فكرة إنى غلط وكمان مستعد إنى أصلح من نفسى ... 
 

الأحد، 3 يناير 2010





السلام عليكم ورحمة الله وبركاته

اليوم انشاء الله هابدأ الدرس ( المقال ) الاول فى تعليم لغة
البايثون , ولكن قبل ما أبدأ انا عاوز انبه على انى مش هاشتغل من كتاب ( Think Python) زى ما قلت المقالة قبل الاخيرة ( على فكرة كتاب رائع جدا") وذلك لظرف سيمنعنى من ذلك وسأبدأ انشاء الله الكتابة من كتاب (Learning Python) وهو كتاب جميل جدا" واتمنى التوفيق من الله عز وجل فى أنى اوفر مرجعا" ولو يسيرا" لتعليم هذه اللغة أنفع به نفسى والناس ويجعله الله فى ميزان حسناتى انشاء الرحمن.

تكلم الكتاب بفصله الاول عن بعض الاسئلة والاجوبة والتى تتعلق باللغة وذلك لاشباع نهم من يريد تعلم هذه اللغة وفهم مزاياها وعيوبها ولماذا سيقوم بتعلمها اصلا" وتفضيلها على كثير من اللغت العريقة جدا" مثل(
C++ , C , Java) , وسأقوم بإتباع نظام قد يبدو غريبا" بعض الشىء وهو أنى سأقوم بالتحدث فى بداية كل مقالة عن البايثون كلغة مستعينا" بالفصل الاول من الكتاب حتى يتسنى لى الحديث بشكل اكبر عن مميزاتها وقدراتها وبقية الدرس سيكون عن القواعد اللغوية للغة البايثون.

السوال الاول :
لماذا يستخدم الناس لغة البايثون(Why do people use python) ؟؟؟
اولا " :
جودة المنتج الناتج عن استخدام البايثون ( Software Quality)
تعد الجودة العالية للمنتج الناشىء من استخدام لغة البايثون احد اهم الاسباب فى جعلها احد اللغات التى تحترم بين المبرمجين ويقصد هنا بجودة المنتج الاتى:
  • سهولة الكود وسهولة قرائته ومن ثم القدرة الكبيرة على اعادة استخدامه مرة اخرى (Readability and Usability).
  • القدرة الكبيرة على اجراء الصيانة على الكود بشكل رائع وسهل وذلك لسهولة التعامل مع الاكواد (Maintainability).
  • القدرة على التعامل من خلال هذه اللغة على المبادىء المتقدمة فى البرمجة مثل برمجة الكائنات الموجهة ( Object-Oriented Programming) ومن ثم القدرة على تطبيق نظم التحليل والتصميم المتقدمة (Object-Oriented Analysis and Design).
ثانيا" : زيادة قدرة المبرمج على التطوير ( Increasing Developer Productivity )
تتسم لغة البايثون بزيادة قدرة المبرمج على التطوير وعلى الانتاج وذلك لعدة مميزات تمتاز بها هذه اللغة دونا" عن اى لغة اخرى :
  • يكافىء كود البايثون المطلوب لكتابة برنامج محدد ما بين ثلث الى خمس الكود الذى يتم كتابته بلغات مثل (C , C++, Java) وبالتالى يقل الكود المكتوب فتقل اخطاؤه ومن ثم تقل صيانته مما يتيح الوقت للمبرمج لزيادة انتاجه بشكل كبير .
  • السرعة الكبيرة فى تنفيذ البرنامج المكتوب بلغة البايثون وذلك لعدم وجود الخطوات المتمثلة فى (Linking , Compiling ) والتى توجد فى لغات مثل ( C++, C) مما يزيد من سرعة تنفيذ البرامج المطلوبة.
ثالثا" : عدم الاعتماد على بيئة معينة للتطوير او التنفيذ (Program Portability)
تتسم لغتنا بأنها تتيح لمن يستخدمها ان يقوم بالتطوير داخل اى من البيئات المعروفة
( Linux, Windows , Mac) وايضا" تنفيذ البرنامج داخل اى بيئة من البيئات المعروفة , فهى قادرة على ان تنفذ فى اى مكان على عكس لغات اخرى تحتاج الى اشواط كثيرة لتقطع حتى يتم تنفيذها على غير البيئة التى تم تطويرها فيها.

رابعا" :
مكتبة الدعم (Support Library)
من اهم مميزات لغة البايثون وجود مكتبة هائلة من الاكواد الجاهزة للتنفيذ والتى توفر على المبرمج الكثير والكثير من الجهد والوقت وتسمى هذه المكتبة ب
(Standard Library).
تأتى اللغة بالدعم الكبير من المصادر الحرة والتى تمدها بالكثير من المكتبات التى تزيد من مدى التطبيقات التى يتم استخدامها فيها مثل مكتبة
(NumPy) والتى تعمل كمكافىء للمكتبات الشهيرة ببرنامج (MatLab).
بالاضافة الى الكثير والكثير من المكتبات الاخرى والتى تدعم البايثون بشكل هائل.

خامسا" :
التكامل مع باقى اللغات (Component Integration)
لغة البايثون والتطبيقات التى تبنى بها لا تقف مكتوفة الايدى عند وجود تطبيقات مكتوبة بلغات اخرى ولكنها تستطيع الاتصال والتكامل مع هذه اللغات والتطبيقات وذلك باستدعاء دوال ومكتبات من اللغات الاخرى والعكس وقادرة ايضا" على التكامل مع
(COM , .NET) وما الى ذلك من إطارات العمل.

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

الجمعة، 1 يناير 2010

توقف مؤقت

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

الخميس، 31 ديسمبر 2009

بايثون للجميع

السلام عليكم

كنت قد بدأت قبل ذلك فى تعلم لغة البرمجة بايثون وقبل ان ابدأ فى تعلمها فإنى قد قمت بعمل بحث (اعتقد انه جيد الى حد ما ) للوصول الى بعض الكتب والمراجع التى تساعد على تعلم هذه اللغة الرائعة , وبالفعل وبفضل الله اوصلنى البحث إلى مجموعة من الكتب الرائعة والتى تضمنت كتب باللغة العربية لأناس لهم جزيل الشكر على مجهوداتهم الرائعة ومنهم الاخ العمانى فهد السعدى والذى اعد كتابا" رائعا" لكل من يريد البدء فى تعلم البايثون ولقد استفدت من هذا الكتاب جدا" وأيضا" مجهودات بعض الاخوة اشكرهم عليها, وايضا" وجدت بعض الكتب باللغة الإنجليزية الجميلة جدا" ولله الحمد فالعبد الفقير الى الله يجيد القراءة بالانجليزية وبالفعل استفدت جدا" جدا" من بعض هذه الكتب التى قرأت فيها عن البايثون.
اكثر الكتب الاجنبية التى افادتنى جدا" هو كتاب (Think Python) والذى يشرح بصورة رائعة البرمجة باستخدام البايثون, وهنا انا اقصد انه لا يركز بالكلية على البايثون ولكن له اسلوب اكثر من رائع فى دمج التعليم للغة وايضا" تعليم قواعد واسس البرمجة بشكل عام وتطبيقها على البايثون.
حقيقة" فانا متحمس جدا للمساعدة فى نشر استخدام هذه اللغة السهلة والبسيطة والقوية جدا" جدا" فى الكثير من المجالات والاستخدامات
ولذلك قررت ان اقوم بترجمة كتاب (Think Python) ولكن ليست ترجمة بمفهومها اللغوى لكنها ترجمة فنية بحتة بمعنى انى ساقوم بقراءة كل وحدة من هذا الكتاب وإعادة شرحها ولكن باللغة العربية , وسأحاول ان اتوخى الدقة قدر المستطاع والله المستعان.
ما ارجوه هو ان اى شخص يقرأ هذه المقالات (الدروس) ولديه اى تصحيح او تعليق لا يتردد فى ارساله على الفور الى العنوان w.mouhamm@yahoo.com وبإذن الله سأقوم بالرد عليه وبتصحيح ما يراه غير صحيح وذلك حتى نصل بهذا العمل الى ان يكون عمل مفيد لكل من يرغب بتعلم البايثون.
بالنهاية ساقوم بوضع لينك لمجموعه من الكتب التى تحصلت عليها اثناء عملية البحث التى قمت بها حتى يرى كل من يريد ما هو الكتاب الأفضل بالنسبة اليه ليبدأ التعلم منه ولمن يرغب ان يتابع الدروس فسأحاول بإذن الله ان اجعلها منتظمة قدر الامكان.
للحصول على الكتب : بايثون للجميع

الأربعاء، 30 ديسمبر 2009

اوبونتو 9.04

السلام عليكم
الواحد خلاص جاب اخره من الويندوزكل شوية الجهاز يهنج ولااااااااازم ترستر لما الواحد طفح , وبالتالى فكرت فى انى اغير بقا ام النظام التعبان ده , علشان كده قررت انى اسطب اوبونتو واللى ميعرفش اوبونتو ده نظام تشغيل مفتوح المصدر وببلاش.
الحقيقة الواحد طول النهار امبارح بيسطب وبيحاول يبقا معتاد عليه وفعلا" حسيت بالفرق اللى بين الويندوز والاوبونتو من حيث حاجات كتييييير جدا" ممكن تلخيص بعضها :
  • نظام مستقر جدا" ( يعنى مبيهنجش شغاااااااااااال اوبونتو)
  • الكيرنل بتاعه متقسم تقسيمة حلوة جدا" يعنى لو فيه برنامج مهنج فيه باقى البرامج التانية شغالة كويس جدا وكل اللى انتا محتاجه انك توقف البرنامج ده بس وده سهل جدا".
  • طبعا" الشكل بتاعه جميل جدا" ومش محتاج كارت شاشة ضخم علشان تحس بالفرق فى الشكل.
  • خفيييييف جدا" على الجهاز.
  • اهم حاجة فيه هى community المجنمع الخاص بيه اللى بيقدم المساعدة لكل المستخدمين , يعنى بالعربى اى حاجة هاتقف معاك فيه هاتتدخل على النت وتكتب الحاجة وهاتلاقى ملييييييون واحد هايدلك.
الحقيقة ان الواحد لو فضل يتكلم فى الموضوع ده هايفضل يتكلم فيه طول العمر , وبكده وباستخدام لغة البرمجة بايثون يبقا الواحد اتنقل تماما" لعالم البرامج مفتوحة المصدر.
نصيحتى لكل الناس انهم يستخدموا نظام التشغيل اوبونتو وعلى فكرة فيه توزيعات من لينوكس بالعربى وجامدة جدا" ممكن اتكلم فيها فى مرات جاية.

الاثنين، 28 ديسمبر 2009

قرار

السلام عليكم

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

الأحد، 27 ديسمبر 2009

إحلم...

السلام عليكم ورحمه الله وبركاته
بدون مقدمات طويلة انا بقالى اكتر من سنة باحاول انى ابدأ تدوين , عندى الفكرة من زمان بس الله يخرب بيت الكسل اللى خلا الواحد يتأخر ده كله فى الموضوع ده.
المهم , انا خلاص قررت ابدأ المدونة بتاعتى والحقيقة انا مكنتش عارف اكتب فى ايه بالظبط لحد ما شوفت مدونة كنت اتعرفت عليها من كتاب وعنوانها Skeleton Eel الحقيقة عجبتنى قوى فكرة التدوين الاجتماعى والتقنى فى نفس الوقت , وقررت انى اتبع نفس المنهج وبالتالى المدونة هاتكون عبارة عن حياه انا بأعيشها كل يوم سواء اجتماعيا" او تقنيا".
الحقيقة الجانب التقنى اللى فى الموضوع هايكون فى طريق المصادر حرة المصدر مثل لينوكس فأنا مبتدىء فى استخدام توزيعة
اوبونتو والحقيقة مبسوط جدا" منها وعاوز كل الناس تعرف عنها وتشتغل بيها...
نيجى بقا لموضوع الاحلام , وزى ما بيقول المثل ؛؛ الجواب باين من عنوانه ؛؛ لما اقول لينكس يبقا باقول عاوز احلم , احلم بانى يكون عندى نظام تشغيل مش مسروق او مضروب , باحلم اكون جزء من مشروع كبير , باحلم انى اكون فى دنيا تتيح ليا دور كبير زى دنيا اللينكس.
اللى بيعوز يحلم فى جانب من جوانب حياته اكييييييد بيحلم فى كل جوانب حياته , وبالتالى المدونة دى هاتكون صفحة اكتب فيها احلامى فى كل جانب من جوانب حياتى وحياة بلدى وامتى .
اكدي ايد لوحدها مش بتصقف علشان كده انا نفسى كل حد يدخل على المدونة دى يعتبرها صفحة احلام يكتب فيها احلامه وامنياته لدينه وبلده وامته كلها فى اى مجال وفى اى جانب من جوانب حياته.
يالا انا خلاص خلصت واتمنى التوفيق ليا ولكل الناس...