بأي لغة برمجة /تقنية تنصحني لبناء موقعي؟ هل المستقبل لمايكروسوفت و تطبيقاتها أم للمصادر المفتوحة؟ ما هي توجهات سوق العمل من ناحية لغات برمجة الويب؟ بما تنصحني أن أتعلم لكي أجد عملا مناسبا؟
إن كنت سألتني هذا السؤال أو سؤال شبيه مغزاه بالنهاية , هل أختار (Microsoft) كتقنيات للويب (ASP or ASP.NET) مع قواعد بيانات (MS Access or MS SQL) أو هل أختار (Open Source) مثل (PHP) مع قواعد بيانات (MY SQL)
فهذه التدوينه هي الإجابة الشاملة بإذن الله و سوف أتحدث بها لأشمل المبتدئين و المحترفين على حدا سواء
دعني أخبرك عن توجهاتي البرمجية في البداية لكي لا تحكم علي بدون أن تعرف خلفيتي فأنا مبرمج بتطبيقات مايكروسوفت ومطور ويب على تطبيقاتها بل وأني ما زلت أؤمن بـ (ASP) و أجيد التعامل مع (MS SQL) و لم أتحول بعد إلى (ASP.NET) , وكذلك الحال أستطيع البرمجة بواسطة PHP و التعامل مع قواعد بيانات MY SQL بشكل كامل و لكني بطيء في كتابة الكود مقارنة مع (ASP) , وخبرتي كبيرة في إدارة خوادم (Windows Server) للويب, ولا أعلم كيفية إدارة خادم (Linux) إلا عبر لوحة تحكم مثل ( C Panel) , سبب تنويهي هو أن المبرمجين أصبحوا فريقين فريق مؤيد لتطبيقات مايكروسوفت و فريق مناهض لها و مؤيد للمصادر المفتوحة و كأننا في حرب عنصرية للتبعية لأي الفريقين , و للأسف السؤال أيهما الأفضل هو سؤال خاطئ بكافة المعاييرالسؤال الصحيح هو : ما هو الأفضل لحالتي أو لهذه الحالة أو المشروع؟
فحالة المشروع هي التي تحدد التوجه بشكل كامل و لا أقصد أن الفكرة فقط هي السبب الرئيسي فقد تكون الفكرة واحدة و لكن هناك أبعاد أخرى تجعلني أحكم عليها للانتقال إما إلى تطبيقات مايكروسوفت أو التوجه للمصادر المفتوحة أيا كانت , ولنوضح ذلك لابد من ضرب عدة أمثلة لكي تتضح الرؤيا :حالة #1: مدونة شخصية
بالتأكيد سوف أشير عليك التوجه إلى المصادر المفتوحة مباشرة و تحديدا إلى تطبيق (Word Press) للأسباب التالية:

  • مجاني

  • يمكن استضافته على خوادم (Linux server) والتي هي أرخص من ناحية التكلفة مقارنة بخوادم مايكروسوفت

  • يدعم اللغة العربية

  • مشهور عالميا لتجد الكثير من المصادر المساعدة و الدعم و الإضافات عليه

  • ليس بالضرورة أن تكون مبرمجا لتعمل عليه أو تديره فكل ما تحتاجه هو تطبيق إدارة محتوى
حالة #2: موقع لشركة / مؤسسة / جهة حكومية
في هذه الحالة لا بد من معرفة أبعاد كل حالة على حدا و بشكل كامل و لذا لا بد من إعطاء سيناريو كامل
مثلا لدى رائد مؤسسة لتصميم و استضافة المواقع على الانترنت فما الأفضل لحالته؟
في البداية لا بد من معرفة من هم زبائن مؤسسة رائد؟ و ما نوع الخدمات التي يقدمها و ما هو تطبيق إدارة المحتوى الذي يستخدمه كأداة لإدارة المواقع ؟
لو علمنا أن لدى رائد تطبيق إدارة محتوى مبني داخليا بواسطة (ASP.NET) فمن الضروري أن يكون موقعه مصمم بواسطة (ASP.NET) بل ولا بد من أن يدار بنفس التطبيق لكي يعطي الزائر صورة عن ما يقدمه هذا التطبيق و إن لم يقم رائد بذلك فهذا يعني أمرا واحدا و هو أن رائد لا يثق بتطبيقه و بالتالي كيف أستطيع أنا كزبون أن أثق به
ماذا لو قدم رائد خدمة أخرى لبناء مواقع على منصات مفتوحة المصدر ؟
جرت العادة على أن الشركات تتخصص في مجال واحد وذلك لعدم تشتيت أنفسها و لتحديد شريحة زبائنها و كذلك الحال لاختيار موظفيها من المبرمجين ,و لكن لنفترض جدلا أن لدى مؤسسة رائد تطبيق أخر لإدارة المحتوى مصمم بواسطة (PHP) ولعله كان داخليا أو هو مبني على نظام مثل (Joomla) فماذا سوف يكون موقعها؟ الجواب بسيط لا بد أن يوفر موقع أخر على سبيل العرض لهذه اللغة و عليه هنا أن يختار أي الموقعين يكون هو الأساسي بناء على الشريحة المستهدفة الأكبر
ماذا عن الدوائر الحكومية؟
بشكل عام في المملكة العربية السعودية فأنا أنصح بأن تكون بواسطة منتجات مايكروسوفت , و أهم الأسباب التي قمت ببناء حكمي عليها هي :

  • توجه الجهات الحكومية بالنسبة للبنية التحتية الخاصة بها (أجهزة الموظفين , خوادم الشبكة , و البريد ...الخ) تدار بواسطة تطبيقات و نظم تشغيل من مايكروسوفت

  • التكلفة ليست بالعامل الأساسي , أو لأكون محددا أكثر , فالمصاريف التشغيلية على المدى الطويل ليست هي المعيار الأول الذي يتم البناء عليه قرار الشراء

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

نعود للشركات و الجهات الخاصة مرة أخرى
العامل رقم واحد للشركات هو المادة أي التكلفة قريبة المدى (تكلفة الشراء) و طويلة المدى (المصاريف التشغيلية) , ففي حال كانت الشركة مستعجلة لظهور موقعها فمن الممكن أن تذهب في المرحلة الأولى مع أي تطبيق يخدم متطلباتها و يكون بسعر أرخص و بالعادة هذا يكون في لفترة بسيطة إلى أن يتم بناء موقع متخصص لهذه الجهة يخدم توجهاتها الحالية كما المستقبلية , فمهما كان نشاط الشركة فأنها تحتاج إلى موقع إنترنت سيتم زيادة الاعتمادية عليه كل يوم بشكل أكبر لان مواقع الانترنت توفر الكثير من التكاليف على الشركات مثل تكاليف الطباعة و تكاليف التسويق و الدعاية و غيرها من الأمور
المرحلة الثانية , و التي لا بد أن تعيها الشركات و هي أن يكون لديها موقع متخصص مبني على تطبيق متخصص بواسطة المصادر المفتوحة , للتحديد أكثر الذهاب مع تطبيق مثل (Joomla) و تخصيصه ليتناسب مع توجهات الشركة و لابد من أن يكون ذلك بعد فترة بسيطة من انتهاء المرحلة الأولى و التي أعتبرها (Pilot Project) لكي تعرف الشركة فعلا ما تريده من موقعها و أهم الأسباب للذهاب مع المصادر المفتوحة هو:

  • التكلفة المبدئية مجانية (تطبيق مثل Joomla)

  • تكلفة الاستضافة أقل بعشر مرات تقريبا بهذا سوف تنخفض المصاريف التشغيلية

  • تكلفة الدعم الفني للتطبيق شبه مجانية فهي متوفرة على الانترنت و الكثير من الشركات هي من الداعمة له

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

  • من الممكن أن يتم إسناد العمل و التصميم كـ (Out Source) لتقليل تكلفة المبرمج و الاعتماد فقط على مدير / مشغل موقع

بعد أن حصرنا الحالات , نأتي لنجيب على المبرمجين لتحديد التوجه ,

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

  • إذ لم تكن من محبي تعلم أكثر من لغة , إذا عليك معرفة أين سوف يكون مصيرك – هذا إن علمت : ) – و بناء عليه قم بالاجتهاد و تعلم تلك اللغة

  • نصيحتي لكل مبرمج / مطور ويب ليتعلم , هي أن يقوم ببناء تطبيق إدارة محتوى متكامل خاص به وحتى إن لم يقوم ببيعه أو الاستفادة منه , مع العلم أن تعلم برمجة بشكل عام و الويب لا يأتي إلا مع الممارسة و مع بناء التطبيقات المتعددة و التي ستتعلم منها في كل مرة مهارة جديدة
     

2

  1. يزيد 2016 Feb 05
    هل المقصود بنظام ادارة المحتوى مثل شير بوينت؟
    هل تنصح بالتطوير الذاتي بدلا من استخدام براند نيم؟!
    AR 2011 Jul 09
    شكرًا أستاذنا الكريم .
    وتعقيبًا على كلامك أقول أن المرء أحيانًا يضيع وقته في البحث عن تقنيه مناسبه يستطيع من خلالها أن بنجز مشروع من نوع آخر وذلك لأنه يريد أن يبرمجها بنفس لغة البرمجة (وعلى نفس الأسلوب) فيقحم نفسه في الكثير من المشاكل .
    وقد وقعت في هذا سابقًا ولكني تعلمت من الخطأ

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

    سابقًا كنت أعتقد أنني قمت بإعادة صناعة العجله عندما برمجت نظام إدارة المحتوى الخاص بي , ولكني أدركت قيمه ذلك فيما بعد وأنصح الجميع بذلك .
    تحياتي ^__^

اترك تعليقا