المتابعون للمدونة

الجمعة، 24 ديسمبر 2021

يا للغزال إذا مشى

 يا للغزالِ إذا مَشَى والوردُ في فيهِ انتشى

كالبدرِ تَضحكُ عينُهِ وتقولُ شِعرًا مُدهشا

والطَّرفُ ساحَ مُكحّلاً كالصبحِ لاحَ مُغبَّشا

بالحسنِ ماسَ مُدلَّلاً حتى رآني فاختشى

شاهدوا إلقائي للقصيدة كاملة مع شرح معاني الكلمات:

الثلاثاء، 21 ديسمبر 2021

Custom Code Snippets

 تعريف قصاصات كود خاصة Custom Code Snippets

في سي شارب، يمكنك أن تكتب cw ثم تضغط الزر Tab مرتين لإضافة نتفة الكود Code Snippet التالية:

Console.WriteLine( );

للأسف، هذه النتفة غير معرّفة في فيجوال بيزيك، لكن من الممكن أن نضيفها بأنفسنا (أرجو أن يتابع مبرمجو سي شارب القراءة، لأن نفس الخطوات صالحة لسي شارب).. أضف هذا الكود داخل ملف وغير اسمه وامتداده إلى WriteLine.snippet:

<?xml version="1.0" encoding="utf-8"?>

<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">

    <CodeSnippet Format="1.0.0">

        <Header>

            <Title>Console.WriteLine</Title>

            <Author>M. Hamdy Ghanem</Author>

    <Shortcut>cw</Shortcut>

        </Header>

        <Snippet>

            <Code Language="VB">

                <![CDATA[Console.WriteLine($msg$)]]>

            </Code>

  <Declarations>

    <Object>

      <ID>msg</ID>

      <Type>System.String</Type>

      <ToolTip>The message you want to write.</ToolTip>

      <Default>"Hello"</Default>

    </Object>

  </Declarations>

        </Snippet>

    </CodeSnippet>

</CodeSnippets>

ملحوظة: يمكن إضافة قاصات لسي شارب بنفس الطريقة مع تغيير العنصر:

<Code Language="VB">

إلى:

<Code Language="CSharp">

ولإضافة هذه القصاصة إلى فيجوال ستديو:

من القائمة الرئيسية Tools في فيجوال ستديو، اضغط الأمر Code Snippet Manager، لعرض نافذة مدير قصاصات الكود، ومنها اضغط الزر Import، واختر الملف WriteLine.snippet من الموضع الذي حفظته فيه واضغط موافق.. ستظهر نافذة تسألك أين تريد حفظ قصاصة الكود الجديدة، اختر المجلد المناسب، وفي حالتنا هذه اختر المجلد My Code Snippets واضغط موافق.. الآن، يمكنك أن تستخدم الاختصار cw وتضغط بعده الزر Tab مرة واحدة لإضافة قصاصة الكود:

Console.WriteLine("Hello");

حيث سترى النص "Hello" محددا بالون الأصفر ليمكنك الكتابة فوقه مباشرة.

لاحظ أنك ستواجه مشكلة صغيرة بعد كتابة cw، حيث ستظهر نافذة الإكمال التلقائي، التي سترشح لك الدالة ChrW، ولو ضغطت Tab في هذه اللحظة فسيؤدي هذا إلى كتابة Chrw في محرر الكود بدلا من قصاصة الكود، لهذا يجب أن تضغط Esc لإغلاق نافذة الإغلاق التلقائي أولا قبل ضغط Tab، وهو أمر مزعج، لكن من الممكن التخلص منه بجعل نافذة الإكمال التلقائي تعرض قصاصات الكود التي تبدأ بالحروف التي تكتبها في محرر الكود.. لفعل هذا، اضغط الأمر Options من القائمة الرئيسة Tools ومن نافذة الخيارات اختر العنصر Text Editor من القائمة، ومن عناصره الفرعية اختصر العنصر Basic ومن عناصره الفرعية اختر IntelliSense ومن القسم الأيمن، ضع علامة الاختيار على:

Always include snippets

كما هو موضح في الصورة، واضغط Ok.


الآن، سيعمل الاختصار كما نريد.

بالتوفيق.

السبت، 18 ديسمبر 2021

العشق الأوحد

 العشق الأوحد

وأصابتها لعنةُ شِعري بالكِبْرِ وبالوَجدِ

بغرورٍ مفتونٍ مُعتَـدِّ

أن صارتْ أجملَ أنثى في الدنيا عِندي

بالضعفِ القاهرِ لا صبرَ سيُجدي

مِن شوقِ مشاعرِها

مِن لَهفتِها أن تتذّوقَ شهدي

يا ضاحكةَ الخدِّ

يا فارعةَ القدِّ

أنا حذرتُكِ يومًا أن تجتازي حدّي

فَغَزَوْتِ شعوري بمزيجٍ من طيشٍ وتَحدّي

وغَمرتِ ممالكَ شِعري بعطورِ الوردِ

ونجومِ الروعةِ وبدورِ السُّهدِ

ومشيتِ بِخُيَلاءٍ في ساحةِ وجدي

فسقطتِ بفخّي غافلةً،

كغزالٍ بعرينِ الفهدِ

وعلمتِ أخيرا بعدَ تَرَدِّي

في أسرِكِ في عشقي الرَّغْدِ

لن يصلحَ أبًدا

أبدًا

أن يَدخلَ قلبَكِ رجلٌ بعدي

فأنا يا فاتنتي العشقُ الأولُ

والأوحدُ

والأبدي

محمد حمدي غانم

15/12/2021

السبت، 11 ديسمبر 2021

ممنوعك

 ممنوعك

انا في الصمت مسموعك أنا ليلك وانا ضيك

أنا في العشق ممنوعك انا تايه اوي زيك

ونتقابل بدون مواعيد ونتفارق بأحضانا

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

ويسألني الهوى عنا وأنا وانتي سراب في سراب

نشوف الناس وبتشوفنا ومن غير روحنا بس تراب

ونصين كسر مش واحد وجبر العشق دايما صعب

طريق الغربة ليل بارد لقلب ما دفاهوش الحب

محمد حمدي غانم

11/12/2021

الثلاثاء، 7 ديسمبر 2021

أعطيني هذا الدواء

 هذه وصفة من حكيم العشق، فهل هي متوفرة في الصيدليات؟

دوائي في الهَوَى: أَهوِي إلى عينينِ مثلِ قمرْ

تُحيلانِ المَدَى حُلما وأشعارًا وعزفَ وترْ

الأربعاء، 24 نوفمبر 2021

تبادل القيم Swapping

 أطور حاليا كتاب من الصفر إلى الاحتراف سي شارب إلى إصدار C# 10.. وأنا أعيد مراجعته حرفا حرفا لإضافة بعض التحسينات والخبرات التي اكتسبتها في الأعوام الثلاثة الأخيرة من احتكاكي بالمبرمجين المحترفين وبعض أفراد فريق ميكروسوفت في موقع GitHub، وإضافة الجديد في إصدارات سي شارب 8 و 9 و 10.

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

وهذه ملحوظة مفيدة أضفتها اليوم، لعمل تبادل القيم swapping بطريقة سهلة جديدة قد لا ينتبه إليها بعضكم:



 

الأحد، 21 نوفمبر 2021

سورة الكوثر

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

1- جمل عربية سليمة فصيحة ذات معنى بليغ.

2- لها بنية موسيقية ليست بالنثر ولا بالشعر (الآية الأولى لها وزن المتدارك، والثانية لها وزن المتقارب، والثالثة لها وزن المتوفر ولو قرأنا شانيك بتسهيل الهمزة تكون من وزن الرمل، ورغم اختلاف الأوزان الثلاثة فهناك انسجام جميل فيما بينها، جعل شعراء العرب عاجزين أمام هذا النص خاصة أن لإيقاعه تأثيرا نفسيا عجيبا لا يحدث في الشعر ولا الغناء ولا النثر العادي).

3- تحقق حروف هذه الجمل الثلاث إحصائيات الرقم 10 المذكورة في الصورة!



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

فهل صنع محمد بن عبد الله هذه العلاقات المعقدة وسكت عنها؟.. أم أن هذا التوافقات الرقمية مجرد صدفة (وهو أمر عادي بالنسبة لأتباع داروين، فالذي يصدق أن المخ البشري بكل تعقيده وليد الصدفة والعشوائية، لن يجد حرجا في أن يقول أن القرآن الكريم كله كتب بالصدفة من لخبطة بعض الحروف!!)؟

بل هو رسول الله صلى الله عليه وسلم وما هذا بكلام بشر.

نزل القمر


 

الخميس، 18 نوفمبر 2021

رسالتي إلى أم لجين

 يَا اللهُ..

ياَ مَنْ أوْدعَ فِي جنَّاتِ القلْبيْن مَحَبَّتَهُ،

وسَمَا بالأسْمَاءِ الْحُسْنَى!

يَا اللهُ ..

يَا مَنْ مَرَجَ البَحْرَيْنِ

وأوْحَى بالقُدْرةِ فانْبَجَسَتْ هَذِي الأسْرَار

هلْ ذَهَبتْ عَنْهَا سُودُ الأضغاث

وتبيَّنَ لِلأعْيُنِ شَكْلُ الْقَطرِ الْعَذبِ وجَمْرُ النَّار؟

يَا رَحْمَنُ

يَا مَنْ شِئتَ بمَا شِئْتَ.. فكَانَ حَدِيثُ المَاءِ

وكَانَ َنهَارٌ.. وَغمَام!

يَا مَنْ شفَّتْ بالرَّحْمة عِندَ مَطالعِه أحْجَارُ الْوِدْيان

وتجَلَّى بهُدَاهُ خَلْقُ الإنْسان..

زدْهَا صَبْرَا ... وَاقضِ أمْرَا ،

هَبْهَا َقدْرًا مَعلُومًا مِنْ آلَائِكَ،

إنْ غِيضَ الْمَاءُ ونادَتْ: " يَا حَيّ"!

من قصيدة "رسالتي إلى أم لجين" للشاعر الكبير مصطفى العايدي.. ويمكنك سماع القصيدة كاملة بصوتي:

الثلاثاء، 16 نوفمبر 2021

أنثى بطعم مختلف

 هلْ تَعرفُ سيلَ اللهفةِ يَجرِفُ ذاتَ صباحٍ كلَّ الحسناواتِ لباحةِ وهْمي؟

وأنا لا أملِكُ ثَمَّ سِوَى فُرشاةِ الرسمِ ولوحةِ نَظْمي

وأحاولُ رسمَ ملامحِها

ـ أُنثايَ بطعمٍ مختلفٍ ـ

فتَضيعُ بأولِ ضربةِ عطرٍ عشرُ حِسانْ

أَستهلكُ مِئةً أُخرَى حتّى أَستلهمَ أوَّلَ دهشتِها يومَ لقاءْ

وأبدّدُ ألْفَ امرأةٍ في فُرشاتي كي تَتبسّمَ بالألوانْ

عشرةَ آلافٍ، لِتُتَمتمَ فاتنتي "أهلاً" في شَغَفٍ خجلانْ

مئتا ألفٍ في رَشفةِ شايٍ بالرَّيحانْ

مليونًا، مليونينِ، ثلاثًا، حينَ يطيرُ نَسيمُ الشَّعرِ بلا عنوانْ

خمسةَ ملياراتِ امرأةٍ أُخرى أُفنيهنَّ لأرسمَ ضِحكَ الشِّعرِ وبعضًا من خديّها حينَ أمامي يَحمرّانْ!

فهلُمَّ مزيدَ الحسناواتْ!

أغمسُ فُرشاتي في أملٍ

لكنَّ نساءَ الكونِ يَضِعنَ هباءً في عينيها!

الخميس، 11 نوفمبر 2021

فصول من كتاب الشاعر

 البرمجة للمبدعين: إنشاء برنامج الشاعر بلغة Ring


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

هذه فوائد كثيرة مركزة أقدمها لك مجانا فلا تتردد في تصفح الكتاب:

اضغط هنا للقراءة مباشرة على جوجل درايف أو التحميل كملف PDF

مثل النساء

 أكملت القصيدة التي لم يكملها د. أحمد خالد توفيق



الاثنين، 8 نوفمبر 2021

كتاب رينج

 


صدر بحمد الله كتابي الجديد:

البرمجة للمبدعين: إنشاء برنامج الشاعر بلغة Ring

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

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

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

وصياغة اللغة سهلة وبسيطة، ستألفها بسرعة لأنها لغة ديناميكية تقع في منطقة بين عائلة لغات BASIC وعائلة لغات C، فكل ما ستتعلمه فيها سيفيدك حتى في البرمجة بلغات أخرى، لأن الأهم في البرمجة هو الفكر البرمجي نفسه بغض النظر عن لغة البرمجة.

عرض خاص: سعر الكتاب المطبوع 100 جنيه فقط، أو يمكنك أن تقرأه الكترونيا مجانا.

أماكن البيع:

·      القاهرة: مكتبة دار المعرفة في العباسية، 3ج شارع السرايات (فوق محل فسخاني خميس)، أمام هندسة عين شمس بالقرب من محطة مترو عبده باشا.. مواعيد العمل من 10 صباحا إلى 3 عصرا ما عدا الجمعة..  وأنصح بالتواصل مع أ. أحمد حماد على الهاتف أو الواتس قبل الذهاب 01005334504

·      الجيزة: مكتبة مشارق (مشهورة بمكتبة عمرو)، أمام مركز الدرة التعليمي السوداني في شارع النادي الرياضي وهو شارع جانبي بين أول فيصل وأول الهرم (يوجد محل أولاد رجب على أول الشارع من ناحية فيصل).. مواعيد العمل من بعد الظهر إلى العاشرة مساء.. وأنصح بالاتصال قبل الذهاب 01550092229

·      دمياط: الكتب موجودة معي، ويمكن التواصل معي على بريدي msvbnet@hotmail.com

·      باقي المحافظات: يمكن الحصول على الكتاب بطرد بريدي.. لتفاصيل أكثر أرجو التواصل معي msvbnet@hotmail.com

·      من خارج مصر: من الصعب إرسال الكتاب بمفرده بطرد بريدي لأن تكلفة الطرد ستزيد عن تكلفة الكتاب، كما أن ويسترن يونيون لن يقبل تحويل أقل من 50 دولارا فليس من المنطقي أن تشتري نسخة واحدة بخمسين دولارا!!، كما أن هذه العملية تضيع الكثير من الوقت والمجهود ومكسب نسخة من الكتاب لا يستحق المعاناة.. سيكون الأمر أفضل لو تم شحن 10 نسخ من الكتاب معا بتكلفة 100 دولار (شاملة تكاليف الشحن)، أو يمكن شراء نسخة واحدة من الكتاب وأضيف معها بعض نسخ كتبي الأخرى عن فيجوال بيزيك وسي شارب بنفس التكلفة.. لتفاصيل أكثر أرجو التواصل معي msvbnet@hotmail.com

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

 

 

الجمعة، 5 نوفمبر 2021

تطبيق بنك الدم

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

الأربعاء، 3 نوفمبر 2021

نطاق عداد حلقة التكرار

 تعلم البرمجة بلغة  Small Visual Basic

الدرس الثالث عشر: نطاق عداد حلقة التكرار For Next

تغيير كبير آخر أدخلته إلى لغة سمول فيجوال بيزيك هو تعريف العداد Counter الخاص بحلقة التكرار For Next باعتباره متغيرا موضعيا Local Variable خاصا بالدالة التي توجد فيها حلقة التكرار.. الاستثناء الوحيد هو حلقات التكرار الموجودة في المنطقة العامة (خارج الدوال) فالعداد هنا سيكون متغيرا عاما Global Variable.

الخميس، 28 أكتوبر 2021

الدوال Functions

 تغيير كبير آخر أدخلته إلى لغة سمول فيجوال بيزيك هو السماح بتعريف دالة Function واستخدام الأمر Return لجعلها تعيد قيمة.. ويمكنك أيضا تعريف معاملات لهذه الدالة بنفس الطريقة التي عرّفنا بها معاملات للإجراء Sub.


الجمعة، 22 أكتوبر 2021

المعاملات Parameters

 تعلم البرمجة بلغة  Small Visual Basic

الدرس الحادي عشر: المعاملات Parameters

أحد التغييرات الكبيرة التي أضفتها إلى لغة سمول فيجوال بيزيك هو السماح بتعريف معاملات Parameters للإجراء Sub والسماح بتمرير القيم إليها بين قوسي الإجراء عند استدعائه، وهو ما يجعل التعامل مع الإجراءات أسهل بكثير مما هو عليه في لغة سمول بيزيك.

 

الثلاثاء، 19 أكتوبر 2021

المتغيرات الموضعية

 تعلم البرمجة بلغة  Small Visual Basic

الدرس العاشر: المتغيرات الموضعية Local Variables

في لغة ميكروسوفت سمول بيزيك، كل المتغيرات المعرفة في أي موضع في البرنامج تعتبر متغيرات عامة Global Variables، وهو ما يسبب الكثير من المشاكل في كتابة البرنامج، لهذا كان أحد التغييرات الكبيرة التي أضفتها إلى لغة سمول فيجوال بيزيك هي جعل المتغير الجديد الذي يتم تعريفه داخل الإجراء Sub مرئيا فقط داخل هذا الإجراء، ويسمى في هذه الحالة بالمتغير الموضعي Local Variable لأنه خاص فقط بالموضع الذي تم تعريفه فيه (الإجراء).

لاحظ أن هذا قد يسبب بعض المشاكل مع الأكواد القديمة المكتوبة بلغة Small Basic الخاصة بميكروسوفت، وقد أعطيت مثالا لهذا في الفيديو وكيف يمكن حل هذه المشاكل.

الأحد، 17 أكتوبر 2021

لو صمتت أكثر

 هل يرضيها أن أنزلَ عن عرشي الزاهرْ؟

وأنا الشاعرْ؟

أعلنَ الاستسلامَ بغيرِ قصيدٍ لبلاغةِ دهشةِ عينيها؟

وأُتوّجَها حرفينِ اثنينِ بكلِّ حروفِ لغاتِ الأرضِ وكلِّ مشاعرْ؟

الأربعاء، 13 أكتوبر 2021

تربية الأبناء في عصر التابلت

 كيف تحمي ابنك من الانحراف والإلحاد ومخاطر مواقع التواصل والألعاب؟

وكيف تؤهله لسوق العمل بعد 20 عاما؟

وكيف تؤهله لتحمل مسئولية الزواج؟

وهل من السهل تغيير عادات الزواج في هذا المجتمع؟

شاديك أنا




 

صفحة الشاعر