ويب 2.0
هو مصطلح يشير إلى مجموعة من التقنيات الجديدة والتطبيقات الشبكية التي أدت إلى تغيير سلوك الشبكة العالمية "إنترنت". كلمة "ويب 2.0" سُمعت لأول مره في دورة نقاش بين شركة أورلي (O’Reilly) الإعلامية المعروفة، و مجموعة ميديا لايف (MediaLive) الدولية لتكنولوجيا المعلومات في مؤتمر تطوير الويب الذي عُقد في سان فرانسيسكو في 2003 [1]. الكلمة ذكرها نائب رئيس شركة أورلي، دايل دويرتي (Dale Dougherty) في محاضرة الدورة للتعبير عن مفهوم جيل جديد للشبكة العالمية. ومنذ ذلك الحين، اُعتبر كل ما هو جديد وشعبي على الشبكة العالمية جُزءًا من "ويب 2.0". ولهذا السبب، فإنه، حتى الآن، لا يوجد تعريف دقيق لـ "ويب 2.0".
ويب 2.0 هو ببساطة ( تطبيقات - معتمدة على الشبكة العالمية ) تحمل عددًا من الخصائص التي تميزها عن "ويب 1.0". هذه الخصائص يمكن أن تُلَخَّص في الآتي:
1. السماح للمستخدمين باستخدام برامج تعتمد على المتصفح/الموقع فقط. لذلك هؤلاء المستخدمين يستطيعون امتلاك قاعدة بيناتهم الخاصة على الموقع بالإضافة إلى القدرة على التحكم بها.
2. السماح للمستخدمين بإضافة قيم لتلك (البرنامج المعتمدة على المتصفح).
3. السماح للمستخدمين ليعبروا عن أنفسهم، اهتماماتهم وثقافتهم.
4. تقليد تجربة المستخدمين من أنظمة التشغيل المكتبية من خلال تزويدهم بميزات وتطبيقات مشابهة لبيئاتهم الحاسوبية الشخصية.
5. تزويد المستخدمين بأنظمة تفاعلية تسمح بمشاركتهم في تفاعل اجتماعي.
6. السماح للمستخدمين بتعديل قاعدة البيانات من خلال إضافة، تغيير أو حذف المعلومات
مقدمة
قبل ظهور مصطلح الويب 2.0، كان هناك ما يُسمى الويب 1.0 و الويب 1.5. الويب 1.0 يتضمن صفحات html ثابتة (static) ونادرًا ما حُدِّثت. بعد ذلك جاءت الويب 1.5، وهي عبارة عن “الويب الديناميكية” والتي تكون فيها صفحات شبكة الانترنت تُنشأ فورًا من محتويات قواعد البيانات باستخدام نظم إدارة المحتويات. الويب 2.0 هي أكثر من مجرد صفحات ويب ديناميكية، فهي تمثل شبكة اجتماعية و ذات اعتمادية أكبر على المستخدمين، والمستخدمين هنا هم مستخدمي خدمات الويب الجديدة المتطورة والتي أنشأها خبراء الشبكة. وتعريف الموقع في الويب 2.0 هو موقعٌ بُني باستخدام عدد من تكنولوجيات الويب 2.0 الحديثة. أربعة أمثلة من هذه التكنولوجيات هي الخلاصات RSS، و AJAX ، و بروتوكولات الانترنت الحديثة و الـويكي.
من خلال اجتماع مؤتمر تطوير الويب المذكور، حاول الخبراء في الطرفين الوصول إلى معايير محدده يمكن من خلالها تقسيم المواقع إلى مواقع الويب 1.0 التقليدية و مواقع الويب 2.0 الجيل الجديد من المواقع . و في بداية هذا الإجتماع قاموا بضرب أمثلة على مواقع من الويب 1.0 و ما يقابلها بالفكرة من المواقع التي يصنفونها ( لا إراديا إن صح التعبير ) كمواقع من الويب 2.0 . كمرحلة أولى خرج المتحاورون بقائمة من الأمثلة منها المفارقات الموجودة في الصورة الثانية.
1- الويب هي منصة تطوير متكاملة : يفترض في جيل الويب 2.0 أن يتعامل مع الويب كمنصة تطوير بمعزل عن أي عوامل تقنية أخرى ، الموقع يستفيد من موارد و خصائص الشبكة تماما كما يستفيد مطور التطبيقات من أوامر النظام الذي يبرمج برنامجه عليه
2- الذكاء و الحس الإبداعي : هناك بعض الخدمات في الأمثلة السابقة تكاد تكون متطابقة ، و لكن ما يجعل تصنيف أحدها من ويب 2.0 و الأخرى من ويب 1.0 هو ذلك الحس الإبداعي و حزمة الخصائص الذكية في نفس الفكرة ، على سبيل المثال ، قووقل كمحرك بحث يعتبر من الويب 2.0 ، في الحقيقة قووقل محرك بجث ذكي جدا ، و هذا فقط ما يميزه عن بقية المحركات ، ذكاء المحرك و الحس الإبداعي الواضح في منتجات موقع قووقل جعلته يصنف هذا التصنيف !
3- البيانات هي الأهم : العصب الرئيسي لمواقع الويب 2.0 هو التركيز على المحتوى و البيانات ، طريقة عرض المحتوى ، نوعية المحتوى ، توفر المحتوى للجميع ، الخدمات الخاصة للإستفادة التامة من هذه البيانات . بشكل أكثر بساطة يمكن أن نقول أن نوعية البيانات المعروضة و طرق الإستفادة من هذه البيانات هي التي تجعلنا نطلق على بعض المواقع بمواقع الويب 2.0 .
4- نهاية دورة إنتاج البرمجيات ! : الفكرة في الويب 2.0 هو أن يقدم تطبيق الموقع كخدمة متاحة للجميع تستخدم بشكل يومي ، مما يجعل من الضرورة صيانة و متابعة التطبيق بشكل يومي أيضا ، عمليات التطوير ، التحديث ، المتابعة الفنية و الإدارية يجب أن تتم بشكل يومي ، لذا فإن التطبيقات التي تعمل عليها مواقع الويب 2.0 هي تطبيقات لا تخضع لدورة حياة البرمجيات ، بمعنى أن عملية التطوير مستمرة ، عملية الصيانة مستمرة ، عملية التحليل و التصميم دائما مستمرة طالما أن هذا الموقع يقدم خدماته ، هذا الأمر يتأتى بجعل المستخدم للموقع هو مطور مساعد لفريق التطوير في هذا الموقع ، عن طريق معرفة ارائه ، تصرفاته مع النظام ، طريقة تعاطي المستخدم مع الخصائص التي يقدمها النظام ، لهذا السبب نرى أن خدمات مثل فليكر و بريد قووقل و خدمة Delicious ظلت لأشهر و لسنوات تحمل شعار Beta .. اي نسخة تجريبية !
5- تقنيات التطوير المساندة : تتميز مواقع الويب 2.0 بإستقادتها القصوى و المثلى من تقنيات التطوير المساندة ، تقنيات حديثة و رائعة مثل RSS و AJAX ، تقنيات مشهورة مثل XML و XSLT ، و محاولة الحفاظ على المعايير القياسية في التصميم من الناحية الفنية XHTML و CSS أو من الناحية التخطيطية عن طريق تحقيق قابلية الوصول و قابلية الإستخدام .
6- الثقة بالزوار : في مواقع الويب 2.0 ، المحتوى يبنيه المستخدم أو يشارك مشاركة فعالة في بنائه ، لذا فإن أحد أهم المبادئ هنا هو إعطاء الثقة الكاملة للمستخدم للمساهمة في بناء هذه الخدمة ، خدمات مثل فليكر و ديليشوس و ويكيبيديا تمنح المستخدم الثقة الكاملة في استخدام النظام و إدراج أي محتوى يرغب بإدراجه ، و من بعد ذلك يأتي دور مراقبي الموقع أو المحررين لتصفية المحتويات التي تخالف قوانين الموقع .
7- الخدمات ، و ليس حزم البرمجيات : من أهم مفاهيم الويب 2.0 هي أنها مجموعة من الخدمات متوفرة في المواقع أو في التطبيقات و ليست بحد ذاتها حزمة برمجيات تقدم للإستفادة منها ، على سبيل المثال ، برنامج iTunes يعتبر من الويب 2.0 ( على الرغم من انه ليس تطبيق ويب ) ولكنه يقدم بحد ذاته خدمة مرتبطة بشبكة الويب إرتباط وثيق ، لذا فالفكرة في هذا البرنامج هو تنظيم الملفات الصوتية و مشاركتها أو نشرها على شبكة الويب ، لذا فبرنامج iTunes هو خدمة وليس حزمة برمجيات !
8- المشاركة : المستخدمين هم من يبنون خدمات الويب 2.0 و ليس صاحب الموقع ، صاحب الموقع يقدم النظام كخدمة أو كفكرة قائمة أساساً على تفاعل المستخدمين بالمشاركة في هذه الخدمة ، موقع فليكر مبني على الصور الشخصية للمستخدمين ، موسوعة ويكيبيديا مبنية على جهود مئات الآلاف إن لم نقل ملايين البشر الذين يكتبون يوميا معلومة جديد تفيد البشرية .
9- أنظمة تتطور إذا كثر إستخدامها : تلك هي أنظمة الويب 2.0 ، إستخدامك لموقع فليكر بكثافة على سبيل المثال ، يعني أنك تطور خدمة فليكر للأفضل ، مشاركاتك في خدمة ويكيبيديا يعني أنك تجعل موسوعة ويكيبيديا مصدراً مهماً للمعلومات ، نشرك للروابط المفضلة لديك في موقع Delecious يعني أنك تطور هذا الموقع ليكون مرجعا مهما للروابط !
10 - الخدمة الذاتية للوصول إلى كل مكان : أحد خصائص مواقع الويب 2.0 هو إمكانية نشر الخدمة خارج نطاق الموقع ، تقنيات مثل RSS ، ATOM و غيرها من التقنيات يمكن من خلالها إيصال محتوى الخدمة خارج نطاق الموقع ، قابلية توصيل الخدمة Service Hackability هو مصطلح يطلق على هذه الفكرة ، على سبيل المثال خدمة Google Adsense تتيح لإعلانك الوصول إلى أي مكان ، خارج نطاق موقع قووقل ، و في أماكن لا تعلم أن إعلانك يظهر بها ، قابلية وصول إلى الخدمة إلى اي مكان أحد أهم خصائص خدمات الويب 2.0 .
كمصمم أو مطور مواقع ، ما الذي تعنيه لك الويب 2.0 ؟ ، في الحقيقة هي المفهوم الجديد لمواقع الويب ، فهل أعددت قدراتك للتكيف مع هذا التغيير ؟ من خلال السطور القادمة أحاول أن أضعك على أولى خطوات التغيير للتماشي مع هذا الجيل الجديد من مواقع الويب و بشكل مختصر.
أولاً : التحول إلى XML و تقنياتها
رغم ظهور هذه التقنية من فترة طويلة الا أن معظم التطبيقات خلال السنوات الماضية كانت تستفيد منها الإستفادة المثلى، البعض يستخدمها لتخزين إعدادات برنامج ، الأخر يستخدمها كبديل بسيط لقواعد البيانات للتطبيقات الصغيرة الحجم ، ولكن في الفترة الأخيرة بدأت تظهر و تستخدم تقنيات مستقلة بالإعتماد على لغة XML الوصفية ، تقنيات مثل AJAX و RSS و Atom و XPath هي من السمات الرئيسية و المعالم المميزة لصفحات مواقع الويب 2.0
خدمات الويب Web Services هي أحد السمات الهامة في مواقع الويب 2.0 ، يجب أن يسمح تطبيق موقعك للمطورين بإنشاء برامج تقرأ و تتعامل مع بيانات التطبيق الخاص بموقعك بكل سهولة ، على سبيل المثال ، مواقع مثل أمازون و eBay و Google تسمح لأي مبرمج من خلال واجهة التتطبيقات API بأن ينشأ تطبيق خاص به يعتمد على تطبيقات هذه المواقع ، على سبيل المثال Google يسمح لي بأن أبرمج تطبيق يبحث في قواعد بياناته و يجلب لي النتائج لكي أعرضها كما لو أني أنا من يقدم الخدمة وليس قووقل !! أمازون يسمح لي أن أعرض البضائع كما لو أنها بضائعي و ليست بضائع أمازون ، خدمات الويب علم قائم بحد ذاته ، و لكن اقرأ أكثر عن تقنيات مثل SOAP و XML/RPC و WSDL... ستجد ضالتك في هذه التقنيات .
المحتويات هي أساس مواقع الويب 2.0 ، إجعل محتويات موقعك قابلة للإستيراد بشتى الطرق ، و قابلة للتخصيص بأي وسيلة ، على سبيل المثال ، في موقع Delecious أستطيع أن أختار عرض الروابط المفضلة لمشترك معين ، أو تلك الروابط التي تتحدث عن الـHTML فقط ، أستطيع أن أستعرض تلك الروابط في جهازي ، في هاتفي النقال ، في موقعي الشخصي ... هذا يتم عن طريق تقنية RSS و مع تقنيات الـوسم Tags لتمييز المحتويات .
عليك من خلال التطبيق الذي تقوم ببنائه أن تقرأ تصرفات مستخدمي موقعك نفسيا و اجتماعيا، عليك أن تستغل هذه التصرفات و المعطيات لتحسين الموقع بشكل أوتوماتيكي فوري و على المدى الطويل ، على سبيل المثال ، اذا اشتريت كتاب يتحدث عن علم الفيزياء من موقع أمازون هذا اليوم ، فإن موقع أمازون سيعرض علي غدا عند زيارتي له و بالصفحة الرئيسية كتب عن الفيزياء ، هل غير موقع أمازون صفحته الرئيسية من أجلي ؟؟ بالطبع لا ، و لكنه عرفني عند زيارتي له و تذكر ( عن طريق الـكوكيز ) بأني أشتريت أمس كتاب عن الفيزياء ، فبادر فورا بصنع صفحة رئيسية مخصصة لي تحتوي على الكتب التي تقع ضمن نطاق علم الفيزياء ! الخلاصة : إستغل التقنية لتجعل موقعك ذكيا و قابلا للتخصيص الفوري قدر المستطاع !
المشاركة خاصية مهمة من خصائص مواقع الويب 2.0 ، عملية النشر التقليدية لا تقع ضمن نطاق مواقع الويب 2.0 ، الكل يشارك ، الكل يكتب ، الكل يضع ما لديه ، لذا كان من الضروري تقسيم هذا الكم الهائل من المشاركات ضمن وسوم مميزة يسهل من خلالها البحث و الوصول للمعلومة ، تطبيقك يجب أن يراعي ذلك ، الـوسم أو ما يعرف بـ Tags هي أسهل طريقة لذلك.
إذا كنت مصمم فقط ، عليك التفكير ملياً بهذا الأمر .. للتحول إلى ويب 2.0 يجب أن تكون لك خلفية جيدة في عالم البرمجة ، على الرغم من الفصل التام الذي تحافظ عليه الويب 2.0 بين الشكل العام و بين المنطق البرمجي ، إلا ان الخصائص التي تتميز بها مواقع الويب 2.0 قد أوجدت حلقة كبيرة من التداخل بين التصميم و البرمجة ، تقنيات مثل CSS و RSS و XML و API ستجبرك كمصمم على معرفة طريقة عملها لكي تقوم بإنشاء الإطار العام لعرض هذه المحتويات ، المحتوى هو عصب مواقع الويب 2.0 ، و عرض هذا المحتوى هو عملية متداخلة بين البرمجة و التصميم .