بلدي مفتوحة المصدر وردبريس في المكونات: الدروس المستفادة من الافراج عن خطأ

“كيف كان أسبوعك؟”

“لا شيء غير عادي جدا، ذهبت على شاشة التلفزيون أمس لمساعدة المستخدمين على فهم خرق لاست باس. كان يعمل على بويربوانتس للإحاطة، أوه، وأنا تحطمت بطريق الخطأ في ما بين 10،000 و 70،000 مواقع ويب غير ربحية”.

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

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

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

في 16 مارس، تولى العمل الترميز للتبرعات السلس. لأن البرنامج المساعد كان لديه شيء مثل 56،000 تثبيت في ذلك الوقت (وإضافة حوالي 2،500 في الأسبوع)، كان لديها أيضا قاعدة مستخدم نشط جدا. هؤلاء الناس نشرت بانتظام أسئلة الدعم على لوحات WordPress.org وكان لديها الكثير من الاحتياجات للتغييرات في وظيفة البرنامج المساعد.

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

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

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

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

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

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

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

ستار تريك: 50 عاما من مستقبلية إيجابية والتعليق الاجتماعي جريئة، سطح مايكروسوفت وقال الكل في واحد بيسي لعنوان أكتوبر إطلاق الأجهزة؛ اليدين مع اي فون 7، أبل ووتش جديدة، و إيربودس؛ جوجل تشتري أبيجي ل 625 مليون $

كل شيء، وضعت حوالي 360 ساعة في البرنامج المساعد – كل يوم عطلة نهاية الأسبوع (والليل) بالإضافة إلى بعض الليالي الحرة خلال الأسبوع – منذ 16 مارس. من النفقات الجيب تحولت لتشغيل ما يقرب من 1000 $. كنت بحاجة إلى ترقية أدوات تطوير بلدي (التي كانت سنتين من تاريخه). أنا أيضا بحاجة لشراء ترخيص التوزيع لمكتبة تستخدم لدفع البرنامج المساعد. وقال كل ذلك، أن يكلف حوالي 500 $.

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

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

لذلك، نعم، 360 ساعة. حوالي ألف باكز. كل وقت فراغي. كل جهد المتطوعين.

الابتكار في السوق؛ M2M السوق ترتد مرة أخرى في البرازيل؛ 3D الطباعة؛ 3D الطباعة على اليدين: العمل مع الخشب؛ المصرفية؛ شركاء كومبانك مع باركليز للدفع عبر الهاتف المتحرك، فينتيش الابتكار؛ الابتكار؛ تهدف فيكتوريا في مجال الأحلام للمواهب التكنولوجيا المحلية

إذن أجل. الذي حدث.

نعم، حسنا، الكثير لذلك

أصدرت لي التبرع السلس 4.0 إلى مستودع WordPress.org ليلة الأحد. على الرغم من كل هذا العمل، وعلى الرغم من بلدي الاهتمام المستمر لتحديث سلس وكسر مجانا، حصلت على دفق مستمر من “موقع الويب الخاص بي مكسورة، بلدي البرنامج المساعد لن ترقية” الرسائل ابتداء من صباح الاثنين.

اللعنة !

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

كل المساعد لديه كتلة تعليق البرنامج المساعد في ملف رئيسي واحد الذي يعرف البرنامج المساعد. في حالة التبرعات السلس 3.3، كان كتلة التعليق المساعد في ملف يسمى دغس-donate.php، وتقع في دليل السلس التبرعات.

عندما اعتمدت لأول مرة السلس التبرعات وبحثت في أفضل الممارسات، قرأت أنه من الأفضل أن يكون الملف المساعد الرئيسي والمجلد المساعد استخدام نفس الاسم. لذلك أنا خلقت سلس-donations.php وانتقل كتلة تعليق البرنامج المساعد في هذا الملف. ثم انتقلت دغس-donate.php إلى مجلد قديم مع رمز قديم آخر.

اعتبرت فكرة جيدة في ذلك الوقت.

كما اتضح، عندما ينشط وردبريس البرنامج المساعد، فإنه يسجل زوج المجلد / الملف الرئيسي في الخيار active_plugins في الجدول wp_options. وهذا يعني أن وردبريس سجلت السلس التبرعات / دغس-donate.php كما معلومات البرنامج المساعد النشط. عند تحديث البرنامج المساعد، تغيرت الملفات في مجلد السلس التبرعات، وكان هناك لم يعد سلس-التبرعات / دغس-donate.php الملف حيث توقع وردبريس ذلك.

وتحطمت الترقية. الصعب.

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

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

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

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

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

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

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

بالمناسبة، أنا أفعل المزيد من التحديثات على تويتر والفيسبوك من أي وقت مضى. تأكد من اتباع لي على تويتر فيDavidGewirtz وفي الفيسبوك في Facebook.com/DavidGewirtz.

؟ M2M السوق مستبعد مرة أخرى في البرازيل

الطباعة 3D اليدين: العمل مع الخشب

؟ شركاء كومبانك مع باركليز للدفع عبر الهاتف المتحرك، فينتيش الابتكار

تهدف فيكتوريا في مجال الأحلام لمواهب التكنولوجيا المحلية

وإليك ما حدث …

هناك بعض البتات من الأخبار الجيدة في هذه القصة

Refluso Acido