تجارب لم تكتمل بنجاح

السلام عليكم ورحمة الله

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

التجربة اﻷولى كانت بعدما قمت بعمل master/slave replication في قاعدة بيانات MySQL وبعدما أفادني بعض اﻹخوة عن المحاذير في استخدامها تجارياً فقررت أن أقوم بعمل نفس التجارب في قاعدة البيانات PostgreSQL. فجلست فترة يوماً كاملاً أحاول تشغيل هذه الميزة المهمة والتي لابد منها في اﻷنظمة الكبيرة والحساسة لإسترجاع وحفظ البيانات. وقد وجدت عدة تدوينات باللغة اﻹنجليزية تكتب شرح لطريقة عمل الـ replication في قاعدة بيانات PostgreSQL. ولكن للأسف كلها لم تنجح. فتوقفت عند نهاية اليوم، تقريباً قبل اذان المغرب على أن أقوم بإعادة تلك التجربة في يوم اﻹجازة التالي.

في يوم اﻹجازة التالي قُمت بإعادة الكرّة وكُنت قد قرأت مزيداً من المعلومات حول كيفية عمل الـ replication والـ wal logs في قاعدة البيانات PostgreSQL، لكن للأسف لم تنجح تلك التجارب لليوم الثاني من التجارب. وفي نهاية اليوم قررت اﻹنتقال إلى MariaDB والتي هي فرع من الـ MySQL والتي تتميز بسهولة عمل النسخ اﻹحتياطي الحي في محرك قاعدة بيانات أخرى. وقد نجحت تجربة عمل master/slave replication في MySQL بعد ساعة واحدة فقط تقريباً من أول محاولة لها، ولم يكن هُناك شرط أن تكون نفس النسخة في المخدمين ولا يوجد شرط أن تكون نفس المعمارية 32bit /64bit. وعند تغيير مخدم قاعدة البيانات إلى MariaDB في الجهاز الرئيس واﻹبقاء على نسخة MySQL في الجهاز التابع لم تحدث أي مشكلة وعملت آلية النسخ اﻹحتياطي الحي بسلاسة.

بعد إستبدال قاعدة بيانات MySQL بـ MariaDB قُمت بتجربة اﻹتصال بها بواسطة Java وبرنامج MySQL Workbench وقد نجحت تلك التجارب، فقُمت بالبحث عن استخدام MariaDB في اﻷنظمة التجاربة، قد قُمت بوضع سؤال في الموقع التابع لهم ليصلني الرد بعد بضعة أيام أنه لا حاجة لترخيص من شركة أوراكل في استخدام برامج تجاربة بواسطة MariaDB لكن يجب أن استخدم مكتبة MariaDB مع لغات البرمجة التي استخدمها، علماً بأنه يُمكن الوصول لها بإستخدام مكتبة MySQL. وقد وصلني الرد في البريد من Monty نفسه وهو مؤسس قاعدة بيانات MySQL والذي قام بعمل فرع منها هو MariaDB

التجربة الثانية كانت محاولة إستخدام أداة التطوير Eclipse لكتابة برامج جافا. وفي الحقيقة عملت عليها عدة تجارب كانت خلال سنوات، فكل مرة أقوم بعمل تجربة لكتابة برامج بسيطة وغالباً لا انجح خصوصاً في برامج ذات واجهة رسومية. فقط استطعت كتابة برامج طرفية command line. تخيل أنك تقوم بتحميل أداة تطوير لها سنين طويلة من التطوير والدعم من قبل عمالقة شركات الكمبيوتر في العالم مثل شركة IBM، وبعد تحميل ملف بحجم أكثر من مائة ميغابايت لاتستطيع عمل برنامج واحد يحتوي على فورم وزر واحد، بل تحتاج لتحميل plugin حتى تتمكن هذه اﻷداة العريقة من إنشاء برامج ذات واجهة رسومية، حتى بعد تثبيت تلك اﻹضافة لم تعجبني الطريقة لعمل برامج واجهة رسومية، على اﻷقل مقارنة بأدوات تطوير أخرى مثل NetBeans و Lazarus.

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

One thought on “تجارب لم تكتمل بنجاح

  1. “…وتشغيله لأول مرة بسهولة” ، فعلا من المهم جدا ان تكون عملية تثبيت البرنامج والتشغيل لاول مرة غير صعبة، مثلا عندما حاولت كتابة برناج C++ ب netbeans طلب مني كتابة makefile ، بمعنى انه يجب علي قراءة بعض الدروس عن makefile قبل كتابة اول برنامج،لكن في حالة الجافا يقوم netbeans بكتابة build.xml بنفسه. طبعا الامر لا يقتصر على بيئات التطوير بل يشمل كل البرامج.

أضف تعليقاً

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s