لماذا أعتبر Python لغتي المفضلة؟

رحلتي في مجال البرمجة بدأت قبل تسع سنوات، عندما كنت في الرابعة عشرة من عمري، وشملت كلا من Visual Basic وC وC++ وJava وPerl وPHP وJavaScript وPython، وأنا لا أتحدث هنا عن مرور الكرام، بل قمت بالعديد من المشاريع في كل منها ولا زالت قدراتي بكل هذه اللغات جيدة، وأستطيع استخدام أي منها إذا اقتضت الحاجة ذلك، لكن إذا كان الخيار متاحا لي في كل مرة، لاخترت Python لكل مشروع أعمل عليه.

والسبب؟ سهولة قراءة شفرات البرامج المكتوبة بها!

قراءة بقية هذا الموضوع »

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

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

أفضل البرامج

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

  • Python. قد لا تكون برنامجا بالمعنى الذي تتوقعه، فبايثون هي لغة البرمجة المفضلة لدي، لكنها تأتي مع شيء يسمى النمط التفاعلي (Python Interactive Mode)، وهو عبارة عن شيء شبيه بسطر الأوامر، تكتب فيه العبارات البرمجية فيتم تنفيذها مباشرة وعرض نتائجها، وأنا أستخدمه في الكثير من المجالات، ابتداءا من الجمع والطرح والضرب والقسمة وانتهاءا باستخلاص المعلومات من صفحات الانترنت باستخدام التعابير القياسية (Regular Expressions) وانشاء مصغرات من الصور التي لدي في مجلد ما.

قراءة بقية هذا الموضوع »

أفكار في إدارة المنتديات

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

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

قراءة بقية هذا الموضوع »

لقاء صحفي في جريدة الرياض حول أداة CSSMirror

أجرت الأخت هند من جريدة الرياض لقاءا صحفيا معي بخصوص أداة CSS Mirror، وقد نشر قبل فترة تحت عنوان “أداة CSS Mirror الحل المثالي والسريع لمشاكل تعريب قوالب المدونات“.

أشكر الأخت هند وجريدة الرياض على اهتمامها وتسليطها الضوء على أعمال الشباب العربي.

رؤساء الدول والحكومات أقروا بأهمية الإنترنت.. ولكن..

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

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

قراءة بقية هذا الموضوع »

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

تحدثت في موضوعين سابقين عن التشفير باتجاه واحد والتشفير بالمفتاح المتناظر، وأختم اليوم بالحديث عن التشفير بالمفتاح الغير متناظر أو المفتاح العلني.

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

ويسمى هذا النوع من التشفير أيضا بالتشفير بالمفتاح العلني (public-key encryption)، لأنك تستطيع أن تنشر أحد المفتاحين وهو يسمى المفتاح العلني (public-key)، وتحتفظ بالآخر سريا، ويسمى المفتاح الخاص (private-key).

قراءة بقية هذا الموضوع »

التشفير بالمفتاح المتناظر

تحدثت من قبل عن التشفير باتجاه واحد، وسأكمل الآن بالحديث عن التشفير بالمفتاح المتناظر.

التشفير بالمفتاح المتناظر (Symmetric Key Encryption) هو أسلوب من أساليب التشفير يستخدم فيه مفتاح سري لتشفير رسالة ما وفك تشفيرها، ويسمى بالتشفير بالمفتاح المتناظر لأن المفتاح الذي يستخدم لتشفير الرسالة هو نفسه المستخدم لفك تشفيرها، في مقابل التشفير الغير متناظر الذي سأتحدث عنه في المرة القادمة إن شاء الله.

قراءة بقية هذا الموضوع »

التشفير باتجاه واحد

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

هنالك عدة خطط للتشفير (Encryption Schemes)، أو يمكننا أن نسميها أيضا طرقا أو أساليب للتشفير، لكل منها نقاط قوتها وضعفها واستخداماتها، وهذه الأساليب هي أفكار عامة وليست تطبيقات عملية للتشفير، أما التطبيقات العملية للتشفير فتسمى خوارزميات التشفير (Encryption Algorithms)، وسيتضح الفرق بينهما أكثر عندما نأخذ أمثلة عل كل منهما.

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

التشفير باتجاه واحد (One way encryption) هو أسلوب من أساليب التشفير تأخذ الرسالة المراد تشفيرها وتحورها لتخرج بشيء يسمى المفتاح الشفرة (Hash Key)، وأهم في هذا المفتاح هو أنه لا توجد طريقة فيه لفك التشفير والحصول على الرسالة الأصلية منه، ولهذا السبب سمي هذا الأسلوب بأسلوب التشفير باتجاه واحد.

قراءة بقية هذا الموضوع »

أمن برامج الويب: البرمجة عبر الموقع XSS

واحدة من أشهر أنواع الثغرات التي على الويب والتي لا تهتم لها الكثير من المواقع العربية هي ثغرة البرمجة عبر الموقع أو Cross-Site Scripting (وتختصر عادة إلى XSS)، وقد سميت بذلك لأن فكرتها هي أنك تستخدم الموقع كوسيط بينك وبين الضحية بحيث تضع شفرة برمجية (Script وتقريبا دائما يكون بلغة JavaScript) على الموقع وتجبر الضحية على تشغيل هذا السكريبت عند زيارته للموقع دون أن يشعر، ومن أبرز أمثلتها برامج المنتديات العامة التي تسمح لأي عضو باستخدام لغة HTML في المواضيع والردود التي يكتبها.

وسأتحدث عنها وبشكل عام عن مشكلة السماح للمستخدمين بانتاج صفحات تحتوي على شفرات HTML التي يريدونها، خاصة في المنتديات.

قراءة بقية هذا الموضوع »

« المواضيع التالية | المواضيع السابقة »