Mohamed Lahlah

الأعضاء
  • المساهمات

    9
  • تاريخ الانضمام

  • تاريخ آخر زيارة

السُّمعة بالموقع

6 Neutral
  1. شهد قطاع صناعة الألعاب في الأونة الأخيرة تطورًا كبيرًا وفي كلّ عام يزداد الإقبال عليها أكثر مما قبل؛ فصُمّمت الألعاب الإلكترونية في عام 1960، إذ كانت تحتاج لحواسيب ضخمة لم تكُ متاحة للعموم آنذاك. وبعد ذلك بعشر سنوات تطورت الألعاب لتصبح تجارية في عام 1970، وذلك مع مجيء أول أجهزة الألعاب الإلكترونية والحواسيب المنزلية. ونظرًا إلى القدرات المنخفضة للحواسيب آنذاك كان بإمكان مطوّر واحد أن يُنتج لعبة بكاملها. ولكن عند مطلع القرن 21 ومع تزايد قدرات الحواسيب على معالجة البيانات، وتصاعد توقعات المستهلك أصبح من المستحيل أن ينتج مطور واحد لعبة تناسب هذا العصر بل ستحتاج إلى فريق عمل متكامل من منتجين ومصممين ومبرمجين ومهندسي صوت ومؤلفين موسيقيين ومصممي المراحل والعديد من الإختصاصات الأخرى لإنتاج لعبة تناسب هذا العصر. يوجد في وقتنا الحالي العديد من منصات الألعاب، مثل أجهزة البلايستيشن (PlayStation) أو أجهزة الإكس بوكس (Xbox) إذ أن لكل منصة منصة ألعاب صُممت لتُعلب عليها فقط، والبعض الأخر من الألعاب مخصصة لأجهزة الحواسيب (مثل الويندوز أو الماك أو اللينكس)، أو بعض الألعاب الأخرى المخصصة لمتصفح الوِب (تدعى ألعاب المتصفح [Browser Game]) والّتي سنناقشها اليوم ونعلمك كيفية إنشاء لعبة بسيطة تعمل على المتصفح. ألعاب المتصفح (Browser Game) عادةً ما تُعرف ألعاب المتصفح بألعاب الوِب، وهي نمط من الألعاب الّتي تُلعب باستخدام متصفح الإنترنت (مثل غوغل كروم أو أوبرا أو أي متصفح أخر) وذلك من خلال طلب عنوان موقع اللعبة، وبعد تحميل الموقع تظهر لدينا اللعبة ويمكننا بعدها البدء باللعب. غالبًا ما تُصمم هذه الألعاب باستخدام تقنيات الوِب القياسية (مثل: HTML5، و CSS3، و JavaScript وغيرها) أو بتقنيات أخرى مثل أدوبي فلاش ولكن جميع هذه التقنيات لديها إمكانيات محدودة؛ وذلك بسبب مسائل التكاملية والجودة مع المتصفح، ولكن مع ذلك فإن هذه التقنيات هي الّتي تجعل هذه الألعاب تعمل على جميع المتصفحات. واجهت ألعاب المتصفح منذ بدايتها العديد من التحديات، بعضها من ناحية الرسوميات، وبعضها الأخر من ناحية الأداء والسرعة، وبعضها من ناحية الضغط على المخدمات الّتي تستضيف هذه الألعاب (وذلك بسبب كثرة العناصر المحملة من ملفاتٍ وصورٍ والعديد من المكونات الأخرى الموجودة في اللعبة). ولكن ما لبثت هذه التحديات بالظهور حتى أُوجدت لها حلولٌ عديدة فعّالة، ولكن مع ذلك فإنها لم تستطع أن تنافس الألعاب التقليدية وخصوصًا مع الفارق الكبير بين طريقة تعامل كلّ منهم مع موارد الحاسوب. حجزت ألعاب المتصفح لنفسها مكانًا في الألعاب التنافسية متعددة اللاعبين (مثل لعبة الشطرنج ولعبة البلياردو وعلى غرارها من الألعاب)، وهي عادةً ما تركز على الجانب الإجتماعي من اللعبة أكثر من اللعبة بحد ذاتها، إذ تمنح إمكانية الدردشة بين اللاعبين أثناء اللعب، وإمكانية إنشاء ملفاتهم الشخصية (User Profile)، وبالإضافة إلى نظام تنافسي مبني على النقاط والكؤوس مما يعزز روح المنافسة ويضيف متعةً أخرى للعبة. نشأة وتاريخ صناعة ألعاب المتصفح وتطورها ظهرت ألعاب متصفح الوِب في بداية التسعينات من القرن الماضي ولكن لم تبدأ بالانتشار إلا في عام 1996 تزامنًا مع ظهور برنامج Macromedia Flash (المستخدم لتعديل الرسوميات) ولغة البرمجة أكشن سكربت (Action Script) وسرعان ما شكّلا مع بعضهما أول أدوات صناعة ألعاب المتصفح آنذاك. وبعد عام واحد أطلقت شركة Sun Microsystems موقعها الخاص هوت جافا (HotJava) لاستضافة الشيفرات البرمجية المحمولة للغة جافا (Java applet) وتعمل هذه الألعاب على جميع المتصفحات الّتي تدعم لغة جافا، والّذي كان شرارة البدء لعصر ألعاب المتصفح. وبعد النجاح الكبير لألعاب المتصفح والّذي لوحظ من خلال الازدياد الكبير لعدد الأشخاص المنضمين لمواقع ألعاب المتصفح والإقبال الشديد عليها، مما أدى لاهتمام بعض الشركات الكبرى لهذا النمط من الألعاب من بينها شركة ياهو والّتي انضمت إلى هذا المجال لتطلق موقعها Yahoo! Games في عام 1998، والّذي يحتوي على العديد من الألعاب ولتصبح بذلك من أوائل شركات صناعة ألعاب المتصفح آنذاك. وفي عام 2016 أعلنت الشركة عن إغلاق الموقع بسبب عدم تمكن الفرق البرمجية لشركة ياهو من حل المشاكل المتزايد للتقنيات المستخدمة في بناء الألعاب وعدم تلبية هذه الألعاب لمتطلبات الوِب الحديثة كلّ هذه العوامل أدت إلى إغلاق موقع في شهر فبراير من عام 2016. الفرق بين ألعاب المتصفح والألعاب التقليدية تختلف ألعاب المتصفح عن الألعاب التقليدية بعدة نواحي أهمها: 1. طريقة اللعب إن ألعاب المتصفح تتطلب الاتصال الدائم بالإنترنت طوال زمن اللعب لأنه من دون الاتصال بالإنترنت لا يمكن تشغيل الألعاب وذلك لأنها مخزنة على مخدمات موجودة عبر الإنترنت وليس في الحاسوب الشخصي. على عكس الألعاب التقليدية إذ أن أغلبها لا يتطلب اتصالًا دائمًا بالإنترنت. وعلى صعيد أخر في دراسة أجراها باحثون من جامعة ماينتس الألمانية على 8203 شخص من لاعبي لعبة المتصفح الشهيرة ترافيان (Travian) تبين لهم أن ألعاب المتصفح يُستمتع بها أساسًا بسبب الجانب الاجتماعي منها الّذي ينطوي عليه خصائص الوقت، والمرونة العالية في العب، وسهولة الاستخدام، والتنافس بين اللاعبين، وكما أشارت الدراسة نفسها أن سهولة الوصول إلى هذا النوع من الألعاب (لعبة ترافيان-وبشكل عام جميع ألعاب المتصفح) أدت إلى زيادة عدد مرات فتح اللعبة بالموازنة مع الألعاب التقليدية، ولكن مدة جلسات اللعب المتواصلة قصيرة. 2. مصادر الدخل للألعاب يختلف اعتماد ألعاب المتصفح على مصادر الدخل فمنها من يعتمد على عرض إعلانات داخل اللعبة (مثل إعلانات غوغل أدسنس وغيرها)، أو إلى عرض عمليات الشراء داخل اللعبة للحصول على مميزات أو نقاطٍ تتفوق بها على المنافسين، ومنها من تعتمد على الاشتراك الشهري أو السنوي، والبعض الأخر يعتمد على شراء اللعبة لمرة واحدة فقط. وفي بعض الحالات النادرة تكون الألعاب مجانية بالكامل. وفي المقابل فإن غالبية الألعاب التقليدية تعتمد على شراء اللعبة لمرة واحدة بالإضافة لعمليات الشراء داخل اللعبة في حال كانت تُلعب على الإنترنت. 3. استخدام موارد الحاسوب تعدّ ألعاب المتصفح ذات رسوميات منخفضة بالموازنة مع الألعاب التقليدية وذلك من كونها تتعامل مع إمكانيات المتصفح والموارد الّتي يستخدمها، على عكس الألعاب التقليدية الّتي تتعامل مع موارد الجهاز تعاملًا مباشرًا ولكن على صعيد أخر تستهدف ألعاب المتصفح شريحة كبيرة من المستخدمين وعلى كافة الأجهزة وخصوصًا أصحاب الأجهزة الضعيفة والمتوسطة. وعلى صعيدٍ آخر إن غالبية الألعاب التقليدية تحجز مساحة كبيرة من سعة القرص الصلب على عكس ألعاب المتصفح، كما تستهلك الألعاب التقليدية قدرًا كبيرًا من ذاكرة الوصول العشوائي (RAM) بالموازنة مع ألعاب المتصفح مما يجعل ألعاب المتصفح خفيفة جدًا على موارد الحاسوب مهما كانت مواصفاته. مشاكل وحلول وكما ذكرنا سابقًا عانت ألعاب المتصفح العديد من المشاكل فما أن تُحلّ مشكلة حتى تظهر أخرى. وإن من أبرز المشاكل الّتي واجهتها هي: معالجة الرسوميات إن تصاعد توقعات المستهلكين أثقلت كاهل المطورين من ناحية رفع جودة الألعاب وتعزيز تجربة المستخدم، وفي ظل الإمكانيات المحدودة لألعاب المتصفح والّتي جعلت من عملية مواكبة تطور الألعاب عمليةً شاقةً جدًا. ومن أكثر المشاكل الّتي تواجه مطوري ألعاب المتصفح هي معالجة الرسوميات ذات الأبعاد الثنائية أو الثلاثية والّتي شكلت لفترة طويلة سدًا منيعًا في تطور هذا النمط من الألعاب. كان ذلك إلى أن جاءت تقنية WebGL والّتي سمحت لنا بكتابة رسوميات ثلاثية الأبعاد في صفحات الوِب باستخدام جافا سكربت (JavaScript) عبر العنصر canvas (وكما تحدثنا في عدة مقالات عن هذه التقنية وأهميتها). ولكن تقنية WebGL لا تُنشِئ «عناصر» على الصفحة، إذ تتعامل مباشرةً مع البكسلات؛ ولذا نقول عن تقنية WebGL أنّها تقنيةٌ منخفضة المستوى: إذ أنّها توفِّر تحكمًا دقيقًا بالفضاء ثلاثي الأبعاد. والجدير بالذكر أن هذه التقنية، WebGL، مبنية على الواجهة البرمجية OpenGL ES والّتي هي نسخة فرعية من OpenGL. ولكن ماهي OpenGL؟ (Open Graphics Library) هي عبارة عن واجهة برمجية رسومية مستقلة تعمل على مختلف أنظمة التشغيل، ومتوافقة مع عدة لغات برمجية، وصُممت لإنتاج رسوميات ثنائية وثلاثية البعد سواءً المعقدة منها أو البسيطة من خلال تركيبها من مكونات هندسية بسيطة مثل المضلعات أو المثلثات أو المستقيمات …إلخ، وكما أنها تشكّل همزة الوصل بين وحدة المعالجة المركزية CPU ووحدة معالجة الرسوميات GPU. أما OpenGL ES (والتي تعرف اختصارًا للعبارة Open Graphics Library for Embedded Systems) فهي نسخة فرعية من OpenGL الرئيسية، ومبنية خصوصًا للأنظمة المدمجة مثل: الأجهزة الذكية وأجهزة التابلت …إلخ. وهي الّتي بنيت عليها تقنية WebGL. ومع أن WebGL مبنية على OpenGL ولكن يوجد فرق بين إمكانيات كلٍّ منهما وهذه بعض النقاط الّتي تختلف فيها WebGL عن OpenGL. تملك WebGL المميزات التالية: مبنية بلغة جافا سكربت. تُستخدم خصيصًا لمعالجة رسوميات المتصفح. إمكانياتها قليلة بالموازنة مع OpenGL لأنها مبينة على نسخة فرعية من OpenGL وهي OpenGL ES. سهلة التعلم والاستخدام. أما OpenGL فلديها المميزات التالية: مبنية بلغة C. تُستخدم خصيصًا لمعالجة رسوميات تطبيقات سطح المكتب والألعاب. إمكانياتها كثيرة نظرًا لأنها تتخاطب مع العتاد تخاطبًا مباشرًا. صعبة التعلم والاستخدام. وبناءً على ذلك تعدّ WebGL خيارًا جيدًا لمعالجة الرسوميات في المتصفح وتصييرها. الضغط على الخادم تعدّ مشكلة الضغط على المخدم وتوقفه عن العمل من أبرز المشاكل المطروحة، إذ أن بنية ألعاب المتصفح المؤلفة من ملفاتٍ (HTML أو CSS أو JavaScript أو أي ملفات أخرى) وصورٍ والمقاطع الصوتية وفي بعض الأحيان مقاطع فيديو تجعل من استقرار المخدم المضيف وبقائه بالخدمة مهمةً صعبةً للغاية بل شبه مستحيلة، وخصوصًا في حال استقبال الموقع عددًا كبيرًا من الزوار في آنٍ واحد. ولقد ظهر في الأونة الأخير حلٌ عملي ومناسب جدًا لهذه المشكلة وهو استخدام الاستضافة السحابية. ولكن ما هي الاستضافة السحابية؟ هي خدمة استضافة تُمكّن العملاء من الاستفادة من خدماتها بقدر ما يحتاجون إليه، اعتمادًا على مطالب مواقعهم على الإنترنت، وأنهم سيدفعون فقط مقابل ما يستخدمونه. وتعتمد الاستضافة السحابية على مفهوم موازنة الحمل (Load Balancing) والّذي يوزع الأحمال (الزوار) على أكثر من خادوم لتحقيق أكبر سرعة استجابة لموقع الوِب. ومن أبرز المميزات الّتي تقدمها الاستضافة السحابية هي: الوثوقية: بدلًا من استضافة الموقع على خادم واحد مادي يستضاف الموقع على قسم افتراضي إذ يستمد موارده من شبكةٍ واسعةٍ من الخوادم المادية. أي أنه في حال توقف أحد الخوادم لن يؤثر ذلك على توافر الموقع وسوف يستمر بسحب الموارد من شبكة الخوادم المتبقية. المرونة: تبقى موارد الموقع متاحة حتى في حال ارتفاع حركة الزوار أو ازدياد الطلبات على الموقع، أو طلب موارد إضافية تبقى إمكانية الوصول للموارد سلسة. الدفع على قدر الاستخدام: يدفع العميل فقط على قدر ما يستخدم، أي ليس هنالك أي هدر في حال كان الطلب أقل من المعتاد. صناعة ألعاب المتصفح تستخدم العديد من اللغات البرمجية لتصميم ألعاب المتصفح ولكل لغة خواص معينة تميزها عن الأخرى. فعلى سبيل المثال يمكنك بناء لعبة على محرك Unity وذلك باستخدام برنامج Unity3D باستخدام لغة #C أو لغة ++C. والّذي يمكنك بناء ألعاب متميزة نظرًا لإمكانياته القوية والكبيرة (ولقد تناولنا في سلسلة سابقة عن أبرز مميزات هذا البرنامج ننصحك بالاطلاع عليها). وكما يمكنك استخدام تقنيات الوِب القياسية مثل HTML5/CSS أو PHP أو حتى لغة جافاسكربت (JavaScript)، والّتي تعدّ من الخيارات الجيدة لبناء هذه النوع من الألعاب نظرًا من كونها تتيح إمكانية عالية لتفاعل المستخدم مع الموقع (في حالتنا اللعبة). وكما لديها العديد من أُطر العمل المتاحة وشعبية كبيرة تجعلها من أبرز اللغات لتطور ألعاب المتصفح. وبعد أن تعرفنا عن ماهية ألعاب المتصفح، وتجولنا في تاريخها ونشأتها، وبيّنا أهم الفروقات بينها وبين الألعاب التقليدية، وناقشنا أهم المشاكل الّتي تتعرض لها والحلول المناسبة، ما رأيك بأن نُكّمل هذا المشوار ونبدأ ببناء أول لعبة لنا؟ بكل تأكيد أنت متحمس لخوض هذه المغامرة ومعرفة تفاصيلها إذًا اِربط الأحزمة واستعد للانطلاق. سنستخدم لغة جافاسكربت لإنشاء هذه اللعبة. وذلك لإنّها تتطلّب مجهودًا قليلًا بالموازنة مع بقية الخيارات المتاحة وتعمل في كلّ البيئات. سوف ننطلق من لا شيء وننشئ لعبةً ممتعة دون أن نستغرق أي وقت يُذكر. تتألف هذه السلسلة حول صناعة لعبة عبر جافاسكربت من خمس مقالات هي: حلقات اللعبة التكرارية جلب المدخلات من اللاعب كشف التصادمات الجاذبية إنشاء السلالم وختام اللعبة نرجو لك قراءة ممتعة! اقرأ أيضًا المقال التالي: حلقات اللعبة التكرارية
  2. يتطلب كلّ موقع الكتروني استضافة وذلك ليكون متاحًا للزوار عبر شبكة الإنترنت. يُدرك المصممون والمدونون أهمية ذلك تمامًا وأغلبهم يستخدم المواقع الإلكترونية لنشر أعمالهم وعلاماتهم التجارية. عندما يتعلق الأمر باختيار مزود استضافة المواقع فهنالك العديد من الخيارات المتاحة بعضها مجاني ويوفر لك ميزات محدودة جدًا بينما البعض الأخر قد يكلفك القليل من المال ولكن يقدم ميزات غير محدودة. وأنا أفضل خدمات لاستضافة المدفوعة وذلك لتوفيرها العديد من التسهيلات بالموازنة مع المزودات الرخيصة أو المجانية. 1. BlueHost وهو أحد الشركات الرائدة في تقديم خدمات استضافة المواقع والّتي توفر استضافة ووردبريس ممتازة وموصّى بها من قِبل شركة ووردبريس الرسمية، وتستطيع إدارة ازدياد عدد الزوار إلى موقعك بدون إبطائه. عروض الشركة: استضافة مشتركة - يعدّ خيارًا مناسبًا للمصممين والمدونين الّذين لا يتوقعون ملايين الزيارات شهريًا. استضافة VPS والاستضافة المخصصة - تعدّ خيارًا مناسبًا للأعمال الّتي تحتاج المزيد من موارد المخدم. ويوجد خبراء جاهزين لمساعدتك على مدار ساعة وطيلة أيام الأسبوع. استضافة الموزّعين - يعدّ هذا الخيار مناسبًا للأشخاص الّذين يعملون في مجال بيع خدمات الاستضافة حيث يمكنك شراؤها واستخدام مساحة التخزين في القرص الصلب المخصصة وعرض النطاق (Bandwidth) لاستضافة مواقع العملاء. وهذه بعض الميزات فيما يخص خيار المصممين والمدونين وتعرض الشركة العديد من الميزات منها: استضافة نطاقات (Domains) بشكل غير محدود. مساحة استضافة بشكل غير محدودة. شهادة SSL مجانية. استقبال 100 دولار أمريكي كهدية من شركة غوغل و100 من شركة مايكروسوفت عند إنفاقك 25 دولار أمريكي في حسابك الجديد على منصاتهم الإعلانية. تراسل بيانات بشكل غير محدود. حسابات بريد إلكتروني بشكل غير محدود. نطاق (Domain) مجاني مخصص. يمكنك الحصول على هذه الميزات والكثير غيرها الموجودة في الخطة الاستضافة المشتركة مقابل 2.95 دولار أمريكي شهريًا، ومن ناحية أخرى استضافة المواقع المخصصة غالية بعض الشيء ولكنها توفر المزيد من موارد المخدم مثل: وحدة معالجة مركزية 4×2.3 غيغا هرتز. ذاكرة وصول عشوائي (RAM) بسعة 4 غيغا بايت. سعة تخزين 500 غيغا بايت (منسوخة احتياطيًا في حال فشل النسخة الأصلية). 5 تيرا بايت عرض النطاق (Bandwidth). 3 عناوين IP. شهادة SSL مجانية. اسم نطاق مجاني. دعم فني على مدار الساعة وطيلة أيام الأسبوع. ضمان استرداد أموالك خلال 30 يوم. تبلغ كلفة الاستضافة المخصصة القياسية 79.99 دولار أمريكي شهريًا. يمكنك أيضًا الحصول على خطة المتاجر الإلكترونية والّتي تتيح مجموعة من المميزات الّتي يحتاجها جميع أصحاب المتاجر الإلكترونية ومن بين المميزات المتوفرة في جميع خطط المتاجر الإلكترونية هي: اسم نطاق مجاني. تثبيت تلقائي لمتجر WooCommerce. شهادة SSL مجانية. تراسل بيانات بشكل غير محدود. استقبال 100 دولار أمريكي كهدية من شركة غوغل و100 من شركة مايكروسوفت عند إنفاقك 25 دولار أمريكي في حسابك الجديد على منصاتهم الإعلانية. عنوان IP مخصص. ويمكنك الحصول على الخطة الابتدائية والّتي تأتي مع مميزات أخرى مثل: استضافة متجر واحد. سعة تخزين تبلغ 100 غيغا بايت. مجموعة من القوالب المجانية الجاهزة للتركيب. حماية خصوصية النطاق. مكالمة مجانية للمساعدة في التثبيت. شهر كامل مجانًا لبرنامج أوفيس 365 Mailbox. كل هذه المميزات مقابل 6.95 دولار أمريكي شهريًا للخطة الابتدائية ويوجد ميزات أخرى في الخطط الأخرى المتوفرة للمتاجر الإلكترونية. 2. WP Engine تعدّ هذه الشركة الخيار الإحترافي لمواقع الووردبريس حيث تمنحك الشركة خادم استضافة لا ينقطع مع القدرة على التعامل مع ازدياد عدد الزوار، ولا داعي للقلق بشأن الحماية لأنه محمي جيدًا من الاختراق. مع خدمة عملاء قوية وسريعة بنفس الوقت تجعل هذه الشركة مرشحًا قويًا جدًا لخدمات استضافة المواقع ومع فريق من الخبراء في الووردبريس ستشعر بالإطمئنان بشأن أي مشكلة قد تصيب موقعك. وتعد هذه الشركة خيارًا جيدًا للمدونين والمصممين الّذين يبحثون عن استضافة بسعر معقول. جميع الخطط المُقدمة من قبل هذه الشركة تأتي مع ضمان استرداد أموالك بالكامل خلال 60 يومًا إذا لم تعجبك الخدمة أو المنصة وتشمل بعض عروضهم ما يلي: النسخ الاحتياطي اليومي. استعادة النسخ الاحتياطي بنقرة زر واحدة. أمان عالي الجودة. تفعيل التخزين المؤقت (Caching) بشكل تلقائي. إلغاء الخدمة بشكل مجاني خلال 60 يومًا. وحاليًا تقدم الشركة خطة للشركات الناشئة بمبلغ 35.00 دولار أمريكي شهريًا وهي تشمل ما يلي: تثبيت موقع ووردبريس عدد 1. 25000 زيارة للموقع شهريًا. تبادل بيانات 50 غيغا بايت. سعة التخزين تساوي 10 غيغا بايت. أكثر من 35 قالب جاهز للتثبيت. بيئة متكاملة لتطوير معتمدة على إطار العمل Genesis. دعم فني على مدار الساعة وطيلة أيام الأسبوع. قابلية نقل الموقع على إستضافة أخرى. إصدار PHP 7.3. خوادم موزعة CDN (وهي شبكة توصيل المحتوى تتألف من مجموعة من الخوادم المتزامنة والموزعة على شبكة الانترنت في أماكن جغرافية مختلفة، تحتوي على نسخ من المواقع الّتي تضيفها شركة الإستضافة، وفي حال رغب المستخدم في الوصول لمحتوى على الانترنت مدعوم بهذه الميزة فإن الشبكة ستقوم بارساله لأقرب خادم لموقعة الجغرافي يحتوى على نسخة من المحتوى المطلوب) من أجل سرعة الوصول من كافة المناطق. أداة تقيس مدى تفاعل صفحة الويب. تشمل الخطط الأخرى ما يلي: الخطة الاحترافية - تتضمن نفس ميزات الخطة الشخصية مع مزيد من موارد الخادم وتبدأ أسعارها من 99.00 دولار أمريكي شهريًا. خطة الأعمال (Business) - تأتي بنفس الميزات مع مزيد من موارد الخادم المتاحة في الخطة الاحترافية وذلك لاستضافة مواقع الأعمال الكبيرة وتبدأ أسعارها 249.00 دولار أمريكي شهريًا. 3. Media Temple تقدم هذه الشركة تجربة استضافة من الطراز العالمي وخصوصًا للمصممين والمدونين ومهما يكن حجم موقعك فإن الشركة تستطيع التعامل معه. جميع خدمة الشركة تتناسب مع سعر الخدمة. يوجد العديد من الخيارات والخطط المتاحة والّتي تختلف من حيث السعر والمميزات والسعة وتوفر كل خطة قابلية الترقية للخطة الأعلى منها وذلك لكي تتناسب مع نمو موقعك وتشمل الخطط الّتي تقدمها هذه الشركة ما يلي: خطة الشبكة (Grid): وهي استضافة مشتركة. خطة DV Managed. خطة DV Developer. خطة DV Enterprise. خطة Managed WordPress. وعندما نتحدث عن المصممين والمدونين فإن أفضل خطة تناسبهم هي خطة Grid وهي تتكامل بشكل مثالي مع الووردبريس مع العديد من الفوائد للمبتدئين ومن بعض هذه الميزات: استضافة 100 موقع. عرض نطاق (Bandwidth) يصل إلى 1 تيرا بايت. إمكانية تخزين قواعد البيانات بعدد يصل 100 قاعدة. سعة تخزين تصل إلى 20 غيغا بايت. 1000 حساب بريد الكتروني. تقديم الدعم الفني على مدار الساعة وطيلة أيام الأسبوع وعلى مدار السنة. كلّ هذه الميزات متوفرة بسعر 20 دولار أمريكي شهريًا. وتعدّ المنصة سهلة الاستخدام ويمكنك ترقية الخطة متى تشاء. وبعض الخطط المطروحة الأخرى مثل خطة المطورين (DV Developer) والّتي تبدأ بمبلغ 30 دولار أمريكي وخطة المدراء (DV Managed) تبدأ بمبلغ 55 دولار شهريًا. 4. Arvixe هي شركة استضافة معروفة لدى أغلب المطورين والمصممين والمدونين.أفضل ميزات هذه الشركة هي الموثوقية والجودة وتوفرها بأسعار معقولة. هناك العديد من الخطط الّتي تقدمها هذه الشركة للمطورين والمصممين من ضمنها: الخطط الشخصية خطط الأعمال خطط الموزّعين توجد أيضًا خوادم VPS وخوادم مخصصة تعمل على أنظمة التشغيل Windows و Linux إذا كنت تبحث عن أداة بسيطة تستطيع تحمّل ازدياد عدد الزوار على موقعك والتأكد من أن الموقع لا يزال متوفر وفي أي وقت فاطلب خدمات هذه الشركة. من خلال الاستضافة المشتركة الممتازة، يمكن للمصممين والمدونين أن يرتاحوا حيال التعامل مع الزيارات لمواقعهم على الإنترنت وزيادة نمو هذه المواقع. توفر هذه الاستضافة ميزات مختلفة بما في ذلك: سعة التخزين غير محدودة. تناقل بيانات غير محدود. حسابات بريد إلكتروني غير محدودة. عدد قواعد بيانات غير محدود. اسم نطاق مجاني. أداة مجانية لبناء المواقع. متجر إلكتروني مجاني. لوحة تحكم سهلة. تقديم الدعم الفني على مدار الساعة وطيلة أيام الأسبوع وعلى مدار السنة. كل هذه الميزات والكثير غيرها ستكلفك 7 دولار أمريكي شهريًا فقط. مع ضمان عدم وجود رسوم مخفيّة، يمكنك أيضًا الحصول على ضمان استرداد الأموال خلال 60 يومًا في حالة عدم رضاك عن المنصة. الخطط الأخرى تشمل: استضافة الأعمال مقابل مبلغ 25 دولار أمريكي شهريًا. استضافة الموزّعين مقابل مبلغ 23 دولار أمريكي شهريًا. استضافة VPS مقابل مبلغ 43 دولار أمريكي شهريًا. 5. HostGator تعدّ هذه الشركة واحدة من أفضل مواقع الاستضافة وتشتهر بدعم العملاء على مدار الساعة وطيلة أيام الأسبوع، وهو ما يفضله العديد من المصممين والمدونين. وتقدم خدماتها بأسعار معقولة جدًا، تقدم خطط استضافة تتضمن: استضافة مشتركة. استضافة الموزّعين. استضافة VPS والخطط المخصصة. تم تصميمها لتعمل بشكل مثالي مع المبتدئين والمحترفين. وتقدم ميزة نقل الاستضافة بشكل سهل للغاية وعندما تنقل من مضيف إلى شركة HostGator فإنها توفر لك المميزات التالية: نقل نطاق مجانًا. نقل الملفات مجانًا. نقل قاعدة البيانات مجانًا. نقل الموقع مجانًا. تشمل الميزات الّتي تقدمها الشركة لمستخدميها: سعة التخزين وعرض نطاق غير محدود. لوحة تحكم سهلة. تثبيت سكربت بنقرة واحدة. دعم فني على مدار الساعة وطيلة أيام الأسبوع. يمكنك الحصول على كلّ هذه الميزات بسعر 3.96 دولار شهريًا. الخطط الأخرى تتضمن: استضافة الموزّعين بمبلغ يبدأ من 19.95 دولار أمريكي شهريًا. استضافة مخصصة لمواقع الووردبريس بمبلغ يبدأ من 5.95 دولار أمريكي شهريًا. استضافة VPS بمبلغ يبدأ من 29.95 دولارًا أمريكي للشهر الأول. خوادم مخصصة تبدأ من 119 دولار أمريكي للشهر الأول. توفر هذه الشركة ضمان وقت تشغيل المخدم بنسبة 99.9 ٪ وضمان استعادة الأموال لمدة 45 يومًا أيضًا. 6. GoDaddy هي واحدة من أكثر شركات شهرةً في مجال استضافة المواقع، كل مصمم ومطور يعرف ذلك جيدًا، وهي الخيار الأول لدى المصممين. تقدم الخدمة ميزات كثيرة للمبتدئين والخبراء. تعرف الشركة مدى أهمية موقعك الويب بالنسبة لك، لذا فإنها تعتني به جيدًا وتهتم بكلّ شيء من مدير الملفات ومدير النطاق وإدارة قواعد البيانات والّذي يعدّ رائعًا وسهل الاستخدام للغاية ويمكنك الحصول على الدعم الفني والمساعدة الّتي تحتاجها من خلال فريق الدعم الّذي يعمل على مدار الساعة وطيلة أيام الأسبوع ويمكنك التواصل معهم عبر الهاتف أو البريد الإلكتروني. ومع ذلك، فإن إدارة ملايين النطاقات تجعل الدعم أبطأ قليلًا ولكن فريق الدعم سريع الاستجابة دائمًا ويتم حل الشكاوى عادةً خلال 24 ساعة فقط. وتشمل الميزات الّتي تقدمها هذه الشركة لكل خطة: نطاق مجاني بشرط شراء الخطة السنوية. بريد الكتروني مجاني. التثبيت بنقرة واحدة لأكثر من 125 قالب مجاني. عرض نطاق غير محدود. سعة تخزين قواعد البيانات 1 غيغا. لوحة تحكم سهلة الاستخدام ومرنة. حماية ومراقبة على مدار الساعة وطيلة أيام الأسبوع لهجمات حجب الخدمة DDoS والحماية منها. على الرغم من توفر هذه الميزات بالإضافة للكثير غيرها في كل خطة، إلا أن الأسعار تختلف من حيث التخزين وعدد المواقع المستضافة. يمكنك استضافة موقع ويب فردي بمبلغ 5.99 دولار أمريكي للشهر الأول مع سعة تخزين 100 غيغا بايت لاستضافة عدد مواقع غير محدود وبسعة تخزين غير محدودة يجب عليك دفع 7.99 دولار أمريكي للشهر الأول. الخطة الأخرى تشمل استضافة مدونة أو موقع ووردبريس يبدأ من 6.99 دولار أمريكي شهريًا. 7. Eleven2 تعدّ هذه الشركة من الشركات الّتي يُنصح بها بسبب جودة الخدمة والدعم والتجهيزات والميزات ووقت التشغيل.وأغلب المصممين والمدونين يفضلون الاستضافة المشتركة بسبب أسعارها المعقولة جدًا. وتوفر أداة مجانية لمساعدتك في إنشاء موقع متميز ومتكامل في دقائق معدودة، ويمكنك إدارة موقعك بسهولة باستخدام أدوات وميزات لوحة التحكم القياسية cPanel. مع دعم فني للعملاء، فهي متوفرة على مدار الساعة وطيلة أيام الأسبوع لمساعدتك. كما أنها توفر ميزة فريدة للدردشة المباشرة الّتي تمكنك من الدردشة مع الخبراء حول مسائل استضافة الموقع الخاص بك وضمان وقت تشغيل المخدم بنسبة 99.9 ٪. إنها بالفعل شركة استضافة مُتقنة. وتقدم هذه الشركة ميزات وفقًا لخططها المختلفة الّتي تكون إما شهرية أو سنوية. تتوفر خطة S-200 القياسية مقابل 7 دولارات أمريكية شهريًا وتشمل: مساحة تخزين 250 غيغا بايت. عرض نطاق 20 تيرا بايت شهريًا. مجالات (Domains) غير محدودة. ضبط الإعدادات بشكل فوري. عدد قواعد بيانات غير محدود. امكانية النسخ الاحتياطي. ضمان استرداد الأموال خلال 60 يومًا. تقدم هذه الشركة العديد من الخطط الأخرى الّتي ستناسب احتياجاتك حتمًا. تشمل الخطط الأخرى: خطة S-300 مقابل 14 دولار شهريًا مع سعة تخزين 500 غيغا بايت وعرض النطاق 40 تيرا بايت شهريًا. خطة R-100 للبائعين مقابل 13.97 دولار شهريًا مع سعة تخزين 100 غيغا بايت وعرض النطاق 1 تيرا بايت شهريًا. خطة R-200 للبائعين مقابل 24.47 دولار شهريًا مع سعة تخزين 200 غيغا بايت وعرض النطاق 2 تيرا بايت شهريًا. خطة R-300 للبائعين مقابل 34.97 دولار شهريًا مع سعة تخزين 300 غيغا بايت وعرض النطاق 3 تيرا بايت شهريًا. تقدم أيضًا الشركة خطة استضافة سحابية والّتي تعدّ من الخطط الرخيصة نسبيًا بالموازنة مع خدمات أمازون السحابية أو خدمات مايكروسوفت. وتقدم الاستضافة السحابية الخدمات التالية: منصة سريعة جدًا باستخدام حاويات لينكس مع أقراص صلبة من نوع SSD. نسخ احتياطي يومي لضمان عدم خسارة أي جزء من بياناتك. فريق من المهندسين يعملون على صيانة الخدمة السحابية لضمان عدم توقفها. عدد من المراكز السحابية موزعة على مختلف الدول. دعم فني سريع جدًا مع سرعة رد تبلغ 10 دقائق فقط. تقدم كل هذه الخدمات مقابل 25 دولار شهريًا مع سعة تخزين 125 غيغا بايت وعرض النطاق 10 تيرا بايت شهريًا. 8. Fatcow تعدّ خيارًا جيدًا للمصممين والمدونين الّذين بحوزتهم رأس مال قليل أو الّذين يطلقون الموقع الإلكتروني لأغراض شخصية. وهي تحافظ على خدمات وميزات موقعك يعمل طول الوقت وبلا انقطاع، يجد الناس أنها موثوقة وودية للغاية. تتأكد الشركة من حصول كلّ عميل على موقع متاح دائما عبر الشبكة وغير متقطع بمساعدة النسخ الاحتياطي للخادم يوميًا. خدمة العملاء موثوقة جدًا ومتاحة على مدار الساعة وطيلة أيام الأسبوع ويمكنك أيضًا التواصل معهم عبر البريد الإلكتروني. وتقدم الشركة برامج تعليمية ومكتبة لأكثر الأسئلة شيوعًا والأجوبة عليها. وتشمل حلول الاستضافة الّتي تقدمها ما يلي: خطة Fatcow. استضافة ووردبريس. حجز دومين. استضافة VPS. استضافة مخصصة. تسجيل نطاقات. مجموعة أيقونات Farm-Fresh. تشمل الميزات الّتي تقدمها: سعة تخزين غير محدودة. عرض النطاق غير محدود. ضمان التشغيل والمتابعة بنسبة 90%. قاعدة بيانات MySQL غير محدودة. استضافة نطاقات بشكل غير محدود. صندوق بريد نوع POP غير محدود. ضمان استرداد المال خلال 30 يوم. استقبال 100 دولار أمريكي كهدية من شركة مايكروسوفت و 100 دولار أمريكي من شركة غوغل عند إنفاقك 25 دولار أمريكي في حسابك الجديد على إعلانات غوغل أو مايكروسوفت. كل هذه الميزات متوفرة بسعر 4.08 دولار أمريكي شهريًا وأما خطة استضافة مواقع الووردبريس فهي بأقل سعر على الإطلاق وهو 3.75 دولار أمريكي شهريًا. وتشمل الخطط الأخرى: استضافة خوادم VPS الأساسية وتبدأ من 19.99 دولار أمريكي شهريًا وتأتي مع معالج واحد وذاكرة وصول عشوائي بسعة 1 غيغا بايت وسعة تخزين تبلغ 40 غيغا بايت وعرض النطاق 1 تيرا بايت. استضافة خوادم VPS للأعمال وتبدأ من 47.99 دولار أمريكي شهريًا وتأتي مع معالجين وذاكرة وصول عشوائي بسعة 4 غيغا بايت وسعة تخزين تبلغ 90 غيغا بايت وعرض النطاق 3 تيرا بايت. استضافة خوادم VPS المثالية وتبدأ من 79.99 دولار أمريكي شهريًا وتأتي مع 4 معالجات وذاكرة وصول عشوائي بسعة 8 غيغا بايت وسعة تخزين تبلغ 120 غيغا بايت وعرض النطاق 4 تيرا بايت. استضافة مخصصة تبدأ من 119.99 دولار أمريكي شهريًا وتأتي مع معالجين وذاكرة وصول عشوائي بسعة 4 غيغا بايت وسعة تخزين تبلغ 500 غيغا بايت وعرض النطاق 5 تيرا بايت. 9. InMotion Hosting تعدّ هذه الشركة ذائعة الصيت بين الشركات المتوسطة والكبيرة، سواءً أكان موقع أو مدونة تقدم لك الشركة الخدمة الّتي تريدها وتأتي شهرة هذه الشركة من فريق الدعم الفني الحائز على عدة جوائز ويصل وقت تشغيل المخدم إلى 99.9٪. تتعامل الشركة مع احتياجات العمل المتنامية، من الأعمال التجارية الصغيرة إلى مستوى الشركات. تضمن الشركة سرعة جيدة وخدمة عالية مع مراكز بيانات متعددة. توفر ميزة منطقة السرعة القصوى (Max Speed Zone) لخطط VPS ورجال الأعمال والّتي تمكن المستخدمين القريبين من مراكز البيانات في الشركة الاستمتاع بالتصفح أسرع بست مرات من أي شخص أخر. تتأكد الشركة من حصولك اتاحية موقعك بشكل دائم عبر الإنترنت وبدون انقطاع ومع توفر دعم الفني العملاء على مدار الساعة وطيلة أيام الأسبوع. تم تحسين استضافة مواقع الووردبريس بشكل كبير للمدونين وتقدم لك الشركة بعض الميزات الرائعة لجعل مدونتك تنمو بسرعة. تتضمن خدمات الاستضافة: استضافة رجال الأعمال. استضافة رخيصة. استضافة VPS. خوادم مخصصة. استضافة الموزّعين. تشمل الميزات الّتي توفرها الشركة: سعة التخزين غير محدودة عرض النطاق غير محدود. باقة مواقع مجانية بأكثر من 400 مواقع مع ميّزة التثبيت بنقرة واحدة. أقراص التخزين الصلبة من نوع SSD. تقدم لوحة تحكم cPanel & WHM بشكل مجاني. إعلانات مجانية بقيمة 150 دولار أمريكي. اسم نطاق مجاني. ضمان استرداد المال خلال 90 يوم (تشمل خطة استضافة الموزّعين والاستضافة المخصصة والاستضافة المشتركة). هنالك الكثير من الميزات الأخرى المضمنة في الخطة وهي متاحة مقابل 6.39 دولار أمريكي شهريًا. وتشمل الخطط الأخرى استضافة VPS تبدأ من 29.19 دولار أمريكي شهريًا. استضافة مخصصة تبدأ من 105.69 دولار أمريكي شهريًا. استضافة الموزّعين تبدأ من 15.39 دولار أمريكي شهريًا. 10. TMDHosting عندما تقوم بتشغيل موقع أو مدونة مشهورة، فإنك ستحتاج إلى المعرفة بالعديد من الأدوات والمعلومات التسويقية. إن هذه الشركة ستسهل الأمر عليك وستقوم بتشغيل موقع الويب الخاص بك أو مدونة. وتوفر لك وقت تشغيل مضمون بنسبة 99.9٪ في جميع خطط الاستضافة، وتقدم لك أفضل تجربة استضافة وتضمن لك استرداد أموالك لمدة 30 يومًا في حالة عدم رضاك عن المنصة. توفر الشركة أيضًا استضافة للتطبيقات المفتوحة المصدر بما في ذلك استضافة Joomla، واستضافة Magneto …الخ. الميزة الّتي تتفوق بها هذه الشركة على منافسيها هي دعم العملاء السريع على مدار الساعة وطيلة أيام الأسبوع، وسيتم حل استفساراتك في غضون 15 دقيقة. كما تقدم مساعدة على أعلى مستوى مع أحدث التقنيات المتاحة. بالنسبة للمبتدئين، تقدم الشركة برامج تعليمية تساعدك خطوة بخطوة في أي مسألة تتعلق باستضافة المواقع. وتقدم العروض الترويجية بشكل يومي والّتي تكون تحديثات على خطط الاستضافة الحالية وتقدمها بأقل الأسعار للعملاء. خدمات الاستضافة الّتي تقدمها الشركة تشمل: استضافة المواقع. استضافة الموزّعين استضافة VPS استضافة الخدمات السحابية (Cloud). خوادم مخصصة تشمل الميزات المختلفة الّتي توفرها استضافة الشركة اسم نطاق مجاني للأبد. خوادم CloudLinux-powered. سعة التخزين وعدد زيارات غير محدودة. إصدارات PHP متعددة. قواعد بيانات MySQL بشكل غير محدود. ضمان استعادة المال خلال 60 يوم. وهنالك عدة ميزات أخرى مع الحزمة. تتوفر خطة استضافة الويب بمبلغ 2.95 دولار أمريكي شهريًا. والخطط أخرى تشمل: استضافة الموزّعين تبدأ من 19.95 دولار أمريكي شهريًا مع ضمان استعادة المال خلال 30 يوم. استضافة VPS تبدأ من 19.97 دولار أمريكي شهريًا. استضافة سحابية تبدأ من 5.95 دولار أمريكي شهريًا. خوادم مخصصة تبدأ من 229 دولار أمريكي شهريًا. ختامًا إن كل شركات الاستضافة السابقة موصّى بها للمصممين والمدونين، ومع ذلك أنصحك بتصفح كل خطة عن كثب لتقرر أي العروض هي الأفضل بالنسبة لك. ففي بعض الأحيان يكون الدعم الفني للعملاء هو الفارق الوحيد بين الشركات الاستضافة العادية والشركات المتميزة. ترجمة -وبتصرف- للمقال Unbiased Review of the 10 Top Web Hosting Services
  3. إن معظم المؤسسات في هذه الأيام تنتقل من نموذج أعمال المُحسن للموارد والذي يستند إلى النفقات الرأسمالية (CAPEX) إلى نموذج أعمال المُحسن للسوق والذي يستند إلى النفقات التشغيلية (OPEX). ولكن ما الذي يقود هذا التحول؟ في الحقيقة أن الهدف الأساسي من هذا التحول هو تقليل الوقت اللازم للتسوق وإسعاد الزبائن باستمرار عن طريق تقديم قيمة (Value) لهم وتُعرف القيمة بأنها منتج أو خدمة معينة والتي يكون الزبون مستعدًا للدفع مقابلها. مرحبا بك في التحول الرقمي. هل أنت مستعد لتبني عقلية DevOps في شركتك؟ لقد أشار مدير DevOps السيد Donovan Brown إلى أن DevOps إن DevOps هي رحلة تعلم وتطوير بشكل مستمر، مع وجهة لن تصل إليها أبدًا. ولهذا فإن جميع الصور الواردة في هذا المقال على شكل رمز اللانهاية. ولكوني شخصًا ذو عقلية مرئية (visual-minded)، فقد أنشأت عرضًا تقديميًا يحتوي على صور من أجل مخيم تدريب DevOps العالمي GDBC (Global DevOps Bootcamp) وهذا الحدث السنوي الذي تنسقه المجتمعات المحلية في جميع أنحاء العالم وذلك لخلق بيئة استكشافية وتعاونية لاستعراض مبادئ التحول الرقمي ورؤى DevOps. دعنا نستكشف سريعًا أربعة من الصور المرجعية (والتي تدعى أيضًا بالصور المرئية والإنفوجرافيك). واذا أردت التعمق أكثر يمكنك مراجعة كتاب The DevOps Handbook، لكُتّابه Gene Kim، و Jez Humble، وPatrick Debois، وJohn Willis. الممارسات بناءً على استطلاع قامت به شركة مايكروسوفت على مستوى العالم لتحديد أهم المجالات التي يجب التركيز عليها في DevOps والمجالات التي تحتاج إلى تحسين، والذي جاء فيه أن جميع المشاركين الذين يستخدمون DevOps يركزون على نفس الممارسات في استخدام DevOps ونفس التقنيات لتحقيق DevOps و سوف نستعرضها في الصورتين التاليتين. في الصورة الأولى نلاحظ الممارسات الخمس الأولى الرئيسية: يشجع كبار المختصين في الأداء (Performers) على تعزيز عقلية استسراع النمو، والمكافأة على الابتكار، والتعاون، والتجريب، والتعلم، والتعاطف مع المستخدمين. والسعي لعملية تسليم تطبيقات سريعة الاستجابة، والجدولة المرنة، والتجارب التكرارية. ورصد المشاكل والتعرف عليها وتخفيفها، والقضاء باستمرار على الاختناقات التي تهدر الأداء، وقياس مؤشرات الأداء المهمة وذلك لتحسين المخرجات، مثل معدل فشل التغيير المنخفض (CFR Change Failure Rate)، والوقت الأدنى للاستعادة من الفشل ( Minimal Time To Recover MTTR)، ويجب دومًا أن نحرص على معالجة المشكلات من جذورها. وأخيرًا، لنأتي إلى التكنولوجيا، والتي هي أداة تمكين ستكون محور الصورة التالية. نلاحظ في هذه الصورة التقنيات التي تركز عليها DevOps: يقوم نظام التحكم في النُسخ (Version Control System) بإدارة إصدارات التطبيق واعداداته، والبنية الأساسية، وغيرها من الشيفرات البرمجية للتطبيق. وهو يتيح التعاون بين الفِرق ومراقبة الأنشطة مثل عمليات النشر (Deployments). يستخدم كبار المختصين في الأداء نسخ فرعية من التطبيق وذلك لعزل التغييرات قصيرة الأجل ومعاينتها قبل أن يتم دمجها في النسخة الأساسية (Master)، ويستمر مراجعة وتدقيق طلبات الدمج باستمرار ويتم إصدار النُسخ على أساس ذلك. يجب أن يُنظر للاختبار على أنه نشاط مستمر، وأن يُدمج في مخطط سير العمل للمطور وذلك من أجل تحقيق التكامل المستمر مع التغيّرات (Continuous Integration CI) والتسليم المستمر للتطبيق (Continuous Delivery CD). يتيح لك التخزين السحابي توفير البنية التحتية اللازمة والفعّالة وذلك للتحرك بأقصى سرعة ممكنة عند الضرورة وذلك تجنبًا للوقت المبذول في بناء البنية التحتية المناسبة للشركة. وأخيرًا، تمكنك المراقبة من تكوين فرضية، أو التحقق من صحة التجارب، أو دحضها، واكتشاف المشاكل بشكل استباقي قبل حدوثها وفهم حالة التطبيق. يسرد الشريط الأسود الموجود على يمين الصورة المنتجات التي يجب أخذها في عين الاعتبار عند البحث عن تقنية للتطوير والإنتاج والهندسة المشتركة وبيئات أخرى. حاول أن تقيّم المنتجات المدرجة وحدّث هذه القائمة بانتظام لأن هذا الجزء متغير وإلزامي بنفس الوقت من أجل اختصار الوقت. العادات بناءً على قصة تحوّل 65,000 مهندس إلى DevOps بمساعدة فريق خدمات Visual Studio، تركز هذه الصورة على العادات الخمس الرئيسية التي تعلموها أثناء تحولهم إلى DevOps. يعدّ التركيز على العملاء، والاستقلال الذاتي للفِرق، وتنسيق الشركة، والتركيز على عادات Shift Left، هي عوامل التطوير لمنهجية التصميم المرن (Agile)، كما أن عقلية الإنتاج أولًا والبنية التحتية مثل الموارد المرنة جميعهم خواص تتفرد بها عقلية DevOps. يعدّ التركيز على العملاء جزءًا من سعينا لإمتاعهم وهاجسنا بتقديم خدمة قيّمة لهم. ويجب أن تُصغ إلى المستخدمين بشكل نشط أي أن تسمع لمشاكلهم واقتراحاتهم، وتمكين الميزات وتعطيلها تدريجيًا، وإجراء التجارب المستمرة، وقياس مؤشرات الأداء الرئيسية. واستخدام المُراجعات المتوفرة لتحسين الأداء أو المنتج ومحاولة الإستفادة بأكبر قدر منها وزيادة التأثير على العملاء إلى أقصى حد. تُعد عادات Shift left طريقةً لاختبار البرمجيات والنظام، ويتم إجراء الاختبار في وقت مُبكر من دورة الحياة (أي تم نقله إلى اليسار في الجدول الزمني للمشروع). ويشجع shift left على المراجعات، والتحقق من الصحة، والموافقات على كل من الاختبار والأمان في أقرب وقت ممكن في دورة توصيل الميزات وذلك لزيادة الجودة وتمكين أسلوب الفشل السريع (أحد أهداف هذه الفلسفة هي تقليل الخسائر، وذلك عندما يكشف الاختبار وجود شيء ما لا يعمل فالأفضل دومًا تجربة شيء آخر بسرعة. أي تجاوز الفشل بسرعة). عندما يتجاوز الأعطال الفنية الحد المحدد مسبقًا (مثلا خمسة أخطاء لكل مهندس)، يجب تشجيع الفِرق التي تعمل على المميزات على تعليق العمل حتى يتم جميع الأخطاء الموجودة. إن استقلالية الفريق وتنسيق الشركة يهتمان بما تقوم الشركة بإنشائه وكيفية إنشائه وسبب إنشائه. لذا ستحتاج إلى وتيرة عمل سريعة ونشاط دائم داخل الشركة لتمكين فِرق القيادة وفِرق المميزات من التعاون بشفافية وفعالية. تمتلك أكثر فرق المميزات فعالية خاصية تحويل الفكرة إلى نتائج، مع الاستقلال الذاتي للقرارات حول كيفية تطويرها ودعمها لخصائص ومميزات هذه الفكرة. إن عقلية الإنتاج أولًا لا تُميّز كيفية التعامل مع المميزات والأخطاء خلال التطوير والاختبار والدعم الفني. وإنما كل شيء يجب أن يكون مُؤتمت، ومُحرر، ومُحسن في الإنتاج. ويتم الاعتماد على النشر الدائري والحلقات (ring-based deployment and rings) والتي تنص على عرض التغييرات لمستخدمين محددين ومراقبتها والتحقق من صحتها قبل عرضها على جميع المستخدمين وذلك للحد من الأخطاء التي تنتج أثناء إحداث تغييرات في المميزات المطروحة، ومعالجة جميع المشكلات من جذورها، وتذكر أن تكون واضحًا عند حدوث مشكلة معينة وتوضيحها وما هو السبب الرئيسي لظهورها والحل الذي استخدمته لتجاوزها (لان المستخدم سيكون أكثر تفهما في حال كان لديه معرفة بسبب حدوث المشكلة والآلية المتبعة في حلها). تصف البنية التحتية مثل الموارد المرنة كيفية تكيّف الحلول المطروحة مع الخدمات السحابية والحاويات (container) والخدمات المصغّرة (Microservices). يجب تبني تحوّل عملي يكون منطقيًا لشركتك وأهدافك ومنتجاتك وثقافتك. كما هو الحال مع العادات السابقة، من المهم أن نُفضّل البنية الاستقلالية على بنية الوصفية وألا نُغير كل شيء في وقت واحد. الشروع في العمل يجمع التصور الأخير بين كل ما سبق ويقترح خمس خطوات للبدء مع Devops. أفضّل أن أبدأ بالتقييم لقدرته في تحديد المناطق الرئيسية التي يمكن تحسينها. توفر التقييمات معيارًا لعقلية وأداء DevOps مقارنة بباقي المنهجيات المتبعة في قطاع الصناعات الأخرى. من المهم أن نفهم أي جزء من عملك يسير على ما يرام وأي جزء يحتاج لأن تستثمر فيه لنقله إلى المستوى التالي. إن كُلًا من التقييمات التابعة لشركة DORA و تقييمات شركة مايكروسوفت بالنسبة Devops هي تقييمات رائعة للبداية. بالإضافة إلى ذلك، إجمع أدوات القياس لاستخدامها كقاعدة لقياس التقدم - على سبيل المثال، معدل تكرار النشر (Deployment Frequency) والوقت اللازم لتطبيق التغييرات (lead time for changes)، ومتوسط وقت الإصلاح (mean time to repair)، ومعدل فشل التغيير (change failure rate). إن التحدي الأكبر الذي سوف يواجهك هو الناس وثقافاتهم. يحتاج كل شخص لأن يعتنق فكرة التحول الرقمي، وأن يفهم كيف سيتأثر في هذا التغيير، وأن يُشجع على رفع مستوى الشفافية, ويجب عليه المشاركة بشكل فعّال وأن يتحمل المسؤولية الكاملة للقيمة المضافة للخدمة المتوقعة منهم. ويشمل هذا التحدي أيضًا مجلس قيادة الشركة والذي يحتاج لأن يقدم الدعم والإلهام والتمكين وتوجيه الموظفين لرؤية واضحة. وبناء عليه ستقوم إما بإنجاح هذا التحول كفريق واحد أو بإفشاله. وبدون وجود أشخاص ملتزمين وثقافة تجريبية، فإن بقية رحلة التحول إلى DevOps ستفشل. إن العملية (Process) هي نظامك الهندسي، والذي يقوم بتمكين الفرق من إصلاح المشاكل بشكل مباشر، واستخدام الإدارة والتطوير الرشيق (lean management and development)، وتقديم خدمة قيّمة باستمرار. ويوفر نظام الهندسة المشترك الثبات، ويخول فِرق المميزات، ويتيح ويشجع الجميع على دعم بعضهم بعضًا والمساهمة فيه. يجب أن تتضمن أهم أهداف عملياتك التركيز على الجودة، واحتضان البنيات خفيفة الترابط (loosely coupled architectures) لتمكين التطوير، والإدارة الخفيفة، والأتمتة، والإصدارات المتعددة في اليوم، والاحتفال بالنجاح كفريق وكشركة. المنتجات هي أسهل وصلة في السلسلة. فهي تمكن الجميع من التركيز على ما هو مهم ألا وهو توفير قيمة (Value) للعملاء. تعدّ القيمة من أهم الأشياء الّتي تُرضي المستخدمين. تتضمن مؤشرات الأداء الرئيسية مثل تكرار النشر، والوقت اللازم لتطبيق التغييرات، ومعدل فشل التغيير، ووقت الاسترداد من الخطأ. سواء كنت تتعامل مع كل هذه الخطوات دفعة واحدة أو خطوة بخطوة أو حتى لو أنك ابتكرت خطة للانتقال وذلك بالاستعانة بكل الخطوات التي ناقشناها. تذكر دومًا أن تكون واقعيًا. أيّ من صور أحببتها؟ أيّ منها أحسست بأنها لا تضيف أي قيمة؟ وما الجزء الذي تعتقد بأنه مفقود؟ دعونا نتعاون لكشف الغموض عن DevOps ومساعدتك وموظفينك على التألق. يحتاج المستخدمون إلى فهم أنهم ليسوا وحدهم وأن يعرفوا بأنه يمكنهم الاعتماد على الممارسات المُجربة والمُثبت فعاليتها وعلى النهج التعليمي الواقعي. ترجمة -وبتصرف- للمقال Visualizing a DevOps mindset لصاحبه Willy-Peter Schaub
  4. تعدّ المواقع المبنية على ووردبريس من أكثر الأهداف عرضةً للهجوم على الإنترنت، إذ أن قابلية تعرضها للاختراق أكثر من أي نوع آخر من المواقع. فإذا كنت تملك موقعًا مبني على ووردبريس، أو أحد أصدقائك، أو أحد معارفك ولم يتعرض أي منكم للاختراق بعد، فأنتم إما محظوظون جدًا أو أنك تملك أشخاص حذرين جدًا يحيطون بك! وبما أن هذه المواقع تعمل على الإنترنت وتُشغّل مئات الآلاف من الشيفرات البرمجية في الخلفية، فمن المهم الاهتمام بالقضايا الأمنية الخاصة بالموقع وخاصة أن ووردبريس منصة معروفة ومشهورة واستهدافها من قبل المهاجمين هو أمر وارد الحدوث. عندما كانت شركة مايكروسوفت ويندوز منصة جديدة نسبيًا ومسيطرة على مواضيع تخص قضايا الحماية والأمن، صرّح القائمون عليها أن من أسباب تعرض المنصة لعدد من الهجمات هو الأخطاء والثغرات الأمنية المرتكبة من قِبل الشركة نفسها، وهو ما تم استغلاله على الفور عند صدور نظام الويندوز. وكذلك هو الحال في المواقع المبنية على ووردبريس والّتي تحتل وبقوة حوالي 34.8% من إجمالي عدد المواقع على مستوى العالم وذلك بحسب إحصائية نشرها موقع w3techs. وهذا شيء رائع، ولكنه أيضًا يفرض علينا أن نأخذ قضايا الحماية الأمنية على محمل الجد، فعلى سبيل المثال لو وجد شخصٌ ما ثغرة أمنية رئيسيّة في ووردبريس عندها سيكون بإمكانه وبكل سهولة أن يسيطر على الآلاف من الخوادم في غضون ساعات. ولهذا السبب تعد مواقع ووردبريس الهدف الأكثر عرضةً للهجوم ويجب علينا الاهتمام بحمايتها اهتمامًا بالغًا. هل يعدّ هذا المقال دليلًا كاملًا لحماية ووردبريس بالطبع لا وإنما هو مجموعة من أفضل الممارسات الأمنية في ووردبريس. أدرك جيدًا أن عنوان هذا المقال "الدليل الكامل في أمن مواقع ووردبريس" مبالغ فيه قليلًا، فهو بحد ذاته ليس كذلك وذلك لأن المسائل الأمنية ليست عبارة عن قواعد ثابتة، أو مجرد تثبيت إضافة أمنية معينة، أو عمل أي شيء آخر مقيّد بفترة زمنية. لا إنه ليس كذلك! بل هو عبارة عن ممارسات تتطور باستمرار وذلك لأن الثغرات الأمنية متجددة باستمرار وتفرض علينا دومًا تحديث سياساتنا الأمنية الّتي نتبعها. يمكن تمثيل مفهوم الأمن بأشياء تم وضعها في صندوق ومن ثم تم وضع الصندوق بعمق 400 قدم تحت سطح الأرض في مكان لا يعرفه أحد وسط الصحراء، الواضح هنا أن الأشياء في مأمن ولكنها غير مفيدة أبدًا. من الجدير بالذكر هنا أن أي شيء يعمل على شبكة الإنترنت، على سبيل المثال المواقع المبنية على ووردبريس، لديها بيئة متغيرة باستمرار ويمكن أن يشكّل ذلك خطرًا عليها فيصبح من الواجب العمل على حمايتها من التهديدات. وحتى يتم ذلك، سوف نعمل جاهدين على تحديث كافة المعلومات الّتي تحتاجها في هذا المقال. سأغطي في هذا المقال جميع الأساسيات الّتي ستحتاجها والكثير من الممارسات الأخرى الّتي ستساعدك في مواجهة القضايا الأمنية. بالرغم من أنني أتفق بأنه لا يمكن اعتباره دليلًا كاملًا. هل مواقع ووردبريس ليست آمنة؟ من الأمور الأكثر شيوعًا عند الناس الّذين يبحثون في موضوع أمن وورد بريس أنهم يشكّون في كونه آمن ومحمي في الأصل، أو أنهم يسمعون من شخص أخر يؤكد لهم على أنه ليس كذلك، وهذه تعد شائعات وشكوكًا حول أمان ووردبريس، هناك الكثير ممن يحاولون استغلال جهلك بآلية حماية ووردبريس فيحاولون بيعك منتجاتهم على الإنترنت سواءً أكانت خطة لأمن ووردبريس، أو خطة استضافة، أو حتى برنامج يدير كلمات المرور، لذلك هدفي في هذا المقال إزالة الغموض عن أفضل ممارسات الأمنية لحماية موقعك المبني على ووردبريس. وحتى نجيب على هذا التساؤل يجب علينا معرفة أن ووردبريس عبارة عن نظام نظام إدارة محتوى إلكتروني مفتوح المصدر ويتميز بأنه واسع وله العديد من الطرق للتركيب على مواقع الاستضافة وضبط إعداداته وتخصيصه والّتي يمكن أن تكون بأكثر من طريقة. وانطلاقًا من هذا التنوع نجد في بعض الأحيان مواقع ووردبريس غير آمنة والّتي من المحتمل أن تُخترق خلال الـ 24 أو 48 ساعة القادمة. وإذا كنا نتحدث عن النظام الأساسي الموجود في الملف المضغوط والّذي يمكنك تنزيله من الموقع الرسمي للوردبريس فإنه وبرأيي الشخصي آمن تمامًا. بشكل عام، كلّ يوم هناك احتمال 0.00001٪ بأن تظهر مشكلة غير مسبوقة في ووردبريس والّتي يمكن أن يتعرض من خلالها هذا النظام للهجوم على مستوى العالم. في الوقت الحالي تأتي مواقع ووردبريس مع ميزة التحديث التلقائي المدمج، وبإمكان شركات الاستضافة تحديث إصدار موقعك في حال فشل التحديث التلقائي. فهذا أمر بالغ الأهمية، لأنه يمكن أن يكون الإصدار 5.2.4 يواجه مشكلة أمنية ما والّتي سيكتشفها شخص ما في الأشهر أو السنوات القادمة. فتعمل منظمة ووردبريس جاهدة على تحديث نظامها باستمرار، فتصدر مثلًا إصدار 5.2.5 وتصدر بعدها إصدار 5.2.50 والّذي يعمل على إصلاح تلك المشاكل أو الثغرات الأمنية المكتشفة في الإصدار الّذي قبله. يمكن عد ووردبريس آمن وذلك عندما تحافظ على تحديث موقعك بأحدث إصدارات ووردبريس المتاحة. والتأكد من أن موقعك موجود على استضافةٍ موثوقٍ بها، والقيام بتثبيت التحديثات الموثوقة للإضافات الموجودة لديك، وعندها فقط يمكنك عد ووردبريس آمنًا تمامًا. ولكن عندما لا تقوم بأي شيء مما سبق، فمن المحتمل وبشدة أن يكون موقعك غير محمي بل ومُعرض للاختراق أيضًا. شبكة الروبوتات المقرصنة (Botnets) عمومًا إن المواقع المبنية على ووردبريس ليست معرضة للخطر بسبب الهجمات الفردية من أشخاص مجهولين وإنما الخطر الحقيقي يأتي من الهجمات الآلية. بالتأكيد هناك احتمال كبير أن تجد ولو شخص واحد يحاول الوصول لموقعك. ولكنه لن يشكل خطرًا مثل الهجمات الآلية. بالطبع هذا في حال ما لم تكن أغضبت أحدًا من عباقرة الاختراق. في الحقيقة إن التهديد الحقيقي لمواقع ووردبريس والّذي يعرضها للخطر هو الهجمات الآلية والّتي تُبرمج من قِبل أشخاص يحاولون الاستيلاء على موقعك، فيتحكم هؤلاء الأشخاص بالهجمات باستخدام الحواسيب، ولذلك ليس هنالك أشخاص يحاولون بأنفسهم الدخول إلى موقعك بواسطة أسماء مستخدمين وكلمات مرور مختلفة وإنما هي عملية آلية تُدار بواسطة الحواسيب. وغالبًا ما تجد هؤلاء الأشخاص (المخترقين) يكتبون برامج للبحث عن مواقع ووردبريس على شبكة الإنترنت بالكامل ومحاولة تسجيل الدخول إلى جميع هذه المواقع الّتي يجدونها. وهم نفسهم أيضًا من يحاولون استغلال الثغرات الأمنية المعروفة في الإضافات. ويكون هدفهم في أغلب الأحيان اختراق الكثير من الحواسيب لتكوين شبكة كبيرة من الحواسيب المقرصنة والّتي تسمى شبكة الروبوتات المقرصنة وتسمية الروبوتات جاءت من كون جميع هذه الحواسيب تخدم المخترق دون اختيارها تمامًا مثل أجهزة الروبوت وبمجرد أن ينضم جهاز جديد لشبكة الروبوتات فإن المخترق يستطيع التجسس على صاحب الجهاز دون أن يشعر صاحب الحاسوب بذلك. ويكون هدف هذا المخترق إما جمع المعلومات من خلال التجسس وسرقة معلوماتك السرية مثل بطاقات الائتمان والحسابات البنكية أو شن هجمة حجب الخدمة الموزعة (DDos Attack)، أو إرسال رسائل مزعجة (Spam)، أو تنفيذ مهام أخرى يريدها المخترق. وهنا يبرز لدينا مفهوم واضح لنموذج التهديد الخاص بموقع ووردبريس الخاص بك إذ أنه يتكون في الغالب من هجمات تلقائية مُدارة من قِبل أشخاصٍ بواسطة عناصر غير بشرية، ولذلك فإن القيام ببعض الممارسات الأمنية أمر مهم للغاية. لماذا تتعرض مواقع ووردبريس للاختراق؟ يجب في معظم الأحيان أن تقلق بشأن الهجمات الآلية، بدلًا من التركيز على هجمات الأفراد، وأن تعرف السبب وراء محاولتها الهجوم والسيطرة على الموقع الخاص بك. فهذا الموقع الصغير بالنهاية موقع ويب خاص بك أنشئ لأحد هذه الأسباب: مشاركة صورك الخاصة مع الأصدقاء. بيع الحاجات الخاصة بك على الإنترنت. الكتابة والتدوين للترفيه والسعادة …إلخ. هذه الروبوتات في الحقيقة لا تستهدف موقع ووردبريس الخاص بك إلا إذا كان موقعك يحتوي على بعض الثغرات الأمنية والّتي ستكون مدخلها للسيطرة عليه. وتختلف الأهداف الّتي تدفع المخترقين للاستيلاء على موقعك ولكن من أكثر الأسباب شيوعًا للاستيلاء المواقع هي كالتالي: إعادة توجيه حركة المرور إلى مواقعهم. الاستيلاء على تفضيلات محرك البحث الخاص بك المتصدر في جوجل (SEO rankings) لسرقة عصير الروابط ووضعها في صفحاتهم. تشويه الموقع للغطرسة والتفاخر أو لإيصال رسائل سياسية. التنزيل بالتنقل - مما يتسبب بجعل زوار موقعك ينزلون برامج ضارة وفيروسات …إلخ. فتح ثغرات في الموقع لاستغلالها لاحقًا. الوصول إلى بيانات موقعك، وقوائم المستخدمين، وسجل عمليات الشراء …إلخ. إرسال رسائل عبر البريد الإلكتروني عشوائيًا - فإذا كان موقعك يمكنه إرسال بريد إلكتروني، فيمكنهم استخدام ذلك لإرسال رسائل البريد الإلكتروني الخاصة بهم أيضًا. استخدام موارد الخادم (وحدة المعالجة المركزية في الغالب) لإجراء عمليات حسابية مفيدة والّتي تقوم غالبًا بتعدين العملات الرقمية مثل البتكوين. إن هذه الهجمات الآلية هي الّتي يتوجب عليك التفكير بها والحذر منها. فمن المحتمل جدًا أن يكون المتسلل ذكيًا ولديه أسبابه الدافعة اختراق موقعك والّتي من الممكن أنني لم أذكرها. ما أحاول توضيحه هو أن موقعك غير محمي حمايةً كافية. قد تظن أنه لا يوجد لديك قائمة مستخدمين مثيرة للاهتمام، ولكن عليك أن تضع ببالك أن هناك خادمًا يمكن استخدامه لتعدين العملات الرقمية أو لإرسال رسائل البريد المزعج، وذلك باعتبار أن لكل خادم وحدة معالجة مركزية، ولذا فإن الغالبية العظمى من الخوادم تستطيع إرسال بريد إلكتروني. الحماية المتكاملة للموقع يعتمد أمان مواقع ووردبريس على تكامل مجموعة من المسائل، وليس على مسألة واحدة بحد ذاتها. وفي الحقيقة إن ووردبريس قائم على مجموعة كبيرة ومتنوعة من التقنيات، وهذا ما يجب علينا أخذه بالحسبان فمن الممكن أن تحتوي بعض الأجزاء الّتي يتكون منها ووردبريس على ثغرات. على سبيل المثال يستخدم ووردبريس لغة PHP (وهي لغة برمجة صُمّمت أساسًا لتطوير وبرمجة تطبيقات الويب) في بناء نواته الأساسية ومن الممكن إن تحتوي بعض إصداراتها أحيانًا على ثغرات أمنية. ولكن إذا كنت تُحدّث الإصدارات بانتظام، فلن تؤثر عليك. أما إذا لم تكن كذلك، فقد تؤثر المشكلات الّتي تحتوي عليها لغة PHP على الموقع الخاص بك. هناك احتمال بأن يكون هناك شيء آخر في ممارسات الأمان الرئيسية الخاصة بالموقع غير صحيحة. فمثلًا إذا كانت خبرتك قليلة في ضبط إعدادات خوادم الويب، فقد تفعل أشياءً تظن بأنها ضرورية لتشغيل شيء ما في موقعك دون أن تدرك أنها ستؤدي إلى آثار أمنية سلبية عميقة. وهذا يعد أحد الأسباب الرئيسية الّتي تجعلني أعطي أكبر قدر من الأهمية لضبط إعدادات خوادم الويب للمحترفين. هذا لا يعني أنه لا يمكنك إعداد الخادم الفعلي الخاص بك بنفسك، أو شراء خادم افتراضي خاص VPS بسعر رخيص وضبط إعداداته باستخدام سكربت إعداد كتبه شخص آخر. ولكن فعليًا عليك أن تكون على ثقة ودراية في الاعدادات الّتي تشغّل ووردبرس فوقها. لأنك إذا قمت بضبط موقعك ضبطًا صحيحًا، ولم تنتبه لوجود خطأ في ضبط إعدادات قواعد البيانات MySQL، فعندها لا تزال أشياء سيئة جدًا ممكن أن تحدث لموقعك. تجنب توصيات الأمان الشائعة غير الضرورية قبل ذكر ما يجب عليك اتباعه، لابد أن أذكر لك أمرًا أرى أنه من الواجب ذكره هنا إذ شاع استخدامه رغم قلة الفائدة المرجوة منه. معظم هذه النصائح لا تضر نسبيًا بالموازنة مع فائدتها إذا أدت عملها. ولكن سبب عدم توصيتي لك باستخدامها هو أن فوائدها وإن وجدت ستكون قليلة جدًا. ومن الممكن أن تتجاهل الممارسات الأمنية الأكثر قيمة منها عندما تنفق على هذه الممارسات وقتًا طويلًا لا تستحقه بالموازنة مع المكاسب الّتي تحققها. لديك مطلق الحرية بالقيام بها أو لا. ومن هذه التوصيات ما يلي: 1. إخفاء نسخة ووردبريس سنبدأ بأكثر نصيحة مشهورة وهي إخفاء رقم إصدار ووردبريس الخاص بك، أو إخفاء بأنك تعمل على ووردبريس من الأساس وهذا صعب جدًا القيام به أما الخيار الأول فهو في الأساس لا قيمة له. عمومًا من الصعب إخفاء أنك تقوم بتشغيل ووردبريس، ومعظم الأشخاص يحاولون القيام بذلك يغيرون وسم في مواقعهم أو التخلص منها. ولكن أي مخترق ذكي لن يعتمد فعليًا على ذلك، فذكر أحد مشرفي المواقع الّتي تعمل على أنظمة مختلفة غير ووردبريس بأنه لاحظ أشخاص يبحثون في موقعهم كما لو أن موقعهم مبني على ووردبريس بالفعل. إخفاء إصدار ووردبريس الخاص بك أقل حساسية. جوهر الموضوع هنا هو أن الهجمات الآلية ستقوم بالتحقق في كون موقع ووردبريس الخاص بك موجود على إصدار معروف ومحدّث من ووردبريس، ومن ثم يهاجمك إذا كان إصدار ووردبريس مدرجًا في قائمة الإصدارات المستهدفة. شخصيًا لم أسمع بأي أحد ذكر أن الهجمات الآلية تعمل بهذا الأسلوب، ولا أدري لماذا يفترضون مثل هكذا افتراض. اعتقد أن هذه النصيحة تفقد قيمتها لو كان موقعك محدّث بأحدث إصدار من ووردبريس، لذلك هنا تكمن أهمية تحديث الإصدار بدلًا من إخفاء رقم إصدار ووردبريس. 2. تعطيل الواجهتان البرمجيتان XML-RPC و JSON REST في هذا الصعيد أشعر أن الحديث موجه إلى الأشخاص الّذين يستخدمون موقعهم كواجهة تطبيقات برمجية (API) فقط، فليس هناك أي ضرر حقيقي في تعطيل الواجهة البرمجية XML-RPC لووردبريس (وهو بروتوكول إجراء عن بعد يستخدم صيغة الترميز XML لتمثيل البيانات ويستخدم HTTP لنقل البيانات ولتنفيذ الإستدعاءات). تُستخدَم الواجهة XML-RPC بواسطة عدة أدوات مثل أداة Marse edit وتطبيق ووردبريس للهواتف المحمولة وأدوات أخرى مشابهة من أجل الاتصال بموقعهم. وأصبح من الممكن الآن لتلك الأدوات الاعتماد على واجهة التطبيقات البرمجية Restful (وهي طريقة للتخاطب بين الأنظمة على الإنترنت والّتي تعتمد على بروتوكول HTTP وعلى الدوال المعروفة في هذا البروتوكول وتعتمد أيضًا على خاصية أن كلّ خدمة يمكن الوصول إليها عن طريق رابط فريد) أصبح من الممكن أيضًا استخدام هذه الأدوات للاعتماد على واجهة Rest بدلًا من XML-RPC، على الرغم من أن أغلب هذه الأدوات لم تُنشأ لهذا الغرض. وتعد واجهة التطبيقات البرمجية JSON REST إضافة جديدة إلى ووردبريس، ويمكن أن تلبي استخدامات مشابهة للتقنيات السابقة. بالإضافة إلى ذلك، تعمل ووردبريس داخليًا على الاستفادة من الواجهة JSON Rest للميزات الّتي توفر تفاعلًا أفضل. إن كلا الطريقتين السابقتين تعد من الطرق الّتي يمكن للمهاجم تتبعها بعد موقعك. وهناك سجلات معروفة للأشخاص الّذين يقومون بهذه الهجمات. والسبب وراء إدراجها في قائمة الأشياء الّتي لا أوصي بها، هو أن كلا النوعين من الهجمات ليسا شائعين للغاية. كما أن واجهات التطبيقات البرمجية (APIs) مفيدة للغاية، وربما تجد شيئًا ما في المستقبل يكون مفيدًا لموقعك وعندما تحاول القيام به على موقعك فتجد أنه لا يعمل أو يتسبب في تعطل موقعك وذلك لأنك حظرت واجهات التطبيقات البرمجية بشكل كامل. إذًا الحل الأفضل هو الحصول على جدار حماية على الإنترنت، ومن الناحية المثالية أن يكون مضيف موقعك يحتوي على جدارٍ ناري. وإن لم يكن الحال كذلك، فيمكنك شراء جدار ناري بنفسك من شركات مثل Sucuri (وهي شركة أمنية معروفة، ولديها شهرة كبيرة على شبكة الإنترنت. توفر جدار حماية قوي للمواقع المبنية على ووردبريس، وتعمل على حماية المواقع من هجمات الحرمان من الخدمة [DDos Attack]، وغيرها من تهديدات أمان مواقع ووردبريس) أو Cloudflare وكلاهما يوفر خدمات متشابهة. وباستعمال هذا الجدار يجب أن يتوقف احتمال حدوث حركة زيارات غير طبيعية لواجهات التطبيقات البرمجية، وعمومًا أن تدع الأشياء الجيدة فقط تمر عبرها هو أمر غير مضمون ولكنه يعتبر حلًا أفضل من إيقافها بالكامل. 3. تغيير بادئة قاعدة بيانات في مرحلة ضبط إعدادات ووردبريس يوجد حقل نصي يتطلب بادئة لقاعدة البيانات، والقيمة الافتراضية له تكون _wp. يخزن ووردبريس بياناتك، والمنشورات والتعليقات والمنتجات وغيرها في جداول قاعدة البيانات والّتي تبدأ بهذه البادئة. ما أريد توضيحه هنا هو أن القيمة الافتراضية أقل أمانًا ويجب عليك بدلًا من ذلك جعلها مثل _jadfl، والّتي من غير المحتمل أن تمتلكها مواقع ووردبريس أخرى. في هذه الحالة احتمالية حمايتك بتطبيق هذه الخطوة قليل. بدلًا من ذلك يجب عليك أن تحمي نفسك بشكل خاص من هجوم حقن قواعد البيانات (SQL-injection) لأنه غالبًا من خلاله تُخترق مواقع وورديريس، ولكن لكي يحدث ذلك، يجب أن يكون إصدار ووردبريس أو مكون إضافي يحوي على ثغرة تُمكّن المخترق من حقن قواعد البيانات من خلالهم. لذلك إذا كانت الإضافات أو القوالب في ووردبريس محدّثة، فلن تحصل فعليًا على فائدة إضافية من ذلك. وعلاوةً على ذلك أنه من السهل جدًا إذا كان لديك ثغرة أمنية تتيح هجوم حقن قواعد البيانات في موقعك، فإن المهاجم سيستعرض جداول قاعدة البيانات الخاصة بك، ولكن ليس بالسرعة العمياء على افتراض أن المنشورات موجودة في جدول باسم wp_posts، بل إن عدد المهاجمين الّذين يفترضون أن هذا هو موقع جدولك ولا يتحققون منه ربما يكونون نسبة مئوية صغيرة من الأشخاص الأذكياء بما يكفي للقيام بالهجوم في المقام الأول. أعتقد أنه إذا كنت تقوم بضبط إعدادات موقع جديد، ووجدت طريقة سهلة لتغيير بادئة قاعدة البيانات الخاصة فغيّرها مباشرةً، ولكن إذا كان موقعك يستخدم بادئة _wp لقواعد البيانات، فلا تُضع وقتك في محاولة القيام بذلك وخاصةً إن لم تكن مطور ويب. 4. إعادة تسمية عنوان URL لتسجيل الدخول إلى ووردبريس النصيحة الأخيرة الّتي اعتقد أنها لا تستحق الاهتمام فعلاً هي نقل عنوان URL لتسجيل الدخول الخاص بك من example.com/wp-login.php إلى شيء مثل example.com/my-secret-url-for-puppy-login. تم تسهيل ذلك من خلال بعض إضافات الأمان في ووردبريس وهي ليست مضيعة للوقت تمامًا. لا أستطيع أن أنكر فكرة أنه إذا تعذر على المهاجم العثور على صفحة تسجيل الدخول الخاصة بك، فلن يتمكن حتى من محاولة شن هجوم القوة الغاشمة (Brute force) على كلمات المرور الخاصة بك (سنتحدث لاحقًا في هذا المقال عن هذه النقطة بالتفصيل). المشكلة في هذه النصيحة هي أنه إذا وجد أحد المهاجمين صعوبة في العثور على صفحة تسجيل الدخول لموقعك، فربما ستجد أنت أو زملاؤك صعوبةً في ذلك أيضًا. إذا كانت لديك طريقة آمنة وموثوق بها لوضع إشارة مرجعية (Bookmark) على الصفحات الّتي تجدها سهلة الاستخدام، ففعل ذلك مباشرة فأنت بهذه الخطوة تحظى ببعض الفوائد الأمنية المتواضعة. ولكن مرة أخرى، فإن الفائدة ليست كبيرة إذا قمت ببعض الأشياء الأخرى بشكل صحيح. إذا كانت جميع الحسابات على موقعك تملك كلمات مرور جيدة، فمن غير المرجح أن ينجح هجوم تخمين كلمة المرور. أضف إلى ذلك أنه إذا كان لديك طريقة ما للحد من عدد محاولات تسجيل الدخول الفاشلة لحساب معين في موقعك ضمن فترة زمنية قصيرة، فأنت بذلك تقلص احتمال نجاح هجوم تسجيل الدخول. وهذان العاملان معًا - كلمات مرور جيدة وقيود على عمليات تسجيل الدخول الفاشلة - أكثر قيمة من عنوان URL الغامض لتسجيل الدخول إلى موقعك. أفضل الممارسات العامة لتأمين مواقع ووردبريس هناك بعض المهام الشائعة الّتي يجب عليك القيام بها إذا كنت تريد أن تحافظ على أمان موقعك. يوجد العديد منها ولكن سأسرد لك أبرزها وما يحب عليك فعله دائمًا. هذه القائمة ليست مرتبة حسب الأهمية، ولكن نسبيًا عند قيامك بالخطوات الخمس الأولى، فستكون متقدمًا على 50٪ من مواقع ووردبريس الأخرى على الإنترنت. ومن غير المحتمل أن تواجه مشكلة أمان لا يمكن إصلاحها في موقعك، وإذا كنت تطبق جميعها، فسأتفاجأ حقًا إذا تعرض موقعك للاختراق. هذا بالطبع ليس ضمانًا، بل إحتمال أرجحه من واقع خبرتي الشخصية. 1. استعمال كلمات مرور قوية الطريقة الأساسية الّتي يمكن من خلالها مهاجمة كلّ موقع من مواقع ووردبريس على الإنترنت هي طريقة بسيطة وهي تخمين الروبوتات كلمات المرور للحساب بانتظام، على كلّ موقع من مواقع ووردبريس على الإنترنت تقريبًا. فإذا كان لديك كلمة مرور سيئة فاحتمال أن تفقد حسابك كبيرة، وبالتالي موقعك. بعض كلمات المرور السيئة مثل: password p455w0Rd [اسم الموقع] charlieiscute هناك العديد من المدارس الّتي تشرح أهمية قوة كلمة المرور وطريقة جعلها كذلك. لكن جميعنا نتفق على أن هذه الكلمات سيئة إلى حد كبير، نظرًا لاحتمالية أن يخمنها المهاجم إذا علِم المنهجية المتبعة في صنع كلمة المرور. كلمة "password" وما شابهها -حتى تلك البدائل الرائعة الممزوجة بالمحارف والأرقام- تكون دائمًا على رأس قائمة البرامج المخصصة لتخمين كلمة المرور الّتي يجب تجربتها. أسماء المواقع هي أيضا مرشحة بشكل كبير للتخمين. وبعبارة "[اسم الموقع]"، أقصد مثلا مثل "academy.hsoub" أو "hsoub" ككلمة مرور لحساب المدير. تتميز "charlieiscute" عن غيرها بأنها ليست كلمة مأخوذة من القاموس، وهي أطول من سابقتها. كما أنها أيضًا فريدة من نوعها بعض الشيء، ولكن ليس من الصعب تخمينها لأنها تستخدم أحرفًا صغيرة فقط، فلا توجد فيها أحرف كبيرة أو أرقام أو رموز. رغم أنه من غير المرجح أن يعرف المهاجم ذلك، ولكن عندما تقوم بتضمين فئات أخرى من المحارف، فإنك تقلل من احتمال قيام نظام التخمين العشوائي بتخمين كلمة المرور بشكل أسرع. خطوات لتعزيز قوة كلمات المرور للووردبريس هناك مجموعة من الخطوات تحسّن أمان كلمة المرور في موقع ووردبريس. ولكن سأذكر هنا أهم ثلاثة خطوات: امتلك كلمة مرور يصعب تخمينها: كلمات المرور الجيدة تكون صعبة القراءة ومعقدة مثل "RP@yu3ohd&LtpwzM}rWhgp6#AtY6HAzjvxKnz9zh". كلمة المرور هذه طويلة وعشوائية وفريدة من نوعها. وهنا احتمالية تخمينها منخفضة. ولأنها فريدة من نوعها - وهي طبعًا ليست كلمة المرور الخاصة بي على Facebook أو ArtWorld أو RandomInternetReseller أو أي شيء آخر- فكشف كلمة المرور الخاصة بموقع ووردبريس لن يعرض بقية الحسابات للخطر. إبطاء هجمات التخمين لكلمة المرور: بشكل افتراضي، يستطيع الروبوت تخمين 1000 كلمة مرور في الدقيقة (تقريبًا) على موقع ووردبريس الخاص بك. وهذا العدد كبير أو مرتفع. إذا منعت الأشخاص من الاستمرار في محاولة تسجيل الدخول بعد عدد معين من المحاولات الفاشلة مثل ثلاث أو أربع أو خمس مرات، أياً كان - فسوف تبطئ من هجمات كثيرة محتملة. الطريقة المفضلة للقيام بذلك هي تقييد محاولات تسجيل الدخول. استعن بهذا الدليل السريع والّذي يشرح كيفية الحد من محاولات تسجيل الدخول بخطوات تفصيلية. استخدم مدير كلمات المرور: إذا نفذت الخطوة الأولى، فسوف تتعب بسرعة من كتابة كلمة المرور هذه، أو ربما تنساها. بهذه اللحظة ستحتاج برنامج يدير لكلمات المرور. هناك أنواع كثيرة جدًا من مديري كلمات المرور الّتي بإمكاني إخبارك باستخدامها ولماذا. ولكنني شخصيًا أستخدم 1Password ولكن يمكنك استخدام أي مدير كلمات مرور أخر مثل KeePass و LastPass والّتي تعدّ من البرامج المشهورة أيضًا. 2. تحديث إصدار ووردبريس وجميع الإضافات والقوالب الطريقة الأخرى الّتي من المؤكد أن كلّ موقع من مواقع ووردبريس على الإنترنت مضمون للهجوم من قبل الهجمات الآلية المنتشرة وهو استغلال الثغرات المعروفة في البرامجيات الّتي تشغّل على الموقع. سواءً أكنت تستخدم Revolution Slider أو TimThumb أم لا أو أحد إضافات ووردبريس الشهيرة، فمن المحتمل أن تحاول الروبوتات الاستفادة من المشاكل المكتشفة في الإصدار القديم من هذه الإضافات. ولذا فإن هناك فرصة جيدة للاختراق بالرغم من أن هذه الطرق تعدّ قديمة جدًا، إلا أن الروبوت تحاول مهاجمتك عن طريقها. لهذا السبب يجب عليك أن تبقي إصدار ووردبريس محدّثًا باستمرار. بالإضافة إلى كلّ القوالب الّتي تستخدمها أيضًا. من الشائع حاليًا أن تحوي إضافات أو قوالب ووردبريس على ثغرات أمنية أكثر من نظام ووردبريس بحد ذاته، مع العلم أنه يمكن أن يكون الثلاثة يحتوون على ثغرات. عندما يدرك باحث خارجي أو مطور داخلي أن هناك مشكلة أمنية في بعض الشيفرات البرمجية في مواقعهم، فتقع على مسؤوليته أن يُنشىء نسخة جديدة من الموقع لا تحتوي على هذه الثغرة الأمنية. ومعظم المستخدمين لنظام ووردبريس يجيدون القيام بذلك. لذلك السبب، يجب عليك أن تؤدي دورك عندما يقدمون تحديثات بالإصلاحات أو ترقيعات الأمان فيجب عليك تثبيتها مباشرةً. ويمكنك جعل ووردبرس يثبت هذه التحديثات نيابةً عنك، أو يمكنك القيام بذلك بنفسك، أو حتى باستخدام إضافة مخصصة لإدارة موقعك الخاص مثل ManageWP. بعض الاستضافات توفر ذلك نيابةً عنك، ويمكنك أيضًا استئجار شخص ما للقيام بذلك إن لم تكن تستطيع فعلها بنفسك. ولكن يجب عليك فعل ذلك إذا كنت جادًا بشأن أمان وحماية موقعك. 3. إنشاء نسخ احتياطية بشكل دوري وتلقائي من أفضل الأشياء الّتي يمكنك القيام بها للحفاظ على أمان موقعك هو التأكد من حماية بياناتك في حال حدث أي مكروه لموقعك أو بياناتك. أي يجب أن يكون لديك على الأقل نسخة احتياطية حديثة واحدة لموقعك يمكنك استخدامها لإعادة بناء موقعك أو استعادته في حالة حدوث اختراق أو تخريب. أعتقد أن الطريقة الوحيدة للحصول على نسخة احتياطية حديثة وموثوقة من موقعك هي القيام بذلك تلقائيًا. نظرًا لأننا بشر، وومن الممكن جدًا أن نخطئ، أو ننسى، فغالبًا إذا طلبتُ منك أن تضغط 1-10 نقرات في موقعك للحصول على نسخة احتياطية محدّثة، فغالبًا لن تقوم بذلك. لهذا السبب يجب أن تحاول استخدام الإضافات الجاهزة الّتي توفر النسخ الاحتياطي. ويجب أن يكون هذا النسخ الاحتياطي مثاليًا أيضًا بحيث يحتوي على كلّ ملفاتك من صور وملفات PDF وقاعدة البيانات وجميع المعلومات المهمة في موقعك. وستقوم الإضافات نسخة احتياطية لبياناتك ووضعها على خادم آخر غير الخادم الّذي تستخدمه، لأن ذلك سيجعل موقعك أكثر أمانًا في حال استطاع المتسلل التسلل إلى خادمك فلن يستطيع بسهولة الوصول إلى الخادم الّذي يحوي النسخ الاحتياطية الخاصة بك. نظرًا لأن هذا منشور حول أمان ووردبريس وليس عن النُسخ الاحتياطية، فلن أملأ لك قائمة كاملة بجميع الخيارات المتاحة للنسخ الاحتياطي ولكنني أظن أن Updraft Plus و Jetpack/Vaultpress و Backup Buddy الّتي تتبادر إلى ذهني حاليًا هي حلول جيدة للنسخ الاحتياطي. 4. التحقق من موقعك وفحصه بانتظام في الحقيقة أن هذه الخطوة مهمة ولكنها لن تستطيع أن تمنع حدوث شيء سيء لموقعك، والسبب في أنه من المهم أن تبقى على اطلاع على حالة موقعك كي تمنع حدوث أشياء أسوأ. فعندما ترى أشياء غريبة تحدث على موقعك، فمن السهل إصلاحها مبكرًا. ويصبح الأثر أقل سوءًا - لأن محرك البحث Google سيحذر الزائرين من موقعك في حال اكتشافه أي مشكلة أمنية تسبب الضرر للزوار - وتخفف الضرر الّذي سيلحق بموقعك. إذا لم تُسجل الدخول بانتظام إلى موقعك لتفقده، فيجب عليك على الأقل التأكد بانتظام بأن الشكل الّذي يظهر للزبائن يبدو جيدًا. وإذا لم تكن قادرًا على القيام بذلك، فيجب أن تتأكد على الأقل من متاح ويمكن الوصول إليه وذلك باستخدام خدمات خارجية (مثل Pingdom). تتأكد هذه الخدمات من إمكانية استعادة نسختك الاحتياطية عند الدخول الجديد للموقع مباشرةً في حالة حدوث شيء سيء أو غريب. هذا في أسوأ الحالات، ولكنه ضروري لصحة الموقع على المدى الطويل. 5. تجنب الشيفرات البرمجية المقرصنة أو المسروقة هذه ليست خطوة مهمة للغاية لمعظم الناس. فمعظمنا يستخدم إصدار ووردبريس من الموقع الرسمي أو من المطورين الّذين استأجرناهم أو من البائعين الآخرين ذوي السمعة الطيبة. فإذا كنت تقوم بكل هذه الأشياء فليس عليك القلق من هذه النقطة. في الغالب الّذي يجب عليه أن يقلق هم الأشخاص الّذين يحاولون توفير المال عن طريق قرصنة الإضافات، أو القوالب، وما إلى ذلك أو الأشخاص الّذين يحاولون توفير المال عن طريق الحصول على الشيفرات البرمجية من "نوادي الإضافات" أو غيرها من المصادر منخفضة الثقة. إذا قمت بذلك، فمن المحتمل أن تكون هذه الشيفرات مجانية وذلك لأن شخصًا ما وضع ثغرة بداخله تتيح له التسلل إلى موقعك في المستقبل. في بعض الأحيان، يمكن للإضافات المجانية لووردبريس المتاحة في الموقع الرسمي أن يستولى عليها من قِبل جهات شريرة وتجري عمليات سيئة لها. ولكنه ولحسن الحظ نادر الحدوث، وفريق المشرفين على حماية ووردبريس يقوم بمراقبة وإصلاح أي مشكلة. ولكن إذا كنت قلقًا بشأن هذه النقطة فإن أفضل حلّ هو أن تكون أكثر تركيزًا ومعرفةً في الإضافة الّتي ستقوم بتثبيتها. 6. تعزيز أمان تسجيل دخول للووردبرس بواسطة HTTPS و 2FA واحدة من أكثر الأشياء شيوعًا في نصائح الأمان للووردبريس هي الحصول على شهادة SSL. إنها بالتأكيد خطوة جيدة. ولكن الشيء المهم الّذي يدركه عدد قليل جدًا من الأشخاص هو أن HTTPS / SSL لا تؤمن حقًا موقع ووردبرس الخاص بك، ولكن تؤمن الاتصال بين موقعك ومن يتصفحه؛ لذلك فهو ذو قيمة عالية، ولكن هذا ليس كلّ شيء. في صميم الموضوع، يجب اعتبار HTTPS بمثابة نفق آمن بين موقعك وأي شخص يشاهده في متصفح الويب. يمكن اختراق اتصالات HTTP بواسطة أي من الأجهزة المختلفة الموجودة بين الزائر والخادم. أما مع HTTPS، فإنه من المستحيل تقريبًا أن يتطفل هؤلاء الأشخاص على الاتصال. لذا فإن الفائدة المباشرة من HTTPS هي أن بيانات تسجيل الدخول الخاصة بك من اسم المستخدم وكلمة المرور أو بيانات اعتماد بطاقة الائتمان أو أي بيانات حساسة ستكون أكثر أمانًا. ومن غير المرجح أن يرى شخص ما يتطفل على الشبكة اللاسلكية الموجودة في المقهى على كلمة المرور الخاصة بك إذا كنت تستخدمها. لذلك يجب أن تحصل على شهادة HTTPS بكل الوسائل. لا تعتقد أن ذلك يؤمن تثبيت ووردبريس الحقيقي على الخادم بأي طريقة من الطرق، لأنه ليس كذلك. وهناك خطوة أخرى جيدة ولكنها غير مريحة إلى حد ما وهي استخدام الاستيثاق الثنائي (Two-Factor Authentication) والّذي يعرف اختصارًا 2FA وتثبيته على موقعك. عند القيام بذلك، ستحتاج إلى ثلاثة أشياء لتسجيل الدخول بدلًا من شيئين. عادةً ما نقوم بتسجيل الدخول إلى موقع ووردبريس باستخدام اسم المستخدم أو عنوان البريد الإلكتروني وكلمة المرور.ولكن مع الاستيثاق الثنائي، فستحتاج أيضًا إلى "معلومة أخرى"، وبما أن الهواتف أصبحت أساسيات الحياة في عصرنا الحالي فيمكننا إرسال رسائل نصية إليه للتحقق من المستخدم. في كلتا الحالتين، فأنت أكثر أمانًا لأن معرفة كلمة المرور الخاصة بك لن تكون كافية للاستيلاء على حسابك وسيحتاجون إلى رمز مكون من 4 أو 6 أرقام أيضًا والّذي سيرسل إلى هاتفك. هناك مجموعات متغيرة باستمرار من الإضافات الّتي تعطي هذه الميزة في ووردبريس حاليًا، فمثلًا Jetpack تقدم هذه الخدمة أو بإمكانك استخدام إضافة مستقلة. يمكنك الرجوع إلى مقالة كيف تستعمل SSL وHTTPS معووردبريس ومقالة كيف تحمي حسابك على مدوّنةووردبريسباستعمال الاستيثاق الثنائي2FA لمزيد من المعلومات. 7. التحكم في إمكانية الوصول لموقعك من المهم جدًا أن تكون على دراية وفهم كامل بما يتعلق بمن توفر لهم خدمة الوصول إلى موقعك ومعرفة الممارسات الأمنية اللازمة لتأمين ذلك. ويمكن عدها مجموعة من الخطوات إذ أنها أشمل من كونها خطوة واحدة. ومن بعض الخطوات الّتي اعتقد أنها مناسبة تحت هذا العنوان هي كالتالي: إعطاء كلّ مستخدم صلاحية الوصول إلى حساب مخصص مثلًا لديك جمال وسارة كلاهما يسجلان الدخول إلى موقعك باستخدام حساب مستخدم مثل المسؤول. هنا عليك تمييز كلّ منهم بحساب خاص به وصلاحيات خاصة بهم وذلك باستخدام إدارة صلاحيات المستخدمين وأدوارهم في ووردبريس. على سبيل المثال امنح الكاتب جمال حساب "محرر"، وامنح سارة حساب "المدير" والّذي يملك كافة الصلاحيات على الموقع. يعتمد هذا على مبدأ يسمى الحد الأدنى من الأمتيازات والّذي ينص على إعطاء القدرة على الوصول إلى المعلومات والموارد الضرورية فقط من الموقع أي أقل قدر من الصلاحيات الضرورية. لا تمنح المستخدمين إمكانية إنشاء حسابات بكلمات مرور ضعيفة إذا اتبعت النصيحة السابقة، فستريد أيضًا التأكد من عدم استخدام جمال وسارة كلمات المرور ضعيفة. يمكنك القيام بذلك عن طريق سؤالهم أو إخبارهم بعدم جواز ذلك عن طريق وضع رسالة خطأ تخبرهم عدم جواز ذلك أو عبر آلية معينة تمنع كلمات المرور الضعيفة بأوامر مثل استخدام إضافة مخصصة لذلك. لا تعطي صلاحيات الوصول للكثيرين، أعني بذلك المزيد من النصائح الحساسة، والّتي أصبحت في الغالب أسهل مع إضافات الكثيرة المتوفر لأمان ووردبريس، وإذا كنت مطورًا، قم بتعيين بعض ثوابت للووردبريس مثل عدم السماح بتحرير الملفات في منطقة إدارة الووردبرس، والتأكد من أنك لا تمنح الأشخاص حق الوصول إلى مخدم الموقع الويب أو الوصول إلى SFTP (وهو بروتوكول نقل البيانات بشكل آمن باستخدام التشفير من دون نقل أي بيانات خالصة في الملفات النصية ويعدّ أكثر أمانًا من بروتوكول FTP لنقل الملفات) ولا أي صلاحية لا يحتاجون إليها أي حافظ بذلك على إطار الحماية العام. 8. تثبيت الإضافات الأمنية الخاصة بووردبريس يوجد العديد من الإضافات الأمنية الجيدة في ووردبريس، والّتي تعد عاملًا مساعدًا جيدًا في العديد من الاحتياجات الأمنية الشائعة الّتي أدرجتها أعلاه (وبعضها أيضًا يساعد في ما لم أذكره أو ما عددته في الفئة غير المفيدة). من أسماء الإضافات الّتي تتبادر إلى ذهني سريعًا هي Sucuri و WordFence و Jetpack Protect و iThemes Security. وهناك العديد من الإضافات الأخرى، فهذه القائمة لا يمكن اعتبارها قائمة نهائية، وأتمنى منك ألّا تأخذ درجة الترتيب المذكورة كمقياس للأهمية. الإضافات تساعد في العمل فهي تفعل أشياء كثيرة مثل إنشاء سجلات الوصول، وتعمل على حظر واستبعاد الجهات السيئة المعروفة، وتعمل أيضًا على الحد من محاولات تسجيل الدخول الفاشلة، وتساعدك على إصلاح المزيد من المسائل الداخلية مثل مشاكل أذونات الملفات على موقعك. وتوفر لك الإضافات WordFence و Sucuri آلية مفيدة لمنع دخول الهجمات الآلية وإدارة حركة الزيارات الخبيثة إلى الموقع ومن ثم التخلص منها بما يسمى "جدار حماية تطبيق الويب". ختامًا الحصول على الأمن هو أمر صعب للغاية، ولكن أتمنى أن أكون وفقت في توضيح بعض الأمور المهمة، صحيح أن المقال طويل نوعًا ما، فهو يشتمل على 5000 كلمة، ولكن إذا ركزت بشكل جيد فيها، أو قرأت البنود الّتي ذُكرت بعناية، فسوف تتعلم الكثير وهذا ما أتمناه. بالرغم من أنني وكما ذكرت منذ البداية لا أشعر أن هذا العنوان الّذي وضعته "الدليل الكامل في أمن مواقع ووردبريس" عنوانًا دقيقًا، إلا أنني أعتقد بأني ذكرت بعض من أفضل الممارسات الأمنية لأصحاب مواقع ووردبريس. إن المسائل الأمنية في ووردبريس بشكل عام موضوع يحتاج منك فقط أن تحدّث إصدار ووردبريس وجميع الإضافات والقوالب باستمرار ويحتاج أيضًا لاستخدام كلمات مرور قوية ومن هنا تكون بقية النصائح الأمنية مفيدة ولكن غير ضرورية لأن ووردبريس بحد ذاته آمن تمامًا ولكن النسخ الاحتياطي يجلب لك الثقة في آمان موقعك مثل مشاهدة موقعك واستباق الخطوات في حال حدوث مكروه وضبط صلاحيات الوصول للمستخدمين والحصول على إضافات مخصصة للحماية ولكن العديد من النصائح الّتي تسمعها من الناس بالرغم من أنها ليست عديمة الفائدة، إلا أنني لا أنصح بقضاء بعض الوقت في التركيز عليها. وأخيرًا إن جعل موقعك آمنًا تمامًا إلى الأبد أمر مستحيل بضغطة أو خطوة واحدة. وإنما هي مهمة متغيرة ومتطورة باستمرار. حاول أن تكون على اطلاع بأخر الأخبار عن أمن ووردبريس، وفكر في انعكاس ذلك على موقعك، وستتعلم أكثر بكثير مما تعلمته في هذا المقال أو في أي مقال أخر يتحدث حول هذا الموضوع. ترجمة -وبتصرف- للمقال The Complete Guide to WordPress Security لصاحبه David Hayes
  5. لقد أحدثت الحاويات (Containers) والخدمات المصغّرة (Microservices) ثورة في تطوير التطبيقات وإدارة البنية التحتية لها، وقدمت لنا تحديات أمنية جديدة دون أن تعالج التحديات السابقة. إذن ما هي أبرز التحديات الأمنية الجديدة؟ وما الذي يجب علينا فعله تجاهها؟ تقنيات جديدة وتحديات جديدة تُعدّ الخدمات المصغّرة (Microservices) من أشهر المعماريات البرمجية في وقتنا الحالي، والتي جاءت لتحل مشاكل الطريقة التقليدية في تطوير المشاريع والتي تُعرف باسم (Monolithic) وهي معمارية تجعل كلّ خدمات المشروع عبارة عن وحدات برمجية متراصّة ومتجانسة مع بعضها بعضًا وتعمل جميعها في وقت واحد. فإذا حدث مشكلة ما في أحد خدمات المشروع سوف تتأثر جميع الأجزء المتجانسة الأخرى أمّا (Microservices) قسّمت المشروع الواحد إلى عِدّة مشاريع منفصلة، وكلّ مشروع يكون عبارة عن خدمة مصغرة، وتعمل كل خدمة منهم بشكل مستقل عن الخدمة الأخرى مع إمكانية إتصال خدمة معينة بخدمة أخرى من خلال قنوات اتصال محددة. لقد غيّرت الخدمات المصغّرة كلّ شيء. إذ نلاحظ أن أغلب الشركات في وقتنا الحالي تتجه لوضع خارطة عملٍ معتمدة على الخدمات المصغّرة باستخدام بنى معمارية مثل البنية التحتية الثابتة (Immutable infrastructure)، أو البنية المعمارية التي لا تدعم التشارك (shared-nothing architecture)، أو التطبيقات المتوضعة في الحاويات (containerized applications). لقد كانت طريقة الكشف عن فعالية المشاريع في حالات معينة مثل العمل في نطاق صغير، أو في الإستقلالية، أو في تحقيق الإستدامة الذاتية تُعرف عند بناء الواجهة البرمجية API وتشغيلها على الآلة الوهمية (virtual machine) أو بداخل حاوية، أو حتى بتشغيلها على القرص الصلب (حيث يكون مُثبت عليه نظام التشغيل)، أما الآن فيمكننا الكشف عن فعالية هذه المشاريع باستخدام الخدمات المصغّرة بحيث يتم إختبار كلّ حالة على حدة ومعرفة فعالية المشاريع بدون بناء واجهة برمجية. وعلى الرغم من المزايا المتعددة لإستخدام الحاويات إلا أنها تقدم لنا مجموعة من التحديات أيضًا من بين تلك التحديات المباشرة التي تواجه الحاويات هي الزحف على الحاويات (container crawl)، وحماية الحاويات، وتعقب الخدمات المصغّرة، ومعرفة مصدر نُسخ الحاويات. إذًا ما تأثير ذلك على الأمن في بيئة الخدمات المصغّرة؟ إن التحديات الأمنية لا تزال موجودة في بيئة التطبيقات أحادية النواة monolithic applications، ولا نزال نحتاج إلى معرفتها وتحديدها لمعالجتها. بالإضافة إلى ذلك، نحتاج إلى النظر في التحديات الأمنية الإضافية التي تفرضها الخدمات المصغّرة وتقنيات الحاويات. ومن منظور أمني، زادت إمكانية التعرض للهجوم بشكل كبير في عالم الخدمات المصغّرة بالموازنة مع التطبيقات أحادية النواة. أن زيادة قابلية النشر للوحدات وللأجهزة البعيدة (مثل: الهواتف الذكية والأجهزة المحمولة والأجهزة اللاسلكية الأخرى) أدى إلى زيادة التعرض للخطر، وإحتمالية حدوث هجوم أمني على الأجهزة البعيدة، ومشكلات التكاملية. بالإضافة إلى ذلك، قد تحتوي نُسخ Docker الأساسية على ثغرات أمنية والتي قد تضر بالخدمات المصغّرة. لذا ينبغي إدارة مصدر نُسخ Docker لضمان صحتها وخلوها من الثغرات. ويشكّل نشر تحديثات الأمنية والترقيعات مع المحافظة على أدنى مدة زمنية لتعطل الحاويات تحديًا آخر يصعب تجاوزه. يمكن أن تضيف DevOps المزيد من التركيز على الاحتياجات الأمنية في عالم الخدمات المصغّرة. حيث تركز أدوات النشر والبناء المستمرة حاليًا على تبسيط عملية التسليم، على الرغم من عدم تركيزها كثيرًا على حماية DevOps . أفضل الممارسات الأمنية لمواجهة بعض التحديات المذكورة أنفًا، دعونا نُلق نظرة على أفضل الممارسات التي يمكن إتخاذها. كجزء من استراتيجية DevOps الفعالة، يجب دمج خطوات الحماية والتدقيق المستمرة في منهجية DevOps. ويجب أن يتضمن الاختبار المستمر مُميزات إختبار الأمان المختلفة ويجب إضافة التحقق من سلامة نُسخ الحاويات إلى منهجية DevOps. وكما يمكننا أيضًا استخدام السجلات الخاصة private registries والتي تضمن لنا أن النُسخ موثوق بها وموجودة داخل الشركة. وينبغي تعزيز المراقبة من خلال آليات للكشف عن حالات الشذوذ لاكتشاف أي استخدام خاطئ للموارد أو الأحداث الغير طبيعية مع الحاويات، كما ينبغي تعزيز جميع قدرات المراقبة لتتبع العمليات المعتمدة على وكيل (agent-based) والعمليات بدون وكيل (agentless). كما يجب تحديث إدارة الترقيعات (Patch management) وتحسينها لضمان ترقيع الحاويات بأحدث التحديثات مع ضمان الحد الأدنى من وقت التوقف عن العمل. ولقد قدم Docker آلية لتحديد مصدر النُسخ تسمى (Notary)، والتي تستند إلى TUF (اختصارًا إلى The Update (Framework الذي يُستخدم في توزيع وتحديث البرامج بشكل نموذجي). ولكن العديد من أخصائيي الحاويات في وقتنا الحالي لا يستخدمونه Notary وذلك لأنه لا يزال في مرحلة التطوير. كما أن Notary يتطلب عملية إدارة رئيسية خبيرة في الشركة. تعدّ المنطقة التي تقع بين الخدمات المصغّرة من المناطق التي تُرتكب فيها الأخطاء أمنية، ويمكن استخدام Gateway API (وهي برمجية تقع أمام الواجهة البرمجية وتعمل كنقطة دخول واحدة لمجموعة محددة من الخدمات المصغّرة) بفعالية في هذا الموقف. إن تشفير الرسائل باستخدام تشفير الرسائل التقليدي PKI (البنية التحتية للمفتاح العام Public Key Infrastructure وهو إطار التشفير والأمن السيبراني الذي يحمي الاتصالات بين الخادم والعميل) ليس خيارًا قابلًا للتوسعة في هذا الموقف. لذا بدلًا من ذلك، يمكننا استخدام JSON Web Token) JWT) وهو رمز مشفّر مع مجموعة من سياسات التأكيد assertion policies حول الطالب للخدمة (requestor).حيث يوقعّ خادم الهوية الرسائل برمز مُميز والذي يُمكن التحقق منه بواسطة نظام المستلم (recipient system). كما يمكن تشفير JWT رقميًا للحفاظ على سرية وسلامة التأكيدات (assertions) والتي تسمى حينَئِذٍ JSON Web Encryption) JWE). غالبًا ما تكون الحماية صعبة وباهظة الثمن. لذا حاول أن تجعل من الحماية سمة أساسية للبنية التحتية للخدمات المصغّرة لتوفير أفضل مستوى من الأمان والأداء. ترجمة -وبتصرف- للمقال Secured DevOps for microservices لصاحبه Sreekanth Nyamars
  6. على مدار الأشهر القليلة الماضية، نشرت بعض المقالات الّتي تستكشف النقاط الأساسية الثلاث في تحولك الرقمي وهي المنتج والعملية والناس، وذلك لتمكينك من الانتقال من نموذج عمل مُحسن للموارد استنادًا إلى النفقات الرأسمالية (CAPEX) إلى نموذج مُحسن للسوق استنادًا إلى النفقات التشغيلية (OPEX). ومن الأمثلة على الانتقال من CAPEX إلى OPEX هو استخدام خدمات أمازون السحابية AWS بدلًا من إنشاء بنية تحتية من الصفر والتي ستُخدّم المشروع. ومن بين الفوائد الأخرى، يساعدك إتحاد الأشخاص والعمليات والمنتجات على رفع قيم العمل الأساسية، مثل زيادة قيمة الأعمال Business Value، مثل: زيادة قيمة الموظف، وقيمة العميل وقيمة الموارد وكثير من هذه القيم التي لا تقاس مباشرة بالقيم النقدية، بالإضافة إلى تقليل أوقات دورة التسليم، وتمكين الجميع من التعلم والتكيّف وتطوير مستواهم بشكل مستمر. يركز المهندسون (مثلي) عادة على المنتجات والأدوات والتقنيات. إذا أردنا النجاح في الانتقال إلى DevOps، فمن المهم أن ندرك أنه لا يمكنك شراء أو تركيب DevOps! المنتجات هي أدوات داعمة، وليست الحل السحري للأمر، فهي تتيح لك التركيز على النتائج، مثل الأتمتة، والتطابق، والموثوقية، والقدرة على الصيانة، وتمكين الميزات أو تعطيلها بشكل تدريجي، و تصور الخطوات اللازمة للانتقال من إنشاء المنتج إلى تسليمه إلى العميل النهائي أو ما يسمى flow of value. عندما نتحدث عن العملية، فإننا غالبًا ما نتجه نحو الأتمتة لرفع قيمة الكفاءة والاستقرار والثبات. ومن المهم أيضا تضمين أهداف الاحتفال بالنجاح سواءً كفريق أو منظمة، والتركيز على الجودة انطلاقًا من تصوّرها وتخيلها وانتهاءً بتحقيقها على أرض الواقع، وإنشاء عملية إدارة التغيير بحيث تكون سريعة الاستجابة وخفيفة، واحتضان البنيات المترابطة بشكل خفيف (loosely coupled architectures) لتمكين التطوير، والسعي إلى إصدار عدة مميزات جديدة في اليوم. إن جوهر هذا التحول هو تحول الناس وثقافتهم وليس المنتجات أو العمليات أو حتى حجم المنظمة. يحتاج الناس لأن يدركوا أهمية التحول وأن يعتنقوا فكرة DevOps، وأن يفهموا كيف ستتأثر مهامهم ووظائفهم، ويجب عليهم تحمل مسؤولية أدوارهم المنوطة إليهم في هذا التحول. ويجب عليهم أيضًا أن يدركوا أن DevOps لا تقتصر على التنمية والعمليات، حتى وإن كان اسمها بحد ذاته يدل على ذلك ويستبعد أصحاب المصلحة الآخرين.إنك تحتاج إلى إزالة جميع العوائق والمفاهيم الخاطئة داخل مؤسستك والتي تمنع من الانتقال إلى DevOps، وأن تجمع بين كلّ أصحاب المصلحة ومن جميع الأقسام في الشركة، بما في ذلك أقسام التطوير وخدمات البيانات والعمليات والأمان والأعمال إلى أن يتم تحقيق التحول إلى DevOps. ترجمة -وبتصرف- للمقال Breaking down walls between people, process, and products لصاحبه Willy-Peter Schaub
  7. إذا كنت مهتما بتعلم البرمجة، فعلى الأرجح أنك رأيت هذا الاقتباس من قبل: في الحقيقة لا أبالغ إن قلت أن البرمجة أصبحت من أهم المهارات في عصرنا الحالي، وذلك لأنها دخلت في جميع مجالات حياتنا سواءً كنا ندرك ذلك أم لا فانطلاقًا من الهواتف المحمولة ومرورًا بالمنازل والشاشات الذكية وانتهاءً بالسيارات ذاتية القيادة. كل شيء من حولنا لم نكن لنراه بهذا الشكل لولا البرمجة، فأنا على سبيل المثال أكتب وأعدل هذا الموضوع من خلال برنامج بُرمج عبر لغة برمجة وأنت تقرأه على الإنترنت باستخدام برنامج (المتصفح) وربما رأيته على مواقع التواصل الاجتماعي وكُلها برامج أيضًا. ومما لا شك فيه أن تعلم البرمجة أصبح ضرورة مُلحة في هذا العصر بل إن تعلمك لها سيزيد من فرصك بشكل كبير في الحصول على عمل. ولقد تحدثنا في مقالٍ سابق عن كيفية تعلم البرمجة والدخول إلى هذا المجال من أوسع أبوابه (إن كنت حديث عهدٍ في البرمجة أو تخطط للبدء بها، فننصحك بقراءته قبل إكمال هذا المقال) وسوف نتحدث في هذا المقال عن أكثر المهارات صعوبةً في احتراف البرمجة ألا وهي «حل المشاكل». حل المشكلات وارتباطها بالبرمجة لطالما وقفنا حائرين أمام مشكلةٍ ما ونسأل أنفسنا ماهي الطريقة الصحيحة للخروج من هذا المأزق؟ هل ستكون طريقة الحلّ التي أتبعها مشابهة للطريقة التي يتبعها المبرمجين المحترفين؟ كيف أستطيع أن أفكر مثلما يفكر المبرمجين المحترفين؟ في البداية وقبل الخوض في التفاصيل دعنا نُعرف البرمجة بحد ذاتها ولنذهب للمقال السابق ونلقي نظرة سريعة عليها: نلاحظ أن التعريف السابق صحيح ولكنه مُقْتضَب ولا يقدم لنا المعنى الكامل والدقيق للبرمجة لذا لابدّ لنا من تعريفٍ أكثر دقة وموضوعية يساعدنا في فهم هذا المقال. يعرف موقع HackerRank في تقريره عن مهارات المطورين بعام 2018: نستنتج مما سبق أن البرمجة تعتمد اعتمادًا أساسيًا على التفكير المنطقي والرياضي والقدرة على حلّ المشاكل وإن لغات البرمجة ما هي إلا وسيلة للتخاطب مع الحاسوب. إذن الأمر كله يتعلق بتطوير قدرتك في حلّ المشاكل وجعل هذه العملية سهلة وسلسة بنفس الوقت لذا فاسمح لي بأن آخذك معي برحلة صغيرة في هذا المقال نتعرف فيها على أهمية حلّ المشاكل وضرورتها في مشوارك البرمجي. لماذا حلّ المشاكل مهم؟ تأتي أهمية حل المشاكل من كونها من أكثر المهارات المطلوبة عالميًا فوفقًا لتقرير أصدره موقع HackerRank جاء فيه: احتلت مهارة حلّ المشاكلالمرتبة الأولى بنسبة 94.9% لأكثر مهارة مطلوبة لأصحاب الشركات سواء الصغيرة منها أو الكبيرة. وعلى الصعيد العملي، إن عملية بناء أي شيء من الصفر سواء أكانت آلة معينة أو أي مُنتج جديد ستواجه الكثير من المشاكل في البداية، فعلى سبيل المثال بناء خدمات أمازون السحابية (AWS)، والّتي جاءت حلًا لمشكلة النفقات العالية للبنية التحتية لتجارتها الإلكترونية بالإضافة إلى الوقت الطويل الّتي تحتاجه في عملية البناء والذي شكل تحدي كبير في إمكانية توسع الشركة، إلى أن جاء آندي جاسي كبير مستشاري جيف بيزوس في ذلك الوقت والذي استطاع إيجاد حلّ لهذه المشكلة ولم يتوقف عند ذلك الحد وإنما أختار تحويل هذا الحلّ إلى خط أعمال جديد تحت أسم خدمات أمازون السحابية والّتي بلغت عائداتها السنوية لعام 2018 قيمة تناهز 25 مليار دولار. نجد من التجربة السابقة أنه حصلت مشكلة فأُوجِد لها حلًا وأثناء خلق حل للمشكلة ظهرت الكثير من المشاكل الأخرى لتقع في سلسلة من المشاكل لا تنتهي. وبعد حلّ جميع المشاكل سيصبح المنتج جاهزًا للعمل، أي أن دورة حياة أي منتج سواءً أكان برمجيًا أو ماديًا ستحتوي على المشاكل، وبناءً على ذلك تكون مهارة حل المشاكل اللَبِنَة الأساسية في بناء مشوارك البرمجي، والّتي يجب علينا الإهتمام بها عند الإقدام على تعلّم البرمجة. تكون طريقة تعاملنا مع المشاكل غير منظمة وعشوائية في أغلب الأحيان، فمعظمُ المبرمجين الجُدد يَبْدَؤُونَ بحلّ أي مشكلة تُواجهُهُم بالطريقة التالية: جرّب أي حلّ للمشكلة. إذا لم ينجح الحلّ الأول حاول أن تجرّب أي حلّ آخر. إذا لم يفلح الحلّ كرر الخطوة الثانية إلى أن تصل إلى الحلّ. لا يحصل هذا الأمر مع المبرمجين فقط، وإنما يحصل مع أي شخص يواجه مشكلة ولا يستعن على حلها بالتحليل والتفكير المنطقي. في الحقيقة، قد يحالفك الحظ أحيانًا ويتم حلّ المشكلة ولكن كن حذرًا! فهذه هي الطريقة الأسوأ لحلّ المشكلات بل وإنها ستهدر وقتك بشكل كبير لذا من الأفضل استخدام طريقة منظمة توصلنا للحلّ، واسمح لي بأن أشاركك طريقة شاملة توصلك إلى حلّ أي مشكلة قد تواجهك. بناء خطة حلّ شاملة إن خطة الحلّ الشاملة هي مجموعة من الخطوات الَّتي تتبعها لحلّ أي مشكلة تواجهك، حيث تكون هذه الخطة عامة وتخصص بحسب المشكلة، وهي ليست تعليمات ثابتة وإنما مبادئ ننطلق منها جميعًا، وكلٌ منا يطبقها بأسلوبه الخاص، وفي نهاية المطاف إذا انطلقنا جميعًا من نفس المبادئ، فسنصل حكمًا على نفس جودة الحلّ أيضًا. إن هذه الخطة مؤلفة من عدة أجزاء ويناقش كلّ جزء فيها جانبًا معينًا من المشكلة إلى أن نصل للحلّ، وهي على الشكل التالي: 1. فهم المشكلة إن فهمنا للمشكلة المطروحة هي الخطوة الأكثر صعوبة في طريقنا لحلّها، بل إن أكثر المشاكل تأتي صعوبتها من عدم تمكننا من فهم عميق لها. ولكن متى تعلم بأنك استطعت فهم المشكلة؟ إذا كنت قادرًا على شرحها بكلمات واضحة وسهلة بحيث يستطيع أي شخص فهمها عندها تكون بالفعل قد فهمت المشكلة. هل تذكر عندما كنت عالقًا في مشكلة وبدأت بشرحها فوجدت أخطاء منطقية كثيرة لم تكن قد انتبهت لها من قبل؟ أغلب المبرمجين قد مروا بهذه الحالة من قبل، لذلك من الأفضل دومًا أن تكتب المشكلة الَّتي تواجهك باستخدام مخططات الحالة (State diagram وهي نوع من المخططات الَّتي تستخدم لتوصيف سلوك نظام ما) أو بأن تخبر شخص آخر عن المشكلة سواءً أكان زميل لك في الشركة أو عضو في الفريق أو أي شخص أخر. شاع بين المبرمجين استخدام البطة المطاطية في شرح أجزاء المشكلة لها لفهمها وإيجاد حل لها. يعد أسلوب البطة المطاطية في تنقيح الأخطاء من أكثر الأساليب سهولة وبساطة، إذ يضع المبرمج بطةً بجوار حاسوبه، وعند مواجهته لأي مشكلة يشرع في شرح الشيفرة البرمجية للبطة وما هي النتيجة المرتقبة من الشيفرة وموازنتها مع النتيجة الحالية وغالبًا ما يجد الخطأ أثناء شرحه. وخلاصة لهذه الخطوة أنقل إليك مقولة ألبرت أينشتاين: 2. تحليل المشكلة إن تقسيم المشكلة يلعب دورًا مهمًا في طريقك لإيجاد الحلّ، لذا حاول أن تقسّمها إلى أجزاء صغيرة ثمّ حُلّ كلَّ جزء منها على حدة ويُنصح في البداية بحلّ أسهل جزء منها ومن ثمّ الأصعب فالأصعب وهكذا إلى أن يتمّ حلّ جميع أجزائها، وبعدها إجمع هذه الأجزاء مع بعضها للحصول على الحلّ النهائي للمشكلة الأصلية (الكبيرة). منذ فترة كنا بصدد برمجة إضافة لمتصفح غوغل كروم بهدف تسهيل مهمة لموقع ما، فقررنا تجربة هذه الطريقة وبدأنا بتقسّيم المهمة على أجزاء ثم عملنا على حلّ كل جزء منها، وبعدها جمعنا هذه الأجزاء مع بعضها بعضًا لبناء الإضافة، وبالفعل كان العمل بهذه الطريقة سهلًا جدًا ومريحًا كما لم نعهده من قبل. في بعض الأحيان عندما تواجه شيفرات برمجية كتبها مبرمجون لا يتبعون مبادئ SOLID (وهي مجموعة من العادات والمبادئ الَّتي يتبعها المبرمجون للحصول على شيفرة برمجية قابلة للصيانة وسهلة التعديل والتكيف مع متطلبات المشروع المتغيرة)، وغالبًا ما تكون شيفرات أولئك المبرمجين غيرمفهمومة ومتشابكة ويطلق عليها اسم Spaghetti code (تكون هذه الشيفرات ذات بنية معقدة ومتشابكة وصعبة القراءة وغير مرتبة أي تكون مثل المعكرونة ملتوية ومتشابكة) ولنفرض أنه طُلبَ منك تعديل هذه الشيفرة أو إضافة وظائف جديدة إليها،عندها حتمًا ستواجه العديد من المشاكل في عملية تقسيم المشكلة ومعرفة أي جزء من الشيفرة البرمجية المُسبب للخطأ لذا كان الحصول على شيفرات برمجية مرنة وقابلة للتعديل هي الأرضية المشتركة بين العديد من تقنيات تبسيط الشيفرات البرمجية مثل مبادئ SOLID أو مبدأ MVC والذي ينص على تقسيم الوحدات من حيث طبيعة مهمتها إلى ثلاثة أقسام (Model-View-Controller) والبرمجة كائنية التوجه OOP (Object-Oriented Programming)، إذ أن جميعهم يهدفون إلى فصل الأكواد إلى أقسام ليسهل تطويرها وتنقيحها وصيانتها. 3. إعداد خطة للحل بعد أن فهمت وحللت المشكلة، يأتي دور وضع الخطة المناسبة للحلّ بحيث تغطي كافة الجوانب والتفاصيل للمشكلة، ولا تشرع في الحلّ من دون خطة (على أمل أن تجد الحلّ بطريقة ما) لأن المفتاح الرئيسي للوصول للحلّ هي الخطة الواضحة والمنظمة والتي تضمن وصولنا للحلّ النهائي. أعط لنفسك وقتًا لتحلّيل المشكلة وربط المعلومات المدخلة إلى البرنامج ونوعها والمعلومات الَّتي ستظهر كخرج للبرنامج وفهم سياقها وللحصول على خطة جيدة يجب عليك الإجابة على السؤال التالي: إذا أُعطي للبرنامج الدخل س، ما هي الخطوات اللازمة للحصول على الخرج ع؟ إن إجابتك على هذا السؤال سوف يحدد ماهي الخطوات اللازمة لحلّ المشكلة ومن ثَمَّ تقوم بترتيبها في خطة واضحة ومنظمة من أجل الحصول على الخرج الذي تريده. 4. مواجهة حالة السكتة البرمجية ماذا لو فرضنا أنك لم تستطع حلّ أي جزء من المشكلة، ولا حتى الأجزاء السهلة منها (وهذا قد يحدث في بعض الأحيان)، إن كثير من المبرمجين يقعون في هذه الحالة فلا يستطيعون أن يُحرزوا أي تقدم يذكر في تطوير الشيفرة البرمجية وهذا أشبه ما يمكن بالسكتة الدماغية (حيث لا يستطيع المريض القيام بأي حركة)، في الحقيقة إن هذه الحالة طبيعية جدًا ومعظمنا قد تعرض لها في بداية مشواره والاختلاف الوحيد هو أن المبرمج المحترف لديه فضول أكثر حول المشكلة ومعرفة سبب حدوثها بدلًا من أن يكون منزعجًا أو غاضبًا منها. وفي هذه الحالة هنالك حلّين يمكنك تجربتهما للخروج من هذا المأزق: 1-4. تنقيح الأخطاء (Debug) ليس المقصود هنا الأخطاء الكتابية في صياغة اللغة (Syntax errors) مثل نسيان فاصلة منقوطة أو أي خطأ في استخدام المتغيرات أو الدوال أو ما شابه ذلك من أخطاء والَّتي تقوم باكتشافها أي بيئة تطوير متكاملة (IDE وهي عبارة عن محرر شيفرة برمجية مدمج مع نظام ذكي لإكمال الكود ومصحح أخطاء). وبالطبع ليست أيضًا الأخطاء الّتي تظهر أثناء التنفيذ (Runtime Errors) والّتي تكون عادة نتيجة لفشلٍ في فتح ملف ما أو محاولة القسمة على صفر أو مثل هذه الأخطاء، وإنما المقصود هنا هو أخطاء المنطق البرمجي (Logic errors) الّتي ينفِّذ فيها البرنامج أمرًا غير الَّذي بُرمج من أجله، لذا من الأفضل أن تحاول أن تفحص الشيفرة البرمجية سطرًا سطرًا لعلك تجد هذا الخطأ، أوإذا كنت تعمل على لغاتٍ مثل (C++, C) والّتي تدعم استخدام المُنقِّح Debugger (الذي يراقب عمل البرنامج ويتحكم في تنفيذه بطريقة تستطيع فيها إيقاف تنفيذ البرنامج أو حتى تغييره في أي موضع من الشيفرة وذلك من خلال مجموعة من الأدوات الّتي يقدمها المُنقِّح، مثل: GNU Debugger) فيمكنك استخدامه لإيجاد الخطأ ومن ثَمّ إصلاحه. ملاحظة : من المنهجيات البرمجية الجيدة هي كتابة تعليقات توضيحية قبل كلّ دالة (Function) أو صنف (Class) برمجي وخُصوصًا تلك الأجزاء المعقدة منها لأن ذلك سوف يساعدك كثيرًا في عملية مراجعة الشيفرة البرمجية وتنقيحها. 2-4. مراجعة وتقييم الحلّ في كثير من الأحيان عند مواجهتنا للمشاكل وخصوصًا للكبيرة منها قد نضيع في التفاصيل الصغيرة للمشكلة الَّتي نواجهها وننسى المشكلة الرئيسية ولذلك من الأفضل دومًا أن نسأل أنفسنا هل هذه هي الطريقة الأفضل للحلّ؟ هل هنالك حلًّا عموميًا أفضل من الموجود؟ هل الشيفرة البرمجية أمثلية؟ هل الحلّ يخرق معايير الجودة المطلوبة؟ ارجع خطوة إلى الوراء وحاول أن تراها من منظور مختلف، وحتمًا ستلاحظ العديد من المشاكل التي غفلت عنها أثناء انشغالك بالتفاصيل الصغيرة. ملاحظة : هنالك طريقة أخرى يتبعها بعض المبرمجين لإعادة تقييم الحلّ وهي حذف الشيفرة البرمجية الخاطئة بالكامل وإعادة كتابتها من جديد فكثير ما يأخذ ذلك وقتًا أقل من تتبع المشكلة ذاتها وحلها. 5. البحث عن حلول عبر الإنترنت إن أغلب المشاريع البرمجية تكون متشابهة بكثيرٍ من الوظائف والخصائص، ونادرًا ما نرى مشروع ذو أفكارٍ جديدة بالكامل لذا فإن أي مشكلة برمجية تواجهها قد واجهها عدد كبير من المبرمجين من قبلك وأوجدوا لها حلولًا وشاركوها مع غيرهم، وكل ما عليك فعله هو أن تتعلم كيف تبحث عن المشكلة. وبالطبع صديقنا stackoverflow والذي يعد من أشهر منصات مشاركة الحلول البرمجية الّذي يقدم لك الحلّ الَّذي أجمع عليه أغلب، المبرمجين، ويوجد العديد من المنصات الأخرى المشابهة مثل AskUbuntu وهو النسخة العربية من موقع stackoverflow والكثير غيرهم، وحتى لو أنك قد حللت المشكلة أنصحك بتصفح الحلول الموجودة لأنك سوف تتعلم طرقًا أُخرى لحلّها قد تكون أسهل وأفضل بكثير من الحلّ الَّذي وصلت اليه. إلى الآن نكون قد ناقشنا الخطوة الأولى من الطريقة الشاملة لحلّ المشاكل والآن لننتقل إلى الخطوة الثانية. التدرب على هذه الخطة إن أي مهارة جديدة تحتاج إلى تدريبٍ مُمنهجٍ ومستمرٍ حتى تتقنها. لذا لا بدّ لك من وضع خطة واضحة للتدريب وتخصيص زمن محدد وثابت تقضيه في صقل تلك المهارة.يمكنك البدء مثلًا بتخصيص ساعة للتدريب يوميًا لمدة شهر كامل، وبعدها توازن نفسك مع ما كنت عليه في السابق من سرعةٍ في تحديد المشكلة وجودةٍ الحل المطروح والوقت الإجمالي لحل المشكلة وبكل تأكيد ستلاحظ تحسنًا واضحًا في أدائك. وقد تساءل نفسك كيف يمكنني التدرب على حلّ المشاكل؟ في الحقيقة هنالك طريقة مفيدة جدًا أنصحك بها لتكوين قاعدة صلبة تنطلق منها، وهي على الشكل التالي. 1. التدرب على المسائل البرمجية تعد المسابقات البرمجية سواءً على مستوى الجامعة أو على مستوى القطر أو حتى على مستوى العالم مثل مسابقة ACM ICPC من أفضل الفرص للتدريب في مجال البرمجة وصقل هذه المهارة بل وتعتبر دفعة كبيرة لك في رحلتك كمبرمج ولمستقبلك المهني أيضًا، إذ تبادر العديد من الشركات العالمية لِضمّ أولئك المنافسين المتميزين إليها بعد أن أثبتوا بالفعل أنهم النخبة في مجالهم. فإن كنت تخطط للانضمام إلى هذه المسابقة فلا تتردد وبادر بالتحضير لها من الآن. ويقدم لنا الكاتب Steven Halim في كتابه Competitive Programming بعض الفوائد الَّتي نجنيها من التدرب على حلّ المشاكل البرمجية في المسابقات. السرعة في كتابة الشيفرة البرمجية كتابة الشيفرة البرمجية بسرعة في المسابقات يوفر لك الكثير من الوقت للتفكير في بقية المشاكل واختبارها لذلك نرى أغلب المبرمجين يتدربون على سرعة الكتابة على لوحة المفاتيح لينصب تركيزهم على حلّ المشكلة فقط، ولذلك من المنطقي أن تفضل الشركات الموظفين الَّذين سَبق إن شاركوا في المسابقات البرمجية لمعرفتها بسرعة إنتاجيتهم وقدرتهم على تطوير وإيصال منتج برمجي بسرعة عالية بِالْمُوازنة مع أقرانهم ممن لم يشاركوا في المسابقات. العصف الذهني وحصر الخوارزميات الممكنة لا بدّ من تحسين قدرتك على تحديد نوع المسألة بسرعة وأن تمتلك المعرفة الكافية بالخوارزميات لتتمكن من تطبيقها مباشرة على المسألة المطروحة، لذلك ينبغي على المبرمج الَّذي ينوي الانضمام إلى المسابقة أن يتمكن من جميع الخوارزميات الشائعة في المسائل البرمجية. العمل الجماعي وروح الفريق تعتمد المسابقة البرمجية على ترتيب الفرق بحسب عدد المسائل الَّتي أجابوا عليها، والوقت الَّذي استهلكوه لحلّ كُلَ مشكلة، وعدد الحلول الخاطئة الَّتي أُرسلت للحكم. وانطلاقًا من ذلك تكون فوائد العمل كفريق واحد متعددة منها إمكانية توزيع المسائل على كلّ عضو في الفريق بحيث يزداد العدد الكلي للمسائل المحلولة بتوزيعها بين بعضهم بعضًا، ومناقشة حلّ كلّ مسألة وبذلك ينقص عدد الحلول الخاطئة الَّتي قد تُرسل للحكم، وحُكمًا سينقص الوقت المستغرق لحلّ المسائل. وعلى الصعيد العملي أيضًا نجد أن طبيعة عمل المبرمجين سواءً في الشركات الصغيرة أو الكبيرة، يُطلب منهم العمل كفريق واحد، فعلى سبيل المثال منذ فترة طَلَبَ مني أحد العملاء بناء موقع ويب، وكنت عندها قد أنتهيت من بناء فريقي البرمجي. وبالفعل بدأنا العمل على الموقع و قسّمنا العمل على أجزاء فعكف كلُّ واحد منا على تطوير جزئه الخاص من الموقع، إذ استلمتُ جزء الواجهات الخلفية، وقام أحد أعضاء الفريق باستلام الواجهات الأمامية، والآخَر استلم بناء تطبيق للهواتف الّتي تعمل بنظام أندرويد وفي نهاية الأسبوع جمعنا كل الأجزاء مع بعضها بعضًا وأنهينا المشروع بوقتٍ قياسي لم نكن لنستطيع بلوغهُ لو أننا لم نعمل كفريقٍ واحد، ولذا فإن انضمامك إلى المسابقة البرمجية يجعلك تتدرب على العمل ضمن فريق قبل أن تواجهها في سوق العمل في حال أردت العمل مع أي شركة مستقبلًا. المرونة العصبية إن تدريبك المستمر على المسائل البرمجية سيؤدي إلى زيادة منطقة الحصين (المنطقة المسؤولة عن الذاكرة والتوجيهات) في الدماغ وهذا ما أثبتته الباحثة اليانور ماجواير من كلية لندن الجامعية عندما أجرت دراسة على سائقي الأجرة في مدينة لندن فقاموا بإجراء فحص بالرنين المغناطيسي الوظيفي fMRI لأدمغة السائقين الذين قضوا قرابة عامين من التدريب في سبيل تعلم كيفية التنقل في منعطفات المدينة وذلك من أجل الحصول على رخصة القيادة ومقارنتها بصور لأدمغة رجال أصحاء من نفس العمر ولا يعملون كسائقي أجرة فتبين أن منطقة الحصين أصبحت أكبر لدى السائقين، كما لاحظوا أنه كلما أمضى سائق الأجرة فترة أطول في التدريب، زاد حجم الحصين، وذلك استجابة إلى الخبرة الّتي يكتسبها السائق. والآن تخيل معي ما سيحدث في حال تدربك على حل المشاكل لمدة عام أو أكثر، سيصبح حلّك للمشاكل البرمجية عادة سهلة ومسلية خلاف ما كانت عليه من صعوبة وتعقيد. يوجد العديد من المواقع الَّتي تقدم المسائل البرمجية مثل HackerRank أو موقع TopCoder والكثير غيرهم. 2. التدرب باستخدام الألعاب نعم أنت لم تخطئ القراءة إنها الألعاب! تعد الألعاب أداة قوية جدًا لتنمية المهارات العقلية والقدرات الدماغية على التفكير والتذكر وربط المعلومات ببعضها بعضًا، حيث أن غالبية الألعاب تحتاج لتجميع المعلومات وتنظيمها بحيث تستطيع الاستفادة منها وجعلها مفتاحًا للحلّ، بل إن الركيزة الأساسية الَّتي تشترك بها كافة الألعاب هي حلّ المشاكل! بالتأكيد نحن لا نقصد هنا ألعاب الفيديو فقط وإنما ألعاب الذكاء أيضًا مثل : لعبة الشطرنج، والألغاز الرياضية، ولعبة سودوكو، ولعبة Go، والكثير من الألعاب الَّتي تندرج تحت هذا السياق تعد ألعاب مفيدة. فعند محاولتك حلّ الألغاز في Saw أنت فعليًا تقوم بحلّ المشاكل (ولكن بإطار مختلف). وتساعدنا أيضًا في انشاء سيناريوهات للحلّ وهذه المهارة مفيدة في عالم البرمجة في حال تعثرت في أسلوب حلّ معين فتغير سيناريو الحلّ وتبدأ من جديد. في الحقيقة إن الشيء المشترك بين جميع الناس الناجحين هي اكتسابهم لعادات يومية لحلّ المشاكل الصغيرة على سبيل المثال بيتر تيل (أحد مؤسسي شركة باي بال والمصنف كرابع أغنى شخص على مستوى العالم لعام 2014 بميزانية تفوق $2.2 بليون دولار) صرح بشكل رسمي أنه يلعب الشطرنج يوميًا بل وشارك في بطولات الشطرنج مرات عديدة، وإيلون ماسك (رائد الأعمال والرئيس التنفيذي لعدة شركات مثل: سبيس إكس لتصنيع مركبات الفضاء وتسلا لصناعة السيارات الكهربائية وغيرها)أكد بأنه يلعب ألعاب الفيديو والكثير غيرهم كرسوا جزءًا من وقتهم اليومي لتنمية مهارة حلّ المشاكل. ولكن يجب أن تكون حذرًا في إدارة وقت اللعب ويُفضل أن تختار الأوقات المناسبة للعب ووضع مدة زمنية مخصصة لها، وذلك لأن الهدف ليس إضاعة الوقت والتسلية فقط وإنما التدرب على حل المشاكل ولكي لا ينتهِ بك المطاف إلى قضاء اليوم بأكمله على الألعاب. الخلاصة اعتقد أنك قد كونت فكرة جيدة عن أهمية حلّ المشاكل وضرورتها في مشوارك البرمجي وكيفية بناء خطة حلّ شاملة انطلاقًا من فهم المشكلة وتحليلها ومرورًا بإعداد خطة مخصصة لكلّ مشكلة وتقسيم المشكلة إلى أجزاء ليسهل حلّها ومواجهة حالة السكتة البرمجية وكيفية التغلب عليها من خلال تنقيح الأخطاء أو مراجعة وتقييم الحلّ، وأهمية البحث عن حلول على الإنترنت لنفس المشكلة وانتهاءً بالأسلوب الصحيح للتدرب على حل المشاكل وما هي أفضل الوسائل لتحقيق ذلك سواءً بالانضمام إلى المسابقات البرمجية أو بالتدرب بإستخدام الألعاب. وختامًا، لا تتوقع أن تصبح مبرمجًا محترفًا في غضون أسبوعٍ أو شهر واحد فهذا ضرب من الخيال بل ستحتاج لحلّ الكثير من المشاكل لبناء قاعدة معرفية صلبة تمكنك من مواجهة أي مشكلة مهما كانت صعوبتها وعندها بالتأكيد سوف تستحق لقب مبرمج محترف.
  8. إن الحصول على اسم نطاق جيد لن يؤدي في كثير من الأحيان إلى زيادة عدد الزيارات إلى موقعك فحسب، بل سيسهل أيضًا تذكره - وهذا يجلب المزيد من الزيارات أيضًا. هناك كثير من الأشياء التي يجب على مصمم المواقع أن بفكر بها عندما يصمم موقع. وخصوصًا إن كانت لديه المسؤولية الكاملة عن الموقع، فيجب عليه أن يأتي باسم نطاق جيد للموقع. على الرغم من أن الكثيرين يعتقدون أن اختيار اسم جيد ليس بتلك الأهمية، إلا أن اسم النطاق مهم مثل اسم شركتك أو موقع الويب أو صفحة فيس بوك. إن العثور على اسم نطاق مثالي ليس سهلًا على الإطلاق في يومنا الحالي. كثير من النطاقات التي من الممكن أن تفكر بها إما أن تكون مستخدمة من قِبل شركة أخرى أو شخص ما اشتراها للربح أو حتى في الأعمال التجارية. غالبًا ما يمضي خبراء الويب وقتًا في العثور على اسم نطاق مناسبٍ أكثر من الوقت في تصميم هوية أو موقع ويب. العلامة التجارية تعد العلامة التجارية مفهوما مهما جدًا بالنسبة للأعمال. يوجد لكل شركة علامة تجارية، تمثل اسمها وشعارها ومخطط ألوانها وهويتها البصرية. ومع ذلك، لا نجد أن كل العلامات التجارية معروفة. وهذا هو الفرق في الوعي بالعلامة التجارية. تعتمد الشركة التي لديها وعي بالعلامة التجارية على قدرة عملائها على تذكر علامتهم التجارية والتعرف عليها في ظروف مختلفة وربطها بعناصر علامتها التجارية. وهو يتعلق برضى العملاء عن أحد المنتجات وإدراك المنتجات فور رؤيتهم للعلامة التجارية. إنه الفرق بين كوكا كولا وشركة كولا بلا اسم. أو الفرق بين منتج شركة Apple ومنتج شركة غير معروف اسمها. قبل 10 سنوات لم يكن الموضوع بهذا الحجم كما هو عليه الآن، إلّا أن اليوم إن كنت تملك شركة وتريد علامة تجارية قوية ، فإن المعرفة الأساسية في اختيار اسم نطاق لموقعك يعتبر مهمًا جدًا، كما هو الحال مع عنوان مكتبك. وحيث يمكّن الأشخاص من العثور عليك والاتصال بك. الامتدادات (Extensions) إن أكثر الامتدادات استخدامًا في العالم هي الامتدادات الثلاثة التالية com. و net. و org.. يبدو اسم النطاق مع واحدة من هذه الامتدادات مثاليًا لأي نوع من الأعمال. فاستخدام أحد الامتدادات المجانية مثل TK. قد لا يكون ناجحًا جدًا. في كثير من الأحيان لا يستطيع الزوار تذكر موقعك، لذلك هم يحاولون استخدام اسم شركتك مع هذه الامتدادات الثلاثة المشهورة. وهذا ما أفعله في كثير من الأحيان ، لذا أني أفترض أن إحدى الشركات التي سأكون مهتمًا بالتعامل معها، أو أن أحد مواقع الويب التي سأكون مهتمًا بزيارتها سيكون له واحد من هذه الامتدادات الثلاثة. وكما قلت للتو أن هذه الامتدادات ذات شعبية كبيرة، لذا يتوقع الزوار أن تستخدم الشركات هذه الامتدادات الثلاثة فقط. يقدم بعض مقدمي خدمات حجز النطاقات عروضًا لمن يشتري الامتدادات الثلاثة سيحصل على خصم. لذا فإن حصولك على الامتدادات الثلاثة سيكون مفيد جدًا لك في المستقبل - تعدّ هذه الخطوة ذكية جدًا وستضعك في موضع الصدارة. من الميزات الأخرى لاستخدام الامتدادات الثلاثة (أو واحد منها) أن أسعارهم رخيصة جدًا. ومدعومين في جميع أنحاء العالم ومن الصعب العثور على مقدم خدمات حجز النطاقات لا يبيعها. بالتأكيد أن لا أقول أنه يجب عليك أن تملك واحدًا منهم. الشريك المؤسس لووردبريس Matt Mullenweg لديه واحد من أروع أسماء النطاقات ألا وهو www.ma.Tt. نعم، لديه امتداد غريب إلا أنه يتوافق مع إسمه بشكل مثالي. إذا تمكنت من العثور على شيء ذكي مثل هذا الامتداد، فاحصل عليه مباشرة، ولكن فكر في حقيقة أن الأشخاص الذين لا يعرفون الكثير عن الويب لا يعرفون عن وجود شيء آخر غير امتدادات com. و net. و org.. وينبغي أن يكون هذا الجزء غذاء لأفكارك. ومع ذلك، يعدّ اختيار امتداد لاسم النطاق واحدًا من أسهل المهام في إنشاء علامة تجارية قوية. ولكن انتظر! هناك الكثير من الأمور التي يجب عليك متابعتها أيضًا. الموقع بالتحدث عن الإمتدادات، يعدّ الموقع شيء آخر يجب عليك التفكير فيه. إنه يعتمد بشكل كبير على نوع أعمالك والغرض منها. ويعتمد كثيرًا على الجمهور والسوق وسلوكهم. إذا كان لديك شركة دانماركية تستهدف الدنماركيين فقط، فإن وجود موقع ويب ينتهي في com. لن يكون له داعٍ لأننا نستطيع الحصول على امتداد سهل التمييز مثل dk.. جميع البلدان لديها امتدادات نطاق (Top-level Domain). وبالتأكيد dk. ليس هو الخيار الوحيد المتوفر. يُستخدم رمز البلد TLD في أغلب الأحيان للشركات والأفراد في البلد المَعني. ويكيبيديا لديها قائمة طويلة وكاملة من TLDS في جميع أنحاء العالم. من السهل ملاحظة أن بعض هذه الامتدادات يتطلب إما تسجيل شركة في البلد أو على الأقل الحصول على تصريح إقامة، لذلك فإن التسجيل عليها ليس بتلك السهولة، وخصوصًا إن كنت تتطلع أن تفعل مثلما فعل Matt في امتداد موقعه. وهو أيضا خيار للشركات التي تستهدف الدول التي لا تستخدم الأبجدية الإنجليزية، مثل الدول الآسيوية، أو العربية، أو روسيا. وتسمى IDNs (أسماء النطاقات الدولية Internationalized Domain Names) ويجب أن تستخدمها فقط لاستكمال عنوان com. (أو أي TLD آخر) وإلا فإنه سيكون مربكًا للزائرين الذين لغتهم الرئيسية الإنجليزية أو أحد الأبجديات المستخدمة في أوروبا أو أمريكا. خدع وحِيَل لقد تحدثنا عن الخدع قبل قليل وهي الأشياء الذكية التي تقوم بها لدمج اسم النطاق مع الامتداد. صدق أو لا تصدق أنه يوجد على الإنترنت أدوات مخصصة لمساعدتك في إيجاد تركيبات ممكنة لاسم موقعك وامتداده! يعدّ موقع Domai.NR من أفضل الخيارات المتوفرة للاستخدام في هذا المجال، لأنه يعطيك العديد من الخيارات في بحث بسيط. تستعمل الناس هذه الخدع ليست لأنها رائعة فحسب، بل لأنه في أغلب الأحيان يكون الأسم المناسب لشركتهم مأخوذ بالفعل وهذا محبط جدًا، وإنه يحدث في كثيرٍ من الأحيان . لأن العثور على اسم مناسب ليس سهلًا إلى هذه الدرجة. لذلك أحيانًا قد ترغب في الإطلاع على بعض الخدع. قبل الشراء رائع، الآن وجدت اسم النطاق الذي تبحث عنه وأنت مستعدٌ لشرائه. لا، أنت لست مستعد! لقد نسيت شيئًا ما. وهو تتأكد من أن اسم النطاق الخاص بك لا يؤدي بك إلى مشاكل قانونية مع شركات أخرى. تأكد من أنه ليس هنالك شركة أخرى مشابهة تقوم بنفس الأعمال التي تقوم بها. مايكروسوفت (Microsoft) ضد ميكروايسوفتيس (MikeRoweSoftis) النزاع الأكثر شعبية بشأن انتهاك اسم النطاق. حدث هذا قبل عشر سنوات تقريبًا وكانت قضية دسمة لوسائل الإعلام عندما كان مصمم المواقع الشاب مايك رو ينازع اسم نطاقه مع العملاق الأميركي بسبب تشابه اسم النطاق الخاص به مع اسم نطاق شركة مايكروسوفت. إن التقدم بطلب العلامة التجارية هو أمر تقوم به الشركات الضخمة، بما أنهم يعرفون أن مواقعهم ستكون ذات شعبية قوية بطبيعة الحال، لكن هذا أمر مكلف للغاية. وخصوصًا إذا كنت في البداية، لذا فقد ترغب في حماية اسمك بطريقة أخرى وترك فكرة شراء علامتك التجارية لوقت لاحق. بعض التقنيات التي يمكنك استخدامها تسمى الشراء بالجملة. يفضل العديد من الأفراد شراء الكثير من النطاقات ذات الأسم نفسه والامتدادات المختلفة، وإعادة توجيههم جميعًا إلى الموقع الرئيسي. خدمات Whois من الأخطاء التي يرتكبها العديد من الأفراد هي تسجيل نطاقاتهم ضمن خدمة الخصوصية WHOIS. وهذه الطريقة خطيرة للغاية، على الرغم من أنها تبدو مفيدة عندما تسمع بها لأول مرة. ولكن ماذا يحدث إذا قمت بتسجيل نطاقك ضمن خدمة خصوصية WHOIS هو أن تفاصيل الاتصال الخاصة بك مخفية. بدلاً من أن تملئ الحقول بالمعلومات الخاصة بك يجب عليك أن تملئ الحقول بالمعلومات الخاصة بالمزود الذي اشتريت من عنده. ولكن لماذا يعدّ هذا الشيء خطير؟ لأنه وفقًا لسياسات ICANN ، يكون الاسم في تفاصيل WHOIS للذي يملك النطاق (في هذه الحالة اسم الشركة الّتي اشتريت منها النطاق). هذا يعني أنه إذا تم اختراق موقعك، فلديك فرصة ضئيلة لإثبات أن النطاق هو ملكك بالفعل. إذا كان اسم المخترق في السجلات، فهو في الواقع يمتلك النطاق الذي دفعته مقابله. لذلك حتى لو كنت ترغب في حماية اسم نطاقك، لا أنصحك أن تفعل ذلك باستخدام هذه الخدمات، لأنها خطيرة جدًا. الخاتمة يمكن أن يؤدي امتلاك اسم نطاق جيد إلى تحسين تجربة المستخدم على موقع الويب الخاص بك. حتى لو كانت اليوم العديد من زيارات موقع الويب تأتي من محركات البحث والإحالات، إلا أن وجود اسم سهل للتذكر سيكون دائمًا مفيدًا. ومن المحتمل أن ينخفض نسبة الأشخاص الذين ينسون كيفية العثور عليك. ضع في حساباتك أن نطاقات المستوى الأعلى (Top-level domains) يمكن أن تساعدك في تصدر نتائج محرك البحث. وذلك لأنه يتم فهرسة ‎.com دومًا بشكل أسرع وأفضل من ‎.ru. إن قضاء الوقت في التفكير في كل التفاصيل والعثور على اسم النطاق الصحيح هو أمر سيستغرق الكثير من الوقت. ترجمة -وبتصرف- للمقال Essential Tips for Registering a New Domain Name
  9. كيف شَكّل نموذج الشلال (Waterfall)، والنموذج المرن (Agile)، وغيرها من أُطر التطوير الشكل الحالي DevOps؟ إليك ما اكتشفناه. إذا أردت أن تحلل حمض DevOps النووي، فما الذي ستعثر عليه في تقرير أسلافها؟ هذه المقالة ليست مقاربة منهجية، لذا فإن كنت تبحث عن نصيحة أو مناقشة حول أفضل المنهجيات المتبعة لهندسة البرمجيات، فيمكنك التوقف عن القراءة هنا. لأننا في هذا المقال سنبحث في التسلسل التاريخي للمنهجيات منذ نشأتها إلى وقتنا الحالي وسنتعرف كيف أصبحت DevOps في مقدمة التحولات الرقمية في يومنا الحالي. لقد تطورت DevOps عبر الكثير من التجربة والخطأ، مع سعي الشركات للاستجابة لطلبات العملاء وتحسين الجودة والصمود في السوق مع ازدياد التنافسية بشكل متصاعد. ومما يزيد هذا التحدي صعوبةً هو انتقال الاقتصاد العالمي القائم على المنتجات إلى الاقتصاد العالمي القائم على الخدمات والذي أدى اتصال الناس بطرق جديدة. أصبحت دورة حياة تطوير البرمجيات المبنية على الخدمات والخدمات المصغرّة متزايدة التعقيد، كلًا من المتصلة ببعضها بعضًا و المجمعّة. لذا فإن DevOps دفعت للتطور بشكل أسرع وأكبر من أي وقت مضى، وإن سرعة التغيير هذه ستمحو المنهجيات التقليدية الأبطأ مثل نموذج الشلال (waterfall). بالتأكيد نحن لا نقلل من شأن نموذج الشلال فالعديد من المنظمات لديها أسباب وجيهة للاستمرار في استخدامه. لذا ينبغي على المنظمات الواعية أن تهدف إلى الابتعاد عن العمليات أو المنهجيات التي تُهدر الوقت، وإن الكثير من الشركات الناشئة تمتلك ميزة تنافسية على الشركات التي تستخدم نهجًا تقليديًا في عملياتها اليومية. والجدير بالذكر أن أغلب النماذج الحالية من نموذج التصميم الرشيق (Lean) ونموذج (Kanban) ونموذج التصميم المستمر (Continuous) ونموذج التصميم المرن (agile) تتتبع مبادئ وعمليات تعود إلى أوائل الأربعينات، لذا لا يمكن أن ندعي DevOps أنها فكرة جديدة كليًا. دعنا نعود بالزمن لبضع سنوات وننظر إلى نماذج تطوير البرمجيات مثل نموذج الشلال، والنموذج الرشيق، والنموذج المرن. يوضح الشكل التالي المخطط الزمني لتطور دورة حياة تطوير البرمجيات. (تذكر أننا لا نبحث عن أفضل طريقة ولكننا نحاول فهم المنحى الذي أحدث تأثيرًا إيجابيًا على هندسة البرمجيات والتي قمنا بتجميعها منذ 67 عامًا والتطور الذي حصل على مرِّ هذه السنوات حتى وصولنا لعقلية DevOps). نموذج الشلال التقليدي (Waterfall) من وجهة نظرنا، تأتي أقدم الممارسات من نموذج الشلال، الذي قُدم لأول مرة من قبل الدكتور وينستون دبليو رويس في ورقة نشرت في السبعينيات. يؤكد نموذج الشلال على النهج التقدم المنطقي والتتابعي من خلال مراحل جمع المتطلبات والتحليل وصياغة الشيفرة البرمجية والاختبار وهذه المراحل في إتجاه واحد أي يجب عليك إكمال كل مرحلة على حدة، وذلك باستكمال جميع المعايير المطلوبة في المرحلة وبعدها تستطيع أن تبدأ بالمرحلة التالية. يفيد نموذج الشلال في المشاريع التي تحتاج إلى تسلسلات صارمة والتي لها مجال مفصل ويمكن التنبؤ به أو المشاريع التي القائمة على الأحداث. وخلافا للاعتقاد السائد، فإنه يسمح أيضا للفرق بتجربة وإجراء تغييرات في التصميم في وقت مبكر خلال مرحلة جمع المتطلبات ومرحلة التحليل، ومراحل التصميم. نموذج التصميم الرشيق (Lean) رغم أن التصميم الرشيق يعود إلى عام 1450 في مدينة البندقية، إلا أننا سنبدأ عندما قامت تويوتا بإنشاء نظام إنتاج تويوتا، الذي طوره المهندسون اليابانيون بين عامي 1948 و 1972. ونشرت تويوتا وصفًا رسميًا للنظام في عام 1992. يستند نموذج التصميم الرشيق إلى خمسة مبادئ: القيمة ومجرى القيمة والتدفق والسحب والكمال. ويكمن جوهر هذا النهج في فهم ودعم تدفق قيم فعال والتخلص من العمليات التي لا تضيف قيمة وتعدّ هدرًا وضياعًا وتقديم قيمة مستمرة للمستخدم. ويهدف أيضًا لإسعاد المستخدمين بدون انقطاع. نموذج Kaizen تعتمد kaizen على التحسينات الإضافية وتتكون دورة حياة kaizen المراحل التالية: التخطيط ->التنفيذ->التحقق->التصحيح. وتهدف عقلية kaizen للتوجه للتحسين المستمر. طُوّر مفهوم kaizen في الأصل لتحسين تدفق وعمليات خط التجميع، وهو يضيف أيضًا قيمة عبر سلسلة التوريد. وكان نظام إنتاج تويوتا واحدًا من أوائل المنفذين لنموذج kaizen والتحسين المستمر. يعمل كل من kaizen و DevOps معا بشكل جيد في البيئات التي ينتقل فيها سير العمل من التصميم إلى الإنتاج. يركز kaizen على مجالين: التدفق (هو التوجه نحو تدفق المواد والمعلومات) العملية (وهي تعني تحسين وضعية عمل الشخص) التسليم المستمر (Continuous Delivery) وقد ألهمت kaizen تطوير العمليات والأدوات لأتمتة الإنتاج. وقد تمكنت الشركات من تسريع الإنتاج وتحسين الجودة والتصميم والبناء والاختبار والتسليم عن طريق تقليل مصادر الهدر (بما في ذلك الثقافة والعقلية) والتوجه نحو الأتمتة قدر الإمكان وذلك باستخدام الآلات والبرمجيات والروبوتات. كما أن معظم فلسفة kaizen تنطبق أيضا على الممارسات التجارية والبرمجيات غير المحدودة ونشر التسليم المستمر لمبادئ وأهداف DevOps. نموذج التصميم المرن (Agile) ظهر بيان تطوير البرمجيات المرنة في عام 2001، والذي كتبه مجموعة من الشبان الطموحين النهج المتبع في التطوير. إن النموذج المرن لا يقوم على إهمال الحيطة والحذر، أو كسر خطط التصميم، أو بناء برمجية بخشونة أو بشكل عشوائي. وإنما هو أن تكون قادر على الإنشاء والاستجابة للتغييرات. يعتمد نموذج المرن على اثني عشر مبدأً والتي تقدر الأفراد والتعاون فيما بينهم والبرمجيات الصالحة للاستعمال والتعاون مع العملاء، والاستجابة للتغيير. النموذج المرن المنضبط (Disciplined Agile Delivery) ومنذ أن ظل البيان المرن ثابتًا لمدة 20 عامًا، بحث العديد من الممارسين للنموذج عن طرق لإضافة خيارات إضافية ومخصصة إلى النهج. بالإضافة إلى ذلك، يركز البيان المرن بشكل كبير على التطوير، لذا تكونت الحاجة الماسّة إلى الحلول بدلًا من الشيفرات البرمجية أو البرمجيات وخصيصًا في بيئة التطوير السريعة اليوم. شارك سكوت أمبلر وماركس بريز في تأليف عملية تسليم المرنة المنضبطة وإطار عمل مرن ومنضبط، استنادًا إلى خبرتهما في شركة Rational و IBM والمنظمات التي تحتاج فيها الفرق إلى مزيد من الخيارات المتاحة أو الشركات التي لم تكن ذات خبرة بما يكفي لتنفيذ المنهجية الرشيقة (lean)، أو حيث لا يتناسب دورة حياة البرمجية مع سياق النهج. تأتي أهمية النموذج المرن النضبط أو ما يعرف DAD (اختصارًا للعبارة Disciplined agile delivery) و DA (اختصارًا للعبارة Disciplined agile) من أنه يسمح لنا باتخاذ قرارت حول العمليات بشكل مبسط من أجل تقديم حلول تدريجية ومتكررة. ويعتمد DAD على العديد من ممارسات تطوير البرمجيات المرنة (Agile)، بما في ذلك ممارسات Scrum، وممارسات نموذج الرشيق (Lean)، وغيرها. إن الاستخدام المكثف للنمذجة الرشيقة وإعادة تحليل، بما في ذلك تشجيع الأتمتة من خلال نموذج التطوير القائم على الاختبار TDD (اختصارًا للعبارة Test-driven Development)، والتصميم الرشيق مثل Kanban و XP و Scrum و Rup من خلال اختيار واحدة من خمس دورات حياة رشيقة، وإدخال مفاهيم هيكلية المالك (Architecture Owner)، يكتسب الممارسين لنموذج المرن مجموعة من الأفكار وطرق التفكير وعمليات وأدوات لتحقيق DevOps بنجاح. نموذج DevOps وعلى المدى الذي يمكننا أن نجمع فيه، ظهرت DevOps خلال سلسلة من DevOpsDays في بلجيكا في عام 2009، لتصبح الأساس للعديد من التحولات الرقمية. يعرّف مدير DevOps الأساسي في شركة مايكروسوفت Donovan Brown نموذج DevOps بأنه والآن لنعود إلى سؤالنا الأصلي: إذا أردت أن تحلل حمض DevOps النووي، فما الذي ستعثر عليه في تقرير أسلافها؟ إننا ننظر إلى التاريخ الذي يعود إلى 80 و48 و26 و17 عامًا، ولكن في وقتنا الحالي إن البيئة اليومية سريعة الإيقاع وغالبًا ما تكون مضطربة. بطبيعتنا نحن البشر نختبر ونجرب باستمرار ونتعلم ونتكيّف ونورّث نقاط القوة ونحل نقاط الضعف تيمّنًا بجيناتنا الوراثية. يمكنك استخدام القياس عن بعد الذي تجمعه من مشاهدة الحل الخاص بك في الإنتاج وذلك لإدارة التجارب، وتأكيد الفرضيات، وترتيب أولويات الأعمال المتراكمة لديك. بمعنى آخر، يرث Devops من مجموعة متنوعة من الأطر والمنهجيات التي أثبتت جدارتها وتطورها، ويمكّنك من تحويل ثقافتك، واستخدام المنتجات كأدوات مساعدة، والأهم من ذلك، إرضاء عملائك. إن كنت مرتاحًا مع نموذج التصميم الرشيق أو المرن، فإنك حتمًا ستستمتع بفوائد DevOps. وإن كنت تستخدم نموذج الشلال فإن عقلية DevOps ستساعدك كثير في تعزيز التطوير. نموذج eDevOps في عام 2016، صاغ Brent Reed مصطلح eDevOps (لا توجد له مراجع في Google أو ويكيبيديا حتى هذه اللحظة)، وهو يُعرف بأنه "طريقة للعمل (Way of Work) التي تجلب التحسين المستمر في الشركة بسلاسة، من خلال الأشخاص والعمليات والأدوات. وجد برانت أن النموذج المرن فشل في شركات تقنية المعلومات فالشركات التي اعتمدت تفكيرًا رشيقًا كانت لا تحقق قيمة (Value) للعملاء ولم تحقق أيضًا التركيز والسرعة التي توقعوها خبراء النموذج المرن الموثوق بهم في مجال تكنولوجيا المعلومات. وعندما شعر بالإحباط لرؤية "برج عاجي" تم فيه فصل فريق خدمات تقنية المعلومات المستقل عن فرق الدعم في مجال الهندسة والتطوير والعمليات ومكتب المساعدة، عندها طبق معرفته السابقة بنموذج التسليم الرشيق المنضبط (DAD)، وأضاف بعض الأهداف والتطبيقات العملية لمجموعة أدوات DAD، من ضمنها: التركيز على الثقافة ودفعها من خلال عقلية التحسين المستمر (Kaizen)، والجمع بين الناس حتى عندما يكونون في غرفة واحدة. السرعة من خلال الأتمتة (TDD + إعادة تحليل كل شئ ممكن)، إزالة الهدر واعتماد نهج TOGAF، أو JBGE (وهو جيد إلى حدٍ ما) من أجل التوثيق تقديم القيمة (Value) من خلال النمذجة (نمذجة التصميم) و (shift left) لتمكين الكشف عن الأنماط المتضاربة أثناء المشاركة من خلال أنماط التعاون في مستودع رقمي أكثر تنوعا واستراتيجيا حديث باستخدام خبرته مع AI في IBM، صمم برنت نموذج eDevOps الذي يقوم بشكل متزايد بأتمتة لوحات التحكم لأغراض القياس وصنع القرار بحيث يتم التحسين المستمر من خلال النشر المستمر (أتمتة العمليات من مرحلة التطوير إلى مرحلة الإنتاج) لجلب الإمكانيات الحقيقية لأي منظمة. إن برنامج التحول الفعال إلى eDevOps الذي يُبنى على التحول المنضبط إلى DevOps يُمكننا من القيام بما يلي: تحويل نظام الأعمال إلى Bizdevops) DevOps). تحويل نظام الأمن إلى SecDevOps) DevOps). تحويل نظام المعلومات إلى DataDevOps) DevOps). تقديم خدمات تقنية مترابطة بشكل خفيف والتي تجمع بين جميع أصحاب المصلحة. بناء حلول قابلة للاستخدام كل أسبوعين أو أسرع. جمع وقياس وتحليل وعرض وأتمتة الرؤية القابلة للتنفيذ من خلال عمليات DevOps من المفهوم من خلال الاستخدام المباشر للإنتاج. تحسين مستمر امتثالًا بنموذج Kaizen ونموذج الرشيق منضبط. المرحلة التالية في تطوير DevOps في النهاية هل تعدّ DevOps مجموعة من العبارات الطنانة والأفكار التقنية التي تُلقى على الشركات؟ سوف ندرك بكل تأكيد مع مرور الوقت كيف DevOps سيتقدم ويتطور. ومع ذلك، فإن حمض DevOps النووي يجب أن يستمر في النضج وأن يُنقح، ويجب أن يفهم المطورون أنه ليس الحل السحري ولا علاج لكل الأمراض والحلّ لكل المشاكل. إذن ما هي العلاقة بين DevOps وبقية النماذج السابقة DevOps != Agile != Lean Thinking != Waterfall DevOps != Tools !=Technology إن DevOps تحتوي على ممارسات من النموذج المرن (Agile) ونموذج التصميم الرشيق (Lean) ونموذج الشلال (Waterfall). ترجمة -وبتصرف- للمقال Analyzing the DNA of DevOps لصاحبيه Willy-Peter Schaub و Brent Aaron Reed