RSS

إطلاق الإصدار 6.0 من مكتبة PHP واللغة العربية

لقد تم إطلاق الإصدار 6.0 من مكتبة PHP واللغة العربية (ar-php) في 15 شباط / فبراير 2021 بعد نشاط متواصل في الفترة الأخيرة لننتقل بهذه المكتبة إلى مستوى جديد بإذن الله تعالى.

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

بعد عام تقريبا على إطلاق الإصدار 5.0 من مكتبة PHP واللغة العربية والذي تميز بتبسيط هيكليتها والعمل على مطابقتها للمعايير القياسية المعتمدة (مثل PSR-1 و PSR-12)، وكذلك نشرها على منصة GitHub لمشاركة الشيفرات البرمجية المفتوحة المصدر وإتاحتها بشكل رسمي عن طريق Composer على Packagist، ها نحن نبدأ في قطف ثمار ذلك الجهد بعد تضمين مكتبتنا في حزمة Pagisto للتجارة الإلكترونية المبنية على إطار عمل Laravel الشهير.

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

هذه الوظيفة لاتزال تجريبية وقيد التطوير والتحسين المستمر، حيث ينصب تركيزنا على توفير نتائج مقبولة لكن بموارد محدودة (من حيث سرعة المعالجة وحجم بيانات النماذج المطلوبة لعمل الخوارزمية)، وذلك لتناسب بيئة تطبيقات الويب العملية للمواقع الصغيرة والمتوسطة، فهي جهة الاستخدام ذات الأولوية في مكتبتنا. لذا فقد اعتمدنا على أفكار غير تقليدية كاستخدام نظرية الجذور الثنائية للغة العربية، وقمنا بتوظيف قوة النماذج والخوارزميات الإحصائية، وهو ما ساعدنا في الوصول إلى دقة تقارب %75 في تصنيف مزاج التعليقات إن كانت إيجابية أم سلبية بنموذج لايزيد حجمه عن 30 كيلوبايت (الاختبار تم على 100 ألف تقييم مصنفة ومنشورة على Kaggle).

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

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

في الختام، نتطلع شوقا إلى أسئلتكم ومقترحاتكم، بها ننمو ومعها نتطور، وإن أهديتمونا عيوبنا فسنكون لكم من الشاكرين.

مع أطيب الأماني
خالد الشمعة

 
أضف تعليق

Posted by في 15 فيفري 2021 بوصة PHP

 

إطلاق الإصدار 4.0 من مكتبة PHP واللغة العربية

screenshotلقد تم إطلاق الإصدار 4.0 من مكتبة PHP واللغة العربية في الثامن من شهر كانون الثاني / يناير 2016 بعد غياب دام قرابة الثلاثة أعوام منذ تقديم آخر إصدارات هذه المكتبة في بدايات العام 2013 وهو الإصدار 3.6.0 لتكون هذه بداية عهد جديد من عملية التطوير لمواكبة آخر المستجدات في عالم الويب وتقنياته. سنسعى في هذه المرحلة إلى زيادة تكاملية عمل وظائف المكتبة وتبسيط بنيتها الداخلية وواجهتها البرمجية، حيث تجدون بداية انعكاس هذا التوجه في إصدارنا العتيد 4.0 من خلال اعتماد نمط التحميل الكسول Lazy Loading للأصناف / الكلاسات الفرعية الداخلية. بمعنى آخر ليس المبرمج بحاجة بعد الآن إلى تحميل صريح للصنف الفرعي قبل استدعاء طرائق / توابع منه، وهكذا لم يعد مطلوبا منك كمطور أن تعلم البنية الداخلية للمكتبة وملفاتها بل عليك التركيز فقط على الوظائف التي ترغب باستدعائها، واترك مهمة تحميل الملفات ذات الصلة على آلية عمل الداخلية للمكتبة، وهو ما يعتبر خطوة جديدة على طريق التخلص من إرث البدايات حينما بنيت هذه المكتبة من ربط مكتبات صغيرة أخرى بوظائف متفرقة. من جهة أخرى فقد تم التخلص نهائيا من الصنف الفرعي CharsetC المخصص للتحويل ما بين مجموعات المحارف العربية المختلفة والذي كان ضروريا في فترة من الفترات نظرا لضعف الدعم المتوافر لتلك المحارف وعدم استقراره ما بين المخدمات المتنوعة، وقد تم تنحية وظائفها لصالح التابع iconv في لغة PHP والذي يقدم أداء أعلى وشيفرة برمجية داخلية أبسط وأكثر نظافة وبالتالي أقل عرضة للمشاكل والأخطاء.

المزيد…

 

الأوسمة: , , , ,

تحليل المكونات الرئيسية PCA

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

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

المزيد…

 
 

الأوسمة: , ,

إطلاق الإصدار 4.0 من مكتبة الكاشي للتوابع الإحصائية

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

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

المزيد…

 
 

الأوسمة: , ,

لغة R والتحليل الإحصائي – تحليل التباين ANOVA

.

R-logoيعد تحليل التباين ANOVA, Analysis of Variance واحدا من أكثر الأدوات شيوعا بالاستخدام في جعبة العاملين بالتحليل الإحصائي، لذا سنقوم في هذه التدوينة بتغطية موضوع تنفيذ تحليل التباين باستخدام لغة R وتفسير النتائج التي سنحصل عليها نتيجة تطبيق مثل هكذا تقنية وذلك من وجهة نظر تطبيقية بحتة تبتعد عن التجريد الرياضي وتركز على النواحي العملانية.

كما سبق وأن أشرنا في تدوينات سابقة، تعد لغة R من اللغات التي صعد نجمها حديثا وبشكل سريع بمجال البرمجة العلمية في قطاعي الإحصاء والمعلوماتية الحيوية (bioinformatics) حيث باتت معتمدة على نطاق واسع في كثير من الجامعات ومراكز البحث العلمية، وأصبحنا نرى استخدامها والإشارة إليها في المقالات المنشورة بالمجلات العلمية المحكّمة يزداد بشكل طردي ومتسارع، هذا عدى عن حقيقة كونها لغة حرة مفتوحة المصدر يخضع توزيعها لترخيص GPL الشهير. كل ذلك أدى إلى تزايد ما هو متوافر ومتاح على الشابكة (الإنترنت) من مصادر لها على توزع طيف تلك المصادر، فهناك الكتب الإلكترونية والدروس التعليمية وحتى المناهج الأكاديمية والدورات التدريبية إضافة إلى البرامج الجاهزة والمكتوبة بلغة R لتنفيذ هذه المهمة أو تلك، حتى أنها باتت تحظى ببعض الامتياز مقارنة بالعديد من العمالقة في قطاعي البرمجة الرياضياتية العلمية والإحصائية مثل SAS و SPSS وغيرهما، خصوصا من حيث توافر الأمثلة والتطبيقات للطرق والخوارزميات الحديثة، حيث يقاد هذا التوجه في معظمه من طرف الجامعات ممثلة بطلاب الدراسات العليا يحفّزهم على ذلك سهولة بناء الإضافات لهذه اللغة، ويعتبر هذا الأسلوب رغم ما قد يشوبه من نقاط ضعف تتعلق بموثوقية وجودة وغزارة تلك الإضافات الجديدة، والتي تتبع خبرة ومهارة مطوريها وناشريها، لكنها تبقى في القطاع العلمي والأكاديمي أفضل كثيرا من البدائل التجارية التي يعيبها إرتفاع ثمنها من جهة، ومن جهة أخرى بطئ إضافة التحديثات التي تعكس تطور القطاعات العلمية المختلفة، حيث أنها عادة ما تتبع دورة تجارية تتحكم بها الشركات المنتجة.

المزيد…

 

الأوسمة: ,

وجهة نظر

Arabicمنذ فترة أرسل الصديق خالد الحضري من المغرب المشاركة التالية إلى منتدى سوالف:

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

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

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

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

المزيد…

 

الأوسمة: ,

إطلاق الإصدار 3.6.0 من مكتبة PHP واللغة العربية

screenshotلقد تم إطلاق الإصدار 3.6.0 من مكتبة PHP واللغة العربية في العشرين من شهر كانون الثاني/يناير 2013 ليكون خاتمة الإصدارات الفرعية في سلسة النسخة الثالثة من هذه المكتبة، وهو ما سيسمح لنا بالتفرغ والتركيز على إضافة مكونات رئيسية جديدة ستظهر للعلن مع الإصدار الرئيسي القادم (وهو الإصدار 4.0.0)، وبالتالي حمل الإصدار الحالي 3.6.0 في جعبته العديد من التصويبات والتحسينات في أداء وظائف المكتبة الحالية، وبالأخص تحسين دقة الخوارزمية المستخدمة للتحويل ما بين نظامي التأريخ الهجري والميلادي، وذلك بعد أن تم إعتماد ما هو منشور من قبل المشروع الإسلامي لرصد الأهلة والذي يمتاز بهامش خطأ أقل كثيرا مما سبق وأن كان معتمدا في الخوارزميات المطبقة في مكتبتنا.

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

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

المزيد…

 

الأوسمة: ,

فصل في كتاب، بداية رائعة للعام الجديد!

iConceptقرائي الكرام أود أن أشارككم فرحتي بخبر نشر فصل ساهمت بتطوير الشيفرات البرمجية التي طبقت في خوارزمياته والتي تعنى بمواضيع تخص المعلوماتية الحيوية Bioinformatics وذلك باستخدام لغة Perl، هذا الفصل هو بعنوان Optimization of sequence alignment for microsatelite regions وهو الفصل 29 من كتاب Introduction to Sequence and Genome Analysis من منشورات iConcept Press Ltd.

 

الأوسمة: , ,

إطلاق الإصدار 3.0 من مكتبة الكاشي

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

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

المزيد…

 

الأوسمة: , ,

خطوة على طريق النضج، الإصدار 0.7 من الكندي

  • ff’x g;k fefhj
    هل تقصد: ببطء لكن بثبات
  • FF’X G;K FEFHJ
    هل تقصد: ببطء لكن بثبات
  • ٍمخصمغ لاعف سعقثمغ
    Do you mean: Slowly but surely
  • sLOWLY BUT sURELY
    Do you mean: Slowly but Surely
  • ببطء ، ( لكن )بثبات !
    تصبح: ببطء، (لكن) بثبات!

هذا ليس سحراً! إنها ببساطة أمثلة على تطبيقات مشروع الكندي، هل تعلم أنك تستطيع إضافة ميزة التصحيح هذه إلى صفحات موقعك دون أي تعقيدات حقيقية، فقط أضف بضعة أسطر برمجية إلى أسفل صفحتك والتي ستقوم بتحميل ملف المكتبة البرمجي والذي لايتجاوز حجمه 3 كيلوبايت وبالتالي لن يؤثر على سرعة موقعك، وتطبيق هذه المكتبة ليس محصورا بأصحاب المواقع المطورة بلغة PHP بل يمكن الاستفادة من وظائفها في أي موقع مهما كانت لغة البرمجة المستخدمة لتطويره، أو حتى إن كان موقع HTML بسيط غير تفاعلي.

المزيد…

 
تعليق واحد

Posted by في 22 أكتوبر 2012 بوصة PHP, لغة عربية, أخبار, إحصاء

 

الأوسمة: , ,