اتساءل هل موظفو شركة مايكروسوفت يستخدمون الاكسبلورر في الشركة حيث ان هذا المتصفح به سيئات لا يعلمها الا مصمم ومطور المواقع ولماذا شركة مثل مايكروسوفت من كبرى شركات البرمجه العالميه لم تقم بصناعة متصفح يليق بسمعتها و اداء برمجيتها .
هل موظفو مايكروسوفت يستخدمون اكسبلورر في الشركة ؟
المواقع المتعفنة الذى تتحدث عنها تعمل على تقنية Active X, و هى صدق او لا تصدق أقوى تقنية عرفها الويب يوما لأنها عبارة ببساطة عن برنامج dekstop يعمل داخل المتصفح الذى لديك.
تطبيقات كثيرة تحتاج لهذه التقنية, خاصة فى البنوك و الشركات, خاصة انها طريقة جيدة لاعادة تشغيل التطبيقات القديمة داخل متصفح.
طبعا مشكلة الActive X الاساسية هى انها عبارة عن كابوس أمنى (لأنه برنامج Dektop و لكنه يعمل داخل المتصفح, أى انك لو تعمل بحساب Administrator, فسيأخذ الموقع حساب الAdministrator أيضا!!), و هو ما دعى مايكروسوفت فى النهاية الى تحجيمه كثيرا و منعه فى معظم الاحيان,
و هذا قرار غبى من مايكروسوفت, تحجيمه أدى الى ابتعاد المطورين عنه شيئا فشيئا خوفا من قيام مايكروسوفت بالغائه فى المستقبل,
الActiveX كان يبشر بويب غنى و ممتع, و بدلا من تحجيمه, كان يجب على مايكروسوفت أن تطوره و تجعله أكثر أمنا (عبر تشغيله داخل مستخدم محجم مثلا!).
هذه احدى الامثلة القليلة التى تدل على ان تقنيات الويب بالذات تتقدم بثبات الى الخلف, و هذا شىء محزن.
المشابه للـ Active X هي الـ Applets لكن بها نفس العيوب حيث أنها برامج سطح مكتب تستطيع الوصول إلى كامل نظام التشغيل حسب المستخدم الحالي، لكن للأسف بدأت تختفي لنفس اﻷسباب، لكنها عاشت لفترة أطول من الـ Active X لا أدري ماهو السبب، إلى اﻵن ما زالت مواقع تعمل بها.
أراك تدافع عن مايكروسوفت أكثر من الشركة نفسها.
ال Active X هم أسوأ شيء في التاريخ لأسباب عديدة والشركة نفسها (أي مايكروسوفت) أخذت تبتعد عنها.
لماذا Active X شيء؟ أنا أستغرب أننا نسأل هذا السؤال بعد ظهور html5 وتقنيات الويب العيارية حيث أن الكثير مما كان يبرر وجود Active X لم تعد موجودة الآن تطبيقات الويب الآن تستطيع القيام بكل شيء وبطريقة آمنة (يمكن مثلا عمل جداول ممتدة كما في Excel عبر تطبيقات الويب وحفظها off line والتعاون على تحريرها في نفس اللحظة ويمكن عمل ألعاب ثلاثية الأبعاد كما في unreal ويمكن عمل نظام تشغيل أو vnc أو دردشة فيديو ...إلخ)
إن الذي عمل Active X هو شخص لا يفهم الويب ,ولا يعرف ما معنى البروتوكولات العيارية ولا يريد أن يفهم ذلك هو يملك أفضلية في سطح المكتب ويريد استخدام هذه الأفضلية لكسب سوق الويب (وربما الخوادم) من خلال عمل رابط ما بينهما بطريقة قيود الباعة vendor lock-ins
تطبيق الويب هو تطبيق محجوز يعمل داخل صندوق رملي (أي لا يملك وصول لموارد النظام عند زواره) لهذا عندما أقول لك زر موقع كذا لا تقول لي لا أريد لأنه قد يسرق بياناتي أو صور أهلي أو يستخدم جهازي في الهجوم على ...
في المقابل active X هو نافذ أو ثغرة في القيود المفروضة في الويب عن قصد وتصميم واع (أنا لا أريد أن أدخل على موقع ما فيبدأ الموقع بالتجسس علي أو يشغل الكاميرا دون علمي أو يسحب مذكراتي الشخصية ويبيعها أو عناوين أصدقائي ويرسل لهم بريد إعلاني مزعج...).
يبدو أنك شخص "مأدلج", و هذا يجعلك لا ترى الصورة كاملة,
"طبيقات الويب الآن تستطيع القيام بكل شيء وبطريقة آمنة"
هذه العبارة كارثة, لأنك لا تعرف ما يحتاجه المستخدمين,
المستخدمين يحتاجون لأكثر من مربع نص و رسومات متحركة و ألعاب بسيطة, و أنت تثبت نقطتى بنفسك فى هذه العبارة :
"تطبيق الويب هو تطبيق محجوز يعمل داخل صندوق رملي (أي لا يملك وصول لموارد النظام عند زواره)"
مشكلة تطبيق الويب أن المعلومات فى جانب الخادم, بينما الواجهة فى جانب المستخدم, عكس تطبيق سطح المكتب حيث المعلومات و الواجهة على نفس الجهاز, لا يفصل بينهما سوى الmemory, و بالتالى فان تناقل المعلومات و توصيلها للواجهة أسرع كثيرا فى حالة تطبيق سطح المكتب منها على الويب, و لا يمكنك مهما كانت وصلة الانترنت لديك تجاوز ذلك.
ناهيك عن ان تطبيق الويب لا يصل الى موارد الجهاز, فأنت محدود داخل الموارد الذى يسمح لك المتصفح و "بروتوكولات الويب العيارية"باستخدامها, و لكن العالم أكبر كثيرا من عيارات الويب و ما تحتاجه بعض التطبيقات تتجاوز كثيرا عيارات الويب الضعيفة و غير المنظمة و البطيئة,
دعك من ضعف معياريات الويب و تصميمها السىء و البطىء, و دعك من مشاكل الانترنت و حتى الان لا توجد بنية تحتية اعتمادية للانترنت (و لن تكون).
لماذا يفضل معظم الناس العمل على تطبيق outlook او Thunderbird (عشان متزعلش) بدلا من فتح الايميل على المتصفح طالما كان ذلك متاحا؟ و لماذا يفضلون تطبيق الفيسبوك على هواتفهم بدلا من فتحه موقع فيسبوك داخل متصفح؟
هذا هو الفارق بين تطبيقات الويب و تطبيق سطح المكتب.
مشكلة تطبيق الويب أن المعلومات فى جانب الخادم, بينما الواجهة فى جانب المستخدم, عكس تطبيق سطح المكتب حيث المعلومات و الواجهة على نفس الجهاز, لا يفصل بينهما سوى الmemory, و بالتالى فان تناقل المعلومات و توصيلها للواجهة أسرع كثيرا فى حالة تطبيق سطح المكتب منها على الويب, و لا يمكنك مهما كانت وصلة الانترنت لديك تجاوز ذلك.
مشكلتك أنك تعيش في بروبوغاندا 1998. الآن يوجد لتطبيقات الويب local storage بل وقواعد sql ...إلخ وهناك تطبيقات ويب تعمل بالكامل دون اتصال مثل chrome apps.
ناهيك عن ان تطبيق الويب لا يصل الى موارد الجهاز
لا يصل لموارد الجهاز دون إذنك. حاليا هناك في html5 ما يسمى filesystem api.
(عشان متزعلش) بدلا من فتح الايميل على المتصفح طالما كان ذلك متاحا؟
أنا لا أستخدم gmail إلا على المتصفح وتطبيق الجوال. وقد جربت مرة ربط بريدي على Thunderbird ولم أتحمل إلا أيام وعدت للويب.
آه نسيت أنت لا تستعمل gmail أنت عالق في قيود الباعة وتعيش في عام 1998
أنا لا أستخدم gmail إلا على المتصفح وتطبيق الجوال. وقد جربت مرة ربط بريدي على Thunderbird ولم أتحمل إلا أيام وعدت للويب.
ميزة البرامج مثل Thunderbird هو أنه يقوم بتنبيهك عند قدوم بريد جديد (تنبيه صوتي) كذلك يمكنك قراءة البريد عند انقطاع اﻹنترنت، يمكن أيضاً الوصول لبريد مؤ رشف لسنين سابقة. في الحقيقة هو خيار جيد لمن يستخدمون بريد مدفوع غير مجاني مربوط بنطاق domain خاص بهم
هل تعيشون في 1998؟ gmail يعمل دون اتصال وينبه صوتيا ويستخدم تنبيهات سطح المكتب ويوجد منه نسخة للشركات على نظاق خاص بكل شركة!
https://chrome.google.com/w...
ليس الهدف هو عمل دعاية لغوغل لكن الهدف هو عرض بعض إمكانات الويب التي تستفيد منها غوغل.
البعض يظن أن الويب مجرد نص غني وتعبئة استمارة وزر إرسال وربما ajax هذا ما كانت عليه قبل 10 سنوات أما الآن يمكن عمل دردشة فيديو عبر تقنيات الويب ودون الحاجة لخادم.
هل تعيشون في 1998؟
لا أنا اعيش في السودان
في الحقيقة لم يعجبني بريد قوقل، لم اتحمل إلا أيام ثم عدت لإستخدام بريد Thunderbird
وهذه ليست دعاية لـ Thunderbird، كل شخص يرى ما يحبه في أي برنامج، وأُفضل برامج سطح المكتب على برامج الويب.
طيب إذا كانت برامج الويب بكل هذا الجمال وهذه اﻹمكانات التي تتكلم عنها، فلماذا يتجه الناس إلى البرامج الـ Native للموبايلات مثل برامج أندرويد و IOS لم كل هذا التعب، كان من الممكن أن تكون كلها برام ويب
تحياتى لك يا أستاذ معتز,
بما اننا تطرقنا الى الweb mail فأحب ان اضيف تجربتى الشخصية بين الweb mail و الdekstop mail,
فقط بعض الفروق البسيطة بين Thunderbird و Outlook و الweb mail :
فى thunderbird و outlook يمكننى تصفح بريدى الى 5 سنوات فاتت فى نفس الصفحة فقط عبر الscrolling, مرتبين حسب رغبتى بالتاريخ او بعنوان الراسل(كل هذا فى أقل من ثانية, فلا يوجد تحميل و لا أى شىء, لأن الرسائل موجودة على القرص الصلب).
فى المقابل فى الweb mail فاننى اتصفح 10 او 20 رسالة فى الصفحة الواحدة, و لأصل لرسالة كتبت منذ شهر مثلا على ان أضغط 20 مرة على زر Next!! و كل ضغطة تساوى حوالى 20-30 ثانية من الانتظار, أى اننى ضيعت 10 دقائق من حياتى فقط للبحث عن رسالة حديثة نسبيا, و هو شىء يمكن فعله فى 5 ثوانى فقط على الdekstop mail.
فى الdekstop mail يمكننى تنزيل الرسائل و قرائتها متى أريد حتى دون اتصال بالانترنت, و كل ذلك يتم اوتوماتيكيا دون تدخل.
فى الويب ميل لا يمكن فتحه أصلا دون اتصال بالانترنت!
الواجهة فى الdekstop mail أفضل, فمبجرد الضغط او الوقوف على الرسالة تظهر تلقائيا (فى اقل من ثانية).
فى الweb mail يجب ان تضغط على الرسالة و تنتظر ل20 ثانية على الاقل لتظهر, حتى لو كانت رسالة قديمة.
اذا تركت الdekstop mail مفتوحا يمكنه ان يبقى نشطا طوال اليوم, و ينبهك لدى وصول رسالة جديدة,
الweb mail لا يبقى مفتوحا لأكثر من ساعة او اثنتين, بعدها غالبا ما يتوقف المتصفح عن العمل أو يصبح بطيئا خاصة اذا تصفحت بضعة مواقع اخرى, و هذا الكلام يسرى على Internet explorer و يسرى على firefox و اعتقد انه يسرى على اى متصفح و الفارق فقط فى التوقيت, لأن المتصفح برمجية معقدة و كبيرة فان الامر لا يخلو من memory leak هنا و هناك و ربما بضعة memory corruption بالطبع.
هذه مسألة ذوق. لكن لنعود للحقائق لا يوجد ميزات موجودة في Thunderbird غير موجودة في الويب.
طيب إذا كانت برامج الويب بكل هذا الجمال وهذه اﻹمكانات التي تتكلم عنها، فلماذا يتجه الناس إلى البرامج الـ Native للموبايلات مثل برامج أندرويد و IOS لم كل هذا التعب، كان من الممكن أن تكون كلها برام ويب
يمكنني أن أزعم العكس هناك الكثير من أنظمة الجوالات ما هي إلا تطبيقات ويب
firefox os
tizen web apps
Windows store apps
adobe phonegap
سبب الاختيار بين native والويب ليس الاداء والإمكانات بل تجربة المستخدم وقاعدة المستخدمين.
يمكنني أن أزعم العكس هناك الكثير من أنظمة الجوالات ما هي إلا تطبيقات ويب
firefox os
http://www.ubuntu.com/phone
tizen web apps
انت تتكلم عن أنظمة لم تُثبت نجاجها بعد، ربما تفشل لأنها أنظمة ويب، هل نجح نظام تشغيل الويب Chrome OS؟
سبب الاختيار بين native والويب ليس الاداء والإمكانات بل تجربة المستخدم وقاعدة المستخدمين.
ليس هذا فقط هو السبب، سرعة اﻹستجابة وعدم اﻹعتماد على اﻹنترت هي عوامل مهمة، كذلك البرامج الـ Native تستطيع الوصول إلى كافة أجزاء الموبايل مثلها مثل برامج سطح المكتب. الغريب أنك من المساهمين أو اكبر مساهم في مشروع أعجوبة لينكس كان من المفترض أن تُدافع عن برامج سطح المكتب، بالمناسبة عند تثبيت أعجوبة هل يوجد برنامج ويب واحد؟ سمي لي اسمه إن كان يوجد
انت تتكلم عن أنظمة لم تُثبت نجاجها بعد
أنا أوضح شيوع التقنية trend وليس نجاحها ردا على قولك أن الناس تهرب من الويب إلى ال native.
سرعة الاستجابة ليست كما تتخيل إذا صممت بالشكل الصحيح مثلا لا تعمل حلقة للتحريك بل استخدم css3 animation ...إلخ
الغريب أنك من المساهمين أو اكبر مساهم في مشروع أعجوبة لينكس كان من المفترض أن تُدافع عن برامج سطح المكتب
برنامج ثواب وبرنامج chmviewkit ما هي إلا برامج ويب. برنامج ثواب مثلا عبارة عن خادم ويب ضمني بلغة بايثون ومتصفح webkit منضض (كلاهما في تطبيق واحد) فهو وإن بدا تطبيق سطح مكتب إلا أنه تطبيق ويب.
برنامج ثواب وبرنامج chmviewkit ما هي إلا برامج ويب. برنامج ثواب مثلا عبارة عن خادم ويب ضمني بلغة بايثون ومتصفح webkit منضض (كلاهما في تطبيق واحد) فهو وإن بدا تطبيق سطح مكتب إلا أنه تطبيق ويب.
كم تُمثل نسبتها من نظام التشغيل؟ وهل هي البديل من البرامج الطبيعية المكتوبة لنظام التشغيل؟ هل يُمكن عمل أداة تطوير بهذه الطريقة؟
أنا أوضح شيوع التقنية trend وليس نجاحها ردا على قولك أن الناس تهرب من الويب إلى ال native.
إذا كان هذا صحيح فماذا لم تنجح لغة HTML5 في سحب البساط من تحت لغات البرمجة الـ Native في عالم الموبايل، لماذا تأتي لغة جديدة مثل Swift وتبدأ بالإنتشار بدلاً من إعتماد Apple على HTML5 بدلاً عنها؟
كم تُمثل نسبتها من نظام التشغيل؟ وهل هي البديل من البرامج الطبيعية المكتوبة لنظام التشغيل؟ هل يُمكن عمل أداة تطوير بهذه الطريقة؟
أنت تعلم أن أعجوبة توزيعة وليس نظام مكتوب من الصفر. عدد البرامج التي كتبناها بأنفسنا قليل.
هل يُمكن عمل أداة تطوير بهذه الطريقة؟
نعم انظر
http://codemirror.net - وهو يدعم 60 لغة برمجة
وإذا كنت تقول لي أنها مجرد محررات دون عملية ال compile نفسها فانظر أيضا
فهو يدعم 19 لغة منها بايثون وروبي ويعمل لها compile و run من خلال javascript دون خادم.
نعم انظر - http://emmet.io - http://codemirror.net - وهو يدعم 60 لغة برمجة
يوجد عدد من المواقع التي توفر مثل هذه البيئات للغات البرمجة، لكنها تبقى للتجربة والتعليم وليست للعمل اليومي، أنا شخصياً لا اعرف شخص يستخدم موقع في اﻹنترنت أو برنامج ويب كبديل لأدوات التطوير السطح مكتبية الغنية بالأدوات، إلا إذا كان عمله سطحياً ولا يتعدى بضعة سطور فيمكن أن تكون المحررات التي ذكرتها مناسبة لعمله.
يبدو أنك لا تميّز بين تطبيق ويب، وموقع ويب... تطبيق الويب ليس بالضرورة أن يكون موقعًا على الويب... ببساطة تطبيق الويب في أبسط أشكاله هو مجموعة من صفحات HTML وملفات CSS وJavaScript التي يمكن للمتصفح تفسيرها وعرضها... تطبيقات Firefox OS لها عدّة أنواع، قد تكون Hosted (وهي ببساطة موقع ويب)، أما الشكل الأكثر شيوعًا فهو Packaged وهي شيء شبيه بتطبيقات Packaged Chrome apps التي تعمل من المتصفح دون اتصال بالإنترنت ويمكنها الوصول إلى نظام الملفات والكاميرا والمايكروفون وتخزين المحتوى من الشبكة بلا اتصال. انظر مثلاً تطبيق Pocket لمتصفح Chrome (وهو من نوع Packaged): ، أو تطبيق DevDocs (وهو من نوع Hosted):
لا تزال تُصرّ على نظرتك القديمة للويب، أنه مجموعة من المواقع البطيئة التي لا تستطيع عمل شيء سوى عرض المحتوى وإرسال النماذج إلخ...
هل اطّلعت يومًا على:
applicationCache (حفظ الموقع بلا اتصال)
Service Worker (تحكم دقيق بما يمكن تخزينه للعمل بلا اتصال أو تحديثه...)
navigator.onLine (للتحقق من وجود اتصال أو عدمه، مع إمكان إضافة متلقيات الأحداث Event handlers لمراقبة حالة الاتصال)
localStorage (أفضل استخدام لها تخزين تفضيلات المستخدم مثلاً، ثابتة لا تزول إلا برمجيًا)
sessionStorage (تخزين التفضيلات ضمن الجلسة وإزالتها عند انتهاءها)
Web Worker (إنشاء Threads)
indexedDb (واجهة برمجية في المتصفح لتخزين وقراءة قواعد البيانات NoSQL بلا اتصال ويمكنها تخزين Blob كذلك!)
Drag and Drop API (سحب الملفات من النظام وإسقاطها في المتصفح)
File Reader API (قراءة الملفات من النظام)
WebRTC (التواصل ببروتوكول P2P بين طرفين من خلال المتصفح لعمل دردشة أو محادثات صوتية أو فيديو... أو حتى لنقل الملفات مثل تطبيقات Torrent!)
Geolocation API (التعرف على موقع المستخدم)
ًWebSocket (الاتصال عبر sockets مع الخوادم)
نعم أداء تطبيقات الويب لم يصل لمستوى تطبيقات native لكن القدرة على تطوير تطبيقات عالية الفعالية متاحة وأداء المتصفحات في تحسن مستمر!
وعلى فكرة يكفيك أن تطلع على هذه الصفحة وترى مستوى دعمها في IE لتعرف لماذا يعتبر IE متخلفًا
التعليقات