التدوينات الموسومة بـ ‘تدوينات رمضان’

ماهي JSON؟

الثلاثاء, 30 سبتمبر, 2008

ماهي JSON؟

اختصار لـ (Javascript Object Notation) وهي تنسيق لتخزين المعلومات بطريقة خفيفة وسهلة، JSON تأتي بالأساس مع Javascript وبالإمكان أيضاً التعامل معها من لغات غيرها، وتعتبر منافساً حقيقياً للـ XML وخصوصاً عند استخدام Ajax.

هل هي أفضل من XML؟

تعتبر أفضل منه لعدة أسباب، التعامل مع XML يختلف من متصفح لآخر بينما JSON موحدة. بنية JSON تسمح لها بتخزين المعلومات بحجم أقل بكثير من XML أي في XML يوجد هدر فهناك الكثير من الوسوم أما JSON فلا يوجد هدر، وتريحك أيضاً من التعامل مع DOM في XML. أيضاً تحليل XML يستهلك ذاكرة أكثر من تحليل JSON. أيضاً PHP5 تأتي معها مكتبة للتعامل مع JSON !

كيف نستخدمها؟

أولاً لمحة سريعة عن أنواع المصفوفات في JavaScrpit:

النوع الأول:

		var myComputer = ["keyboard", "mouse", "screen"];
		

في هذا النوع يتم توليد دليل المصفوفة (0, 1, 2) بشكل تلقائي لأننا استخدمنا []،شاهد كيف يتم استعراضها:

		alert(myComputer[0]); // alerts keyboard
		alert(myComputer[1]); // alerts mouse
		alert(myComputer[2]); // alerts screen
		

( اكمل قراءة التدوينة )

استبيان الأسبوع الرابع

الإثنين, 29 سبتمبر, 2008

الاستبيان الثالث جاء بتنيجتين متقاربتين وهما:

  • الكتب والمراجع الأجنبية الكبيرة
  • تعلم أو مايسمى ب Tutorials

بالنسبة للكتب العربية جاءت النتيجة ضعيفة وذلك لضعف المحتوى العربي التعليمي وتأخره كثيراً.

استبيان اليوم يتحدث عن الوظيفة، ووضعت أربعة احتمالات لا أظن أنه يوجد غيرهم:

  • القطاع الخاص
  • القطاع الحكومي
  • مطور حر
  • مشاريعي الخاصة

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

التنسيق المصغر

الإثنين, 29 سبتمبر, 2008

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

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

( اكمل قراءة التدوينة )

التايني ورفع الصور

الأربعاء, 24 سبتمبر, 2008

بسم الله الرحمن الرحيم،

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

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

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

1- حمل التايني من الرابط التالي
2- فك ضغط التايني داخل المخدم المحلي، وبعدها ستجد مجلدين:
examples
jscripts

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

3- حمل الإضافة من الرابط التالي
4- فك ضغط الإضافة داخل مجلد plugins الموجود في المسار (jscripts/tiny_mce/plugins).
5- الآن، ارجع إلى مجلد examples وحرر ملف full.html مثلاً، هذا الملف هو مثال التايني مع كل إضافاته.
6- داخل الملف، يوجد سطر:

<script type="text/javascript" src="../jscripts/tiny_mce/tiny_mce.js"></script>

اكتب السطر التالي أسفل منه:

<script type="text/javascript" src="../jscripts/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>

لاحظ المسار، وإذا غيرت ببنية الملف فيجب أن تغير هذه المسارات.

7- في نفس الملف، وداخل تابع tinyMCE.ini يوجد العديد من السطور مهمتها تهيئة التايني وتعريف الإضافات التي يجب أن يستخدمها، ضع في أي مكان داخل التابع السطر:

file_browser_callback : "tinyBrowser",

8- إذا كنت تعمل على windows فيجب أن تحرر الملف التالي (jscripts\tiny_mce\plugins\tinybrowser\fns_tinybrowser.php):
حرر السطر الرابع ليصبح:

if (mkdir($dir, $perm, true)) {

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







هل لديكم أية إضافات غيرها جربتموها وأعجبتكم؟

أفكار ومواقع ويب 2 شهيرة

الثلاثاء, 23 سبتمبر, 2008

اليوم لدينا مجموعة من مواقع الويب 2 الأجنبية ذات الأفكار المميزة فعلاً، الفكرة المميزة أساس شهرة الخدمة أو الموقع، الناس دائماً تبحث عن الجديد، المبتكر والمفيد وهذه هي مقومات الفكرة المميزة. فالناس تبحث عن الجديد من باب حب التغيير والمبتكر لأن الناس تمل من الأفكار المتكررة بسرعة والمفيد لأن الخدمة إذا لم تكن مفيدة في الحياة العملية فهي بلا فائدة!

( اكمل قراءة التدوينة )

محررات النصوص الغنية

الإثنين, 22 سبتمبر, 2008

بسم الله الرحمن الرحيم،

مقدمة:
موضوعنا اليوم مهم جداً لمطوري الويب وهو محررات النصوص الغنية أو المتقدمة ويطلق عليها باللغة الإنجليزية (Rich Text Editors) واختصاراً (RTE). محررات النصوص الغنية تمكنك من كتابة نص وتنسيقه (تغيير لون الخط وتكبير بعض الأحرف)لكي يخرج لنا نص بصيغة قابلة للقراءة بسهولة وبشكل جذاب ومن الأمثلة عليه برنامج الوورد (Word). لكن حديثنا اليوم عن محررات النصوص المتقدمة الخاصة بالويب والفرق بينها وبين محررات النصوص العادية أن الناتج يكون عبارة يكون عبارة عن وسوم HTML وماتراه وتحرره عبارة عن معالجة لهذه الوسوم فيظهر لك النص بشكله المنسق ولذلك يطلق عليها (WYSIWYG) أي “ماتراه هو ماتحصل عليه” وبذلك يمكنك استخدامها في مواقع الويب.
( اكمل قراءة التدوينة )

تويتر والشبكات الاجتماعية

السبت, 20 سبتمبر, 2008

بداية لاحظ البعض عدم وجود فائدة من بعض التدوينات ولذلك سأبين في نهاية كل تدوينة ماالفوائدة المرجوة من هذه التدوينة.

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

استبيان الأسبوع الثالث

السبت, 20 سبتمبر, 2008

الاستبيان الثاني أيضاً جاء ضمن التوقعات حيث صوت الغالبية على إطار عمل مفتوح المصدر، ودعوني أتكلم قليلاً عن الاستبيان السابق فمن اختار:

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

( اكمل قراءة التدوينة )

التصميم الجديد

السبت, 20 سبتمبر, 2008

بسم الله الرحمن الرحيم،

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

راعيت في التصميم الجديد راحة المستخدم وسهولة الوصول لما يحتاج إليه بكثرة. وسأسرد بعض التفاصيل:

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

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

اقتراحات لاستضافة جديدة؟

الإثنين, 15 سبتمبر, 2008

السلام عليكم،

بسبب وجود بعض المشاكل في استضافتي الحالية ونقص في الميزات (مثل عدم وجود SVN!) قررت ترك الاستضافة لاستضافة آخرى أفضل … بحثت طويلاً ووجدت أن DreamHost هي الخيار الأنسب للأسباب:

  • الحجم ممتاز وكذلك الحزمة الشهرية (Bandwidth).
  • الأسعار جيدة مقارنة مع باقي الاستضافات.
  • عدة أصدقاء مدحوا هذه الاستضافة ونصحوني بها.
  • يوجد SVN وكذلك CVS
  • يوجد  SMTP و POP
  • يمكن استضافة عدد غير محدود من الدومينات والدومينات الفرعية
  • يوجد Perl و Pyhton و RoR
  • Unix Shell
  • خدمتهم الفنية ممتازة

هل لديكم اقتراحات آخرى أو أي شيء؟