19 يناير 2012
كنا قد استعرضنا في تدوينة سابقة نظام CVS لإدارة الشيفرات المصدرية من وجهة نظر زبون النظام، حيث تناولنا كيفية استثماره باستخدام برمجية TortoiseCVS إحدى أبسط الأدوات المجانية المتاحة لأنظمة التشغيلWindows، وقد أوضحنا في تلك المقالة كيفية الإتصال مع مخدم Sourceforge.net لاستخراج الشيفرة المصدرية لأحد المشاريع البرمجية وقد كان Ar-PHP على سبيل المثال.
تتألف منظومة CVS من مكنز Repository يستضاف على مخدم ما، وتقوم برمجيات الزبون بالإتصال بذلك المكنز لاستخراج Checkout الشيفرة المصدرية المطلوبة من ذلك المكنز والحصول على نسخة محلية منها عادة ما تدعى بصندوق الرمل Sandbox، عند ذلك تستطيع التعامل مع تلك الشيفرة المصدرية بأسلوبك وأدواتك المعتادة دون الحاجة إلى البقاء على إتصال مع المكنز على جهاز المخدم. بعد الإنتهاء من تنفيذ التعديلات التي ترغب بها وإتمام إختبار صحتها، تستطيع الإتصال بمخدم CVS من جديد باستخدام ذات برمجية الزبون لتقوم بعملية إيداع Commit تلك التعديلات ضمن المكنز من جديد، فتصبح جزءا من مكوناته ومتاحة بالتالي للآخرين. يجدر التنويه هنا إلى أن عملية الإيداع تقوم بدمج التعديلات الآتية من عدة مصادر (مبرمجين)على عكس نموذج القفل المعتاد والذي يسمح لمبرمج وحيد فقط بإجراء التعديلات على الشيفرة المصدرية في كل مرة.
أقرأ باقي الموضوع »
الأوسمة: CVS, Server
أرسلت فى البرمجيات الحرة, تقنيات الويب | أضف تعليق »
23 نوفمبر 2011
في العام 1832 وضع الروائي Edgar Allan Poe في نهاية روايته The Gold Bug لغزا هو عبارة عن فقرة أخيرة مؤلفة من مجموعة من الرموز الغريبة والتي كانت تصف نهاية روايته تلك، وتحدى القراء في أن ينجحوا في فكها، وتسهيلا على قراءه قام بإعطاء بعض الملاحظات حول ذلك التشفير حيث أشار إلى أن الفقرة مكتوبة باللغة الإنجليزية وأن كل رمز من رموز تلك الفقرة كان يستبدل ذات الحرف في كل مرة (وهو ما يدعى عادة بتشفير قيصر ويتم عن طريق استبدال كل حرف بالرسالة برمز أو حرف آخر بديل). في نهاية المطاف لم تكن تلك بالمهمة المستحيلة، فعلى من يحاول فك ذلك النوع من التشفير أن يبدأ بإحصاء عدد مرات تكرار كل من الرموز الواردة ضمن الرسالة ويقابله مع نسب التكرار المعتادة لأحرف اللغة الأصلية، فإن ظهر الحرف N على سبيل المثال على أنه الرمز الأكثر تكرارا في الرسالة المشفر (المعماة) يمكننا استنتاج أن ذلك الحرف بالذات استخدم كمقابل أو بديل عن الحرف E الذي هو بطبيعة الحال الحرف الأكثر تكرارا في اللغة الإنجليزية (لغة الرسالة، أما في العربية على سبيل المثال فهو حرف الألف). ولكن المتابعة على ذات المنوال لن تصل بنا إلى الحل المطلوب، فهو ليس بهذه البساطة، فمثل هكذا أسلوب بسيط قد ينجح إن كان النص المشفر المتوافر بين يدينا كبيرا بما فيه الكفاية حتى تكون الاستنتاجات القائمة على أسس إحصائية للحروف المفردة مقبولة ويعتمد عليها (فما كل ما هو مرجح إحصائيا صحيح بطبيعة الحال، وهنا أذكر على سبيل المثال خطبة الإمام علي كرم الله وجهه بعد أن اجتمع الناس وقالوا أن الألف هو الحرف الأكثر شيوعا باللغة العربية، فأتاهم بخطبة بدون حرف الألف، وله أخرى بدون نقط، ويمكن للمهتمين بذلك أن يبحثوا عن نص كلتيهما على الشابكة).
أقرأ باقي الموضوع »
الأوسمة: Security
أرسلت فى تقنيات الويب | 3 تعليقات »
1 اغسطس 2011
إن سبق لك وأن عملت في مجال تطوير تطبيقات الويب على الشابكة (الإنترنت) فلابد أنك قد إلتقيت ببعض أوامر وشيفرات لغة JavaScript حتى وإن كان ذلك اللقاء على نطاق محدود وضيق لا يتعدى مثلا نسخ بعض أوامر لغة JavaScript من موقع أو مثال ما ومن ثم لصقها ضمن صفحات موقعك مع بعض من التعديلات الطفيفة لتتلاءم تلك الأوامر مع ما لديك من أسماء لعناصر ضمن الصفحة أو حقول إدخال. تستخدم لغة JavaScript عزيزي القارئ لتنفيذ الأوامر البرمجية على مستوى المتصفح وهي تعد اللغة الأكثر شيوعا وشعبية في هذا المجال وتكاد تكون الوحيدة المتفق عليها ما بين أنواع المتصفحات المختلفة المتوافرة في عالم الويب، طبعا إن استثنينا من حساباتنا تقنية الفلاش Flash من شركة أدوبي Adobe والتي بات مستقبلها على المدى البعيد غير مضمون بعد ظهور الإصدار الخامس من لغة HTML من جهة، والذي يقدم بديلا أكثر جدارة ومعيارية منها، ومن جهة أخرى الحرب بسبب المعلنة تارة والمخفية طورا من قبل بعض اللاعبين الكبار مثل شركة أبل التي لم تدعم تشغيل ملفات الفلاش على متصفحات هواتف الآيفون وحواسيب الآيباد اللوحية التي تنتجها صاحبة أكبر قيمة سوقية في عالم شركات الحواسيب اليوم. وعلى الرغم من شعبية وانتشار لغة JavaScript، إلا أنها تستخدم في بيئة إعتاد المطورون فيها على إنجاز معظم العمل البرمجي على مستوى المخدم، وهذا هو تحديدا سبب تهميش وإهمال العديد من مطوري تطبيقات الويب لدورها وعدم إيلاءها الاهتمام الذي تستحقه، وكدليل على ذلك لاحظ ندرة الدورات التدريبية التي تعلم لغة JavaScript بحد ذاتها في بلدنا الحبيب سورية على سبيل المثال (هذا في حال وجود أي من تلك الدورات أصلا)، على الرغم من وجود الكثير من الدورات التدريبية التي تختص بمجال تطوير تطبيقات الويب بشقيه سواء على طرف المخدم (مثل دورات PHP و .NET وغيرهما) أو على طرف الزبون وهو المتصفح في حالتنا هذه (مثل دورات تصميم المواقع والتي تعلم كل من HTML و CSS)، وإن كنت محظوظا فستحصل على جلسة أو إثنتين حول لغة JavaScript في أي من تلك الدورات التدريبية يتم الحديث فيها عن بعض الاستخدامات الشائعة لتلك اللغة مثل عمليات التحقق أو التفاعلية مع المستخدم وهو ما يعزز في نهاية المطاف ثقافة القص واللصق.
أقرأ باقي الموضوع »
الأوسمة: JavaScript
أرسلت فى تقنيات الويب | 6 تعليقات »
31 مايو 2011
تنبيه هام حول مشكلة تم التبليغ عنها في أمثلة الإصدار 2.8 السابق
أشار بعض المستخدمين إلى أن هنالك خلل في كثير من الأمثلة عند تجربتها، بعد تتبع المشكلة وجدت أن السبب هو استخدام أسلوب nowdoc في تأطير السلاسل النصية ضمن تعليمة highlight_string في أغلب الأمثلة والتي وضعت بغية إظهار النص البرمجي المستخدم في المثال المعني، حيث ستجد تعليمة على الشكل التالي:
highlight_string(<<<’END’
لاحظ علامات التنصيص المفردة حول كلمة END وهو ما يميز طريقة nowdoc في تأطير السلاسل النصية عن طريقة heredoc المعروفة منذ الإصدار الرابع للغة PHP والتي تشبه الصيغة السابقة فيما عدى موضوع التأطير بسلاسل نصية مفردة للكلمة التي يراد استخدامها كرمز لبداية ونهاية ذلك التأطير. إن الفرق ما بين أسلوبي nowdoc و heredoc هو مشابه تماما للفرق ما بين تأطير سلسلة نصية بعلامة تنصيص مفردة أو مزدوجة، ففي الأولى يعامل النصن كنص مصمت لا ينظر مفسر لغة PHP داخله على الإطلاق أو يقوم بأي تبديل لمحتواه، أما في الحالة الثانية فيفحص مفسر لغة PHP محتويات النص المؤطر فإن وجد فيها إسما لمتغير قام بإبداله بقيمته. لقد قمنا باستخدام طريقة nowdoc في الأمثلة لتبسيط الشيفرة المصدرية حيث لا تعود هنالك حاجة لوضع الرمز \ قبل اسم كل متحول للإشارة صراحة بعدم الرغبة في استبدال ذلك المتحول بقيمته بل الإكتفاء بعرض اسمه كما هو مع رمز $، على كل حال سنعود لاستخدام طريقة heredoc في الإصدار القادم للمحافظة على التوافقية مع كافة إصدارات PHP 5 دون استثناء.
أقرأ باقي الموضوع »
الأوسمة: ar-php.org, Arabic, PHP
أرسلت فى PHP, لغة عربية, البرمجيات الحرة | 2 تعليقات »
14 أبريل 2011
تم بحمد الله إطلاق الإصدار 2.8 من مكتبة PHP واللغة العربية اليوم الخميس 14 نيسان/أبريل 2011 بعد طول إنشغال دام لمدة ثمانية أشهر منذ الإصدار 2.7.1 السابق، حيث يتضمن هذا الإصدار المجموعة الأخيرة من التحسينات والتصويبات قبل الانتقال إلى الهيكلية الجديدة والتي ستعتمد في الإصدار الرئيسي القادم وهو الإصدار 3.0 والتي تفرضها معمارية مكتبة PEAR حتى نستوفي شروط الإنضمام إليها. سنحاول إطلاعكم أولا بأول على طبيعة تلك التعديلات وكيف لها أن تؤثر على المستخدمين الحاليين للمكتبة والتي نسعى أن نبقيها (أي التعديلات على طرف المستخدم) في الحدود الدنيا قدر المستطاع، إضافة إلى أننا سنقوم بتوفير آلية ترقية سلسة عدى عن خيار المحافظة على التوافقية مع الإصدارات السابقة (ولو أن تفعيل مثل هكذا خيار قد يؤثر على الأداء من ناحية المبدأ).
أقرأ باقي الموضوع »
الأوسمة: ar-php.org, Arabic, GPL, PHP
أرسلت فى PHP, لغة عربية, البرمجيات الحرة | 10 تعليقات »
3 مارس 2011
لقد ذاع صيت لغة XML حتى أصبح القاصي والداني في عالم الويب يسمع بها أو حتى يستخدمها وإن كان غير مدرك لهذه الحقيقة في بعض الحالات، وانتشر استخدامها وتوسع بعد أن كانت حكراً على بعض المختصين وفي مقامات قليلة نسبياً لتصبح إحدى أهم وسائل التواصل فيما بين التطبيقات البرمجية عامة وتطبيقات الويب بشكل خاص، لا بل وسيلة للتواصل فيما بين متصفحات المستخدمين من جهة والتطبيقات البرمجية العاملة على طرف المخدم من جهة أخرى (كما هي الحال في تقنية AJAX على سبيل المثال)، لذا أصبح التعامل مع بيانات XML واحداً من المهام الأساسية والمتكررة في أي مشروع قد تشارك به. وقد ساهم في هذا التوسع بساطة تنسيق ملفات XML، فهي في نهاية المطاف مجرد ملفات نصية صرفة بتنسيق عادة ما يفسّر نفسه بنفسه، بحيث يمكن لقارئ من البشر أن يدرك مكنوناتها وتركيبها، لذا أخذت العديد من لغات البرمجة تدعم القراءة من هذا التنسيق والكتابة إليه إضافة إلى توفير الأدوات البرمجية اللازمة والتي تجعل من هذه المهمة غاية في البساطة ومدمجة إلى حد بعيد ضمن لغات البرمجة تلك. لكن على الرغم من قدرتنا على إنشاء وثائق جيدة البنية بهذا التنسيق، إلا أن تنسيق XML يفتقر ظاهريا لوسيلة سهلة تمكنك من إيجاد المعلومات داخل تلك الوثائق.
نتيجة لتفهم W3C الحاجة المتزايدة لاستخدام تنسيق XML، فقد قامت بتطوير لغة استعلام جديدة أسمتها XPath، وهي التي أطلق الإصدار الأول من معاييرها عام 1999، وأصبحت في الوقت الحاضر مدعومة من قبل معظم لغات البرمجة وبيئات العمل، حيث يمكننا من خلالها تعابيرها التنقل بسهولة ضمن وثيقة XML واختيار عقدها. بكلام آخر فقد أتاحت XPath تعابير سهلة وقابلة للفهم تستطيع من خلالها اختيار أي عقدة أو مجموعة عقد من وثيقة XML ما.
أقرأ باقي الموضوع »
الأوسمة: XML, XPath
أرسلت فى PHP, تقنيات الويب | 4 تعليقات »
21 ديسمبر 2010
بصراحة ما دفعني لكتابة هذه التدوينة هو ما كتبه الصديق كفاح عيسى منذ بضعة أيام في مدونته تحت عنوان “أفضل توليفة لتقانات تطوير تطبيقات الويب لعام 2010” وقد استمتعت به جدا، وبعدها قرأت تعقيب وتوسعة الصديق خالد حوراني والتي نشرها في مدونته تحت عنوان “متابعة لتوليفة تقانات الويب” والتي بدورها عززت متعتي وحرضت سلسلة التحفيز لدي لتصل إلى عتبت التدوين حول ذات الموضوع، فحسب رأي الشخصي فإن فتح مثل هكذا نافذة إلى داخل ما يجول بخاطر المطورين المتمرسين وتجاربهم وكذلك تداعيات أفكارهم هو بدوره مصدر مفيد للآخرين وقد يختصر الوقت على من هو جديد في قطاع الويب أو قد يحفزه على استكشاف زوايا جديدة لم يعهدها من قبل، وهكذا جاء عنوان التدوينة فيه شيء من الطرافة والغموض التي لابد أنها قد انجلت وتوضحت الآن بعد هذه المقدمة.
أما الآن فها هي وقفتي مع العام 2010، لكن قبل أن أبدأ أريد عرض الاقتباس التالي من تدوينة الأخ كفاح والتأكيد على مضمونه وهو أني “أود أن ألفت الانتباه بأن الآراء في هذه المقالة تعبّر عن رأيي الشخصي البحت، و لا أقصد به إثارة النعرات بشأن التقانات و مقابلتها مع بعضها. وقد تكون التقانات التي لم أقم باختيارها أفضل من تلك التي اخترتها. لذلك أرجو المعذرة من أي شخص قد لا يُعجبه ما اخترت وما لم اختر“
أقرأ باقي الموضوع »
أرسلت فى PHP, تقنيات الويب | 11 تعليقات »
14 ديسمبر 2010
منذ بضعة أيام نشرت مقالة علمية في مجال المعلوماتية الحيوية شاركت فيها بالشق البرمجي حيث طورنا مع مجموعة من الزملاء وطالبين من طلابي في كلية الهندسة التقنية بجامعة حلب قسم الهندسة الحيوية، طورنا برنامج بلغة Perl للبحث عن SSR ضمن جينوم النخيل بالاستفادة من تقنية التعابير النظامية RegExp، وفيما يلي ملخص البحث ورابطه المنشور على الشابكة (الإنترنت):
DEVELOPMENT OF 1000 MICROSATELLITE MARKERS ACROSS THE DATE PALM (PHOENIX DACTYLIFERA L.) GENOME
أقرأ باقي الموضوع »
الأوسمة: Bioinformatics, Perl
أرسلت فى معلوماتية حيوية | أضف تعليق »
9 ديسمبر 2010
من منكم لا يذكر محرك البحث عربي الذي أطلقته شركة مكتوب؟ لقد كان عربي يسعى إلى توفير خدمة البحث المتخصص في الصفحات الإسلامية والمنتديات والمدونات والصور والأغاني والفيديو والقاموس. كما كان يتميز “عربي” بنظام فهرسة شامل لجميع المواقع العربية على الإنترنت، والتي يتجاوز عددها مئات الملايين من الصفحات. (المصدر)
و قد حصل عربي في الأشهر الأولى من انطلاقه على جائزتين من ” بان أراب ويب أواردز(PAN ARAB WEB AWARDS)” (المصدر): جائزة أفضل موقع عربي على الإنترنت، والجائزة الفضية ضمن فئة أفضل مزود لخدمات المعلومات والدليل.
وقد كنت من المستبشرين خيرا عندما علمت أن هذا المنتج نجى من صفقة استحواذ ياهو على شركة مكتوب وبالتالي إنضم إلى أسرة جبار وظهر في صفحتها الرئيسية إلى جانب بقية المنتجات المتميزة والتي تضمنت “سوق.كوم” و”كاش يو” و”التحدي” و”أيكو”. فحدثت نفسي أنها ستكون البداية الحقيقية لهذا المشروع حيث سيحظى باهتمام أكبر حينما يكون ضمن أسرة أصغر وأقوى، خصوصا بعد البداية المتعثرة والتي شابها بعض الاستعجال لجني الأرباح من خلال “كلمات عربي” والتي يبدو أنها دفعت دفعا إلى السوق دون أن تحظى بفرصة النضوج لا هي ولا محرك البحث الذي يقف خلفها فكانت الصدمة السلبية لدى مستثمري التطبيق التي أدت إلى نفورهم وعزوفهم عن المساهمة في بناء كرت الثلج ودحرجتها كما وجب أن يكون، على الرغم من خلو السوق من منافس إقليمي حقيقي، وضعف المنافس العالمي في تفهّم ومعالجة إشكالات لغتنا ومجتمعاتنا وأسلوب حياتنا، لذا أراها بحق قصة كان يمكن أن يكتب لها النجاح، لكن …
لا أدري حقيقة ما أقول، لكن ما حدث تم بطريقة أقل ما يقال عنها أنها غريبة! فقد اختفى محرك البحث عربي أواسط هذا العام 2010 فأصبح اسم النطاق الخاص به يقودنا إلى موقع سوق.كوم! (جربها بنفسك http://www.araby.com)، كما اختفت الإشارة إليه من على صفحة موقع جبار الرئيسية http://www.jabbar.com دون أي إشارة تذكر للسبب (أو أنه قد فاتني ملاحظة الكلام عن هكذا حدث جلل بطريقة أو أخرى)، فهل كان السبب في ذلك هو أحد بنود إتفاقية الاستحواذ مع ياهو؟ هل تم وأد المشروع في مهده لهذا السبب؟ أم أن مجموعة جبار ذاتها لم تر فيه قصة نجاح فآثرت توفير تكاليفه لصالح مشاريع أخرى؟ هل كان مجرد ورقة ضغط في وجه ياهو للإسراع في إتمام صفقة الاستحواذ؟ أم أنه لم يحظ بإدارة مؤمنة به حتى الأعماق لتدافع عنه وتجترح منه القيمة المضافة التي تليق به؟ هل وهل وهل … عديد الأسئلة تجول بخاطري، حاولت كثيرا ألا أكتب عنها في مدونتي هذه، لكنها خطوة إلى الوراء استغربتها وقد آلمتني كثيرا، وحزنت أنه لم تكن هنالك حتى ورقة نعوة توضح الأسباب والعوائق وتلخص تجربة هامة يجدر بها على الأقل أن توثق حتى تبقي الإيمان حيا في قلوب الآخرين.
الأوسمة: Arabic, Search
أرسلت فى لغة عربية, تقنيات الويب | 2 تعليقات »
28 نوفمبر 2010
يعد متصفح ثعلب النار Firefox أول منافس حقيقي يستطيع مجاراة القاعدة العريضة لمستخدمي متصفح Internet Explorer من شركة مايكروسوفت و يكسر احتكاره باقتطاع نسبة كبيرة نسبيا من برامج التصفح المستخدمة للإبحار عبر الشابكة (الإنترنت) والتي تشير آخر إحصائياتها إلى أن متصفح مايكروسوفت Internet Explorer يمتلك نسبة 51% من السوق فيما حصة متصفح ثعلب النار هي 31% (تتوزع باقي النسب على متصفح Google Chrome بنسبة 8% ومتصفح شركة أبل Safari بنسبة 5% وأخير المتصفح الأوروبي الشهير Opera بنسبة 2%)، وتعد إحدى أهم المزايا التي جاء بها هذا المتصفح والتي أدت إلى ازدياد شعبيته ما بين مطوري مواقع الويب بداية ومن ثم مستخدميها ومتصفحيها هو إمكانية توسعة قدراته وتخصيصها من خلال الإضافات Add-ins والتي تتمتع عملية تطويرها بكثير من السهولة مما أدى في نهاية المطاف إلى ظهور الملايين منها، إذ تتحدث الإحصائيات عن ما يفوق 150 مليون إضافة يتم تحميل الملايين منها إلى حواسيب المستخدمين بشكل شهري بمعدل يزيد عن مليون عملية تحميل يومية، هذا عدى عن الاستمرار بإضافة الآلاف شهريا (آخر الإحصاءات تشير إلى ما يزيد عن خمسة آلاف إضافة شهريا).
أقرأ باقي الموضوع »
الأوسمة: Firefox
أرسلت فى PHP, البرمجيات الحرة, تقنيات الويب | 3 تعليقات »