الثلاثاء، مايو 03، 2016

مرصد الأحمال على شبكة الكهرباء المصرية

البداية

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

نوه "طارق" في تدوينته إلى حقيقة أن التطبيق: 

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

أثارت التدوينة فضولي، فقمت بالتحقق من الـHTML code المكون للتطبيق، وأمضيت بعض الوقت أتفحصه لأجد أي نمط يمكن الاعتماد عليه لمعرفة الحالة الحالية للحمل. بعدما توصلت لهذا النمط قمت بكتابة برنامج لاستخلاص هذه البيانات بتقنيات الـweb scraping. في البدء كتبت التطبيق بلغة البرمجة Python.

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

كانت هذه هي اللحظة التي قررت فيها البناء على البرنامج الذي كتبته ليحل المشكلتين المذكورتين: 

  1. ليقوم بتخزين هذه البيانات حتى يمكنني الرجوع إليها عند الحاجة.
  2. ليوفر هذه البيانات في صيغة يمكن استخدامها عن طريق الحاسوب.

قمت بإعادة تطوير البرنامج الذي كتبته بلغة PHP التي يدعمها مزود خدمة الاستضافة الذي أستخدمه، ثم قمت في اليوم التالي بوضعه على دومين فرعي من موقعي الشخصي: power-grid-status.mos3abof.com 

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

وكانت تلك بداية الرحلة.

قمت بعدها بشراء اسم النطاق -Domain name- الخاص بالموقع في 15 سبتمبر عام 2014، ليصبح عنوان الموقع:  www.gridstatusnow.com


تسعة أشهر مرت الآن منذ أطلقت "مرصد حالة الأحمال على شبكة الكهرباء المصرية". حدث فيها الكثير. سأقوم بذكر أمور متفرقة هنا دون ترتيب زمني محدد. 

الظهور الإعلامي الأول، والأخير حتى الآن! 


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

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

يمكنكم مشاهدة المداخلة-من الدقيقةالسابعة عشر إلى الدقيقة السابعة والعشرين- بالضغط هنا. 

تطبيقات تستخدم واجهة التطبيقات البرمجية الخاصة بالمشروع 

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

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

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

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

كما ترى في الصورة أعلاه، كل سطر يمثل يوما من أيام الشهر. كل مربع في اليوم يمثل ساعة. ويبدأ اليوم من يسار السطر، عند منتصف الليل، إلى يمينه، عند منتصف ليل اليوم التالي. 

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

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

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

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

الشيفرة المصدرية 

قمت بنشر الشيفرة المصدرية -الكود- على منصة Github تحت رخصة البرامج الحرة GNU GPL version 2.0. منذ نشر الكود وحتى اليوم هناك 80 تحديثا (commit) للفرع الرئيسي من الكود (master branch). تلقيت تحديثات من بعض الأشخاص، قمت بإدراج بعضها، ولازلت أراجع البقية للتأكد من صلاحيتها وموائمتها للمشروع. 

إذا كنت مطورا، يمكنك زيارة الـrepository الخاصة بالمشروع من هنا. يمكنك أن تشارك في تطويره، أو أن تستفيد بالكود كما تريد طالما التزمت بشروط الرخصة GNU GPL v2.0. 

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

مصداقية البيانات 

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

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

لماذا أفعلها؟! 

قديما قال لي أبي -رحمه الله-: 
إذا كانت زكاة المال جزءا من المال، فزكاة العلم العلم كله"
لا أدري هل هي مقولته هو، أم أنه اقتبسها من مكتبته العملاقة، ولكنها شكلت جزءا ليس باليسير من وجداني وأنا أكبر. وعندما تعرفت للمرة الأولى على حركة البرمجيات الحرة والمصادر المفتوحة أدركت أنني وجدت كنزا. وكلما تعمقت أكثر، عشقت هذا العالم أكثر. 

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

هناك أسباب أخرى بالطبع، مثل أن ذلك يتيح لي فرصة التعلم من أقراني. أكثر ما يسعدني هو ملاحظات ومشاركات المطورين الآخرين، الذين أعرفهم والذي لا أعرفهم. كما يقول الوغد المفضل عندي "لينوس تورفالدس"، مطور نواة نظام التشغيل linux: 
With many eyeballs, all bugs are shallow
لا أجد ترجمة مناسبة لها، ولكن دعونا نقول: 

كلما زادت الأعين المدققة، كلما كان حل المشكلة أكثر سهولة
لهذه المقولة قصة ربما تهتمون بمطالعتها. 

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

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

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

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

لزيارة موقع المرصد اتبع الرابط التالي: www.gridstatusnow.com 

الاثنين، مارس 31، 2014

أسطورة نور عينيا

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

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

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

الأحد، ديسمبر 01، 2013

مصر المذكورة!


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

هي صحيح ذكرت، بس ذكرت ليه؟! هو أي ذكر بيبقى تكريم؟!!! ما هو قوم لوط وعاد ذكروا في القرآن برضه!!

ذكرت علشان ربنا يحكي لنا قصة فرعون .. أكتر من مرة!

ذكرت علشان السجن الوحيد اللي ذكر في القرآن هو سجن مصر!

ذكرت علشان المسئولين في البلد دي خولات بطبعهم من زمان فشخ .. علشان عزيز مصر حبس نبي الله يوسف بعد ما لفق له تهمة علشان مراته كانت عاوزة تنام معاه في الحرام .. ولما عرف لفق له تهمة، وكمل عادي مع مراته ومش بعيد يكون ما حلقش شنبه كمان!

"ثم بدا لهم من بعد ما رأوا الآيات ليسجننه حتى حين" .. ظهرت براءته ومع ذلك النظام قال خليه شوية

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

ذكرت علشان فرعون كل العصور بيستخف الشعب ده وبيطيعوه على طول ويفوضوه ويسيبوه يقتل فيهم ويقتلوا معاه كمان ويعذبوا ويسكتوا على الظلم وقشطة جدا معانا كشعب من زمان

ذكرت علشان تحكي لنا عن الجشع البشري في أبشع تجلياته في قصة "قارون" .. اللي كان واحد عادي من الشعب بس أول ما ربنا إداه مال وعلم من نعيمه فشخ الناس..

ذكرت علشان كل البشرية تتعظ مننا وما تعملش الخراء اللي احنا بنعمله ده .. بس احنا الوحيدين اللي عمرنا ما اتعظنا من تاريخ 7000 سنة، لا وبنقعد نتفشخر بيه واحنا ولا عارفين عنه حاجة أصلا!

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

مصر فخ وامتحان كبير فشخ مش وطن



نُشِرَت أولا على شبكة التواصل الاجتماعي فيسبوك : https://www.facebook.com/mos3abof/posts/10152031441041047

الأحد، نوفمبر 29، 2009

فقط في المحروسة!


البلد الوحيدة اللي كل الناس فيها مهندسين!

الأربعاء، أكتوبر 07، 2009

الأحد، أكتوبر 04، 2009

طبق سلطة!


في مرة كنت بأتغدى أنا وأميرة وعملت طبق السلطة بتاعي كده :)

الأربعاء، سبتمبر 16، 2009

Alien!

زوجتي العزيزة أميرة قامت برسم كائن ما -من الزهرة على الأرجح- ومازالت مقتنعة حتى لحظة كتابة هذه السطور أنه يشبهني تمام الشبه!!





السبت، سبتمبر 05، 2009

تاويته!


الزمان : اليوم (5 من سبتمبر 2009)
المكان : مطار القاهرة .. صالة رقم 3
الحدث : تم بحمدلله .. تاوينا أسامة وركبناه الطائرة المتجهة إلى ليبيا..
شعار اليوم : وها هو الكحول .. يتجه إلى مصير مجهول!


شركاء الجريمة : شريف وحسام..


الاثنين، يونيو 29، 2009

مسابقة المبدعين من نوكيا..

وصلتني صباح اليوم هذه الرسالة.. أنشرها لكم كما هي عسى يستفيد بها أحد..
--------------------
عزيزي مصعب،

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

الحملة الأولى هي مسابقة لبناء التطبيقات: آخر موعد لها هو الثلاثاء القادم ٣٠ يونيو / حزيران، لذا أفضل ان تخبر الجميع ممن لديه تطبيق و يرغب في ارساله من أجل فرصة للفوز بجائزة مالية.

الحملة الثانية فهى لبرنامج تمويلى يدعى " Open Screen Project Fund" – وهي دعم مالي بقيمة ١٠ مليون دولار مقدم للمبرمجين العاملين بتقنية الفلاش لتطوير تطبيقات تعمل على عدة منصات.

لمزيد من المعلومات يمكنك زيارة المواقع التالية:
http://www.callingallinnovators.com/flash.aspx
http://www.openscreenproject.org/developers/get_started.html

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

شكرا جزيلا
إيمان
http://www.wearesocial.net
---------------------
انتهت الرسالة..

الأحد، يونيو 28، 2009

أوبونتو 9.04 وصل..


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

الإصدار اللي معايا دلوقتي 9.04 واسمه الحركي "جاونتي جاكالوب" (Jaunty Jackalope)..
نزلته على اللابتوب الشخصي بتاعي "artie"..

سريع جدا في الـboot time..
وشكله أظرف كتير من الإصدارات اللي قبله..

تحية كبيرة جدا للناس في كل من :
- canonical : الشركة المالكة للعلامة التجارية لأوبونتو.
- ubuntu.com نفسهم.

وتحية شخصية للحاج mark shuttleworth

الخميس، مايو 28، 2009

رياح التغيير


هاي عليكم جميعا..
زهقت من التصميم القديم وقررت بعض التغيير..
دي نسخة تجريبية من template موجود وعدلت فيه شوية حاجات..

الجمعة، مارس 13، 2009

23


الثالث عشر من مارس عام 2009..
أصبح عمري 23 عاما
ومتفائل أنا بعام بدأته معها،
وأدرك أن الله يحبنا أكثر مما نتخيل،
وأَنَّ القمر جميلٌ.. كطلعة وردة، وأني وسيم . . لأني لديكِ!**

-----
* الصورة من يوم سابق أحبه جدا..
** شكرا محمود درويش

الخميس، فبراير 12، 2009

العيال كبرت!


مش مصدق .. بقى عندِك سنة يا لالا؟!!

قصاقيص ورق


في غياهب أدراج مكاتبنا قصاصات أوراق مهترئة تحمل الكثير من عبق الماضي

اليوم وجدت هذه الصغيرة ولا أذكر حتى الآن متى خطتها يدي..


أحببت حزني لأني *** أراه خِلِّي ومنَّي

رأيت فيه المرايا *** لذكريات تُغَنِّي

صادقته منذ ضاعت *** شمس الأحبة مني

أبي وأمي وكانا *** نورا لقلبي وعيني

كانا وكنت وكنا *** ياليت يجدي التمني"


رب ارحمهما كما ربياني صغيرا
..

الثلاثاء، يناير 20، 2009

(f)

هام وعاجل إلى أميرتي ..


في كلمة مهمة عاوز أقولهالك ..


حاسسها أوي أوي ..


أميرة ..



بس خلاص ;)