تعديلات على واجهة الموقع

متابعينا الكرام ، قمت بتطوير واجهة الموقع باستخدام bootstrap  ، وأثناء عملي أتاني مشروع فاضطررت أن أوقف العمل  مؤقتا ، على أن أتم العمل لاحقا

شكرا لكم على صبركم

خيارات إعداد البريد الإلكتروني لموقع

بصفتي مطور مواقع بالدرجة الأولى، يتطلب مني دائما أن أقوم بإعداد خدمة البريد لمواقع إلكترونية أقوم ببرمجيتها ليكون بمقدور الشركة أو الشخص إنشاء بريد باسم الشركة مثل : info@aaaaa.com وهنا الخيارات المتاحة

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

الخيارات المدفوعة متعددة، لكثرة الشركات التي تقدم خدمة استضافة البريد الالكتروني على النطاق ( الدومين )، وتتمايز الشركات فيها بينها، مثلا في مساحة البريد الإلكتروني، الحماية،  التصفية (الفلترة)... إلخ
المشكلة في الخيارات المدفوعة هي تكلفتها المرتفعة نسبيا، فمثلا : متوسط أسعار إنشاء بريد إلكتروني واحد هي 5 دولار شهريا، أي سنويا 60 دولار، ولو أرادت الشركة إنشاء 10 حسابات بريد إلكتروني سيتوجب عليها دفع ما يزيد عن 500 دولار سنويا لاستضافة الايميلات.
وفي نفس الوقت تكون الشركة قد دفعت ثمن الاستضافة العادية لموقعها مبلغ لا تزيد عن 150 دولار سنوي ( أتكلم عن أي موقع متوسط )، وحينما تخبر العميل بأنه يتوجب عليه أن يدفع 500 دولار كي يحصل على خدمة بريد فاخر  ( أغلب مزاياه لن يستخدمها أبدا )، فيتعجب منك لأن تكلفة البرمجة طوال العمر أقل من 1000 دولار، والحديث يطول.
أما عن الشركات وأفضلها، كلها ممتازة لأنه في حالة الدفع الكل يتنافس، وصراحة لم أجرب أي منها في بيئة فعلية لمدة طويلة، تستحق أن أقوم بتقييمها.

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

الآن لكي لا نطيل، ندخل في القسم الأهم ، وهو الخيار المجاني.

أغلب شركات الاستضافة تقدم لك خدمة البريد الإلكتروني مجانا على نفس الاستضافة، حيث تقوم بالولوج إلى لوحة تحكم الاستضافة وإنشاء الحساب الإلكتروني، وتعطيك خيار الدخول إليه إما عبر برامج البريد الإلكتروني Email Clients  أو عن طريق صفحة ويب مثل mail.aaaaa.com.
وهو خيار تعتمده الكثير من المواقع ولكن له  ما عليه هذا الخيار .
العيوب
1- مرتبط بالاستضافة: أي أن العميل إذا أراد بعد فترة تغيير شركة الاستضافة لأي سبب كان، فإنه سيخسر الحسابات ومحتواها ، وعليه أن يقوم بإنشاء حسابات من جديد، والمشكلة ليست بالحساب، بل في محتوى البريد السابق الذي خسره، وهو لا يقدر بثمن، صحيح أن هنالك خيارات نقل الرسائل Migration، ولكن أغلب الشركات لا تقدمه، أيضا يمكن إتباع حل هنا وهو استخدام برامج البريد الالكتروني Email Clients والتي تقدم خدمة حفظ الرسائل حتى لو تم تغيير الحساب، وأشهرها Microsoft Outlook & Mozilla ThunderBird ، ولا عجب أن الشركات الرسمية تصر على استخدام برنامج الأوتلووك

2- مرتبط بالاستضافة: أي في حالة أن الاستضافة تعطلت، أو حث بها اختراق، أو تحديث صيانة، أو تم إغلاق منفذ .... إلخ، فإن خدمة البريد ستتوقف كليا، وما أسوأ أن يقوم شخص أو شركة بإرسال بريد لك ولا يصلك، أو تصلهم رسالة بفشل إرسال البريد.

3- المشاكل الأمنية: حيث هنالك قاعدة في مجال الشبكات والسيرفرات وهي One Machine, One Service  ، أي جهاز واحد تعمل عليه خدمة واحدة فقط، مثلا كان في خادم IIS ثغرة، فتم اختراق السيرفر، فطبيعي ستضرر كل الخدمات الأخرى مثل خدمة البريد المستضافة على السيرفر، لذلك يفضل دائما أن تكون كل خدمة مستضافة على سيرفر خاص.

4- زيادة المساحة: البريد جزء من الاستضافة، والاستضافة ليست مجانية، وكل عملية زيادة في مساحة الاستضافة، سيتوجب عليك دفع مبلغ مالي مقابلها، وإذا أعدنا الحساب، سنجد في هذه الحالة أن الخدمة المدفوعة للبريد الإلكتروني أوفر، وهنا أتكلم عن حسابات بريد لشركة فعلية تعمل وتستقبل رسائل يومية، مثلا في يومي المعتاد أرسل رسائل ما بين 10-40 رسالة في اليوم، ولكم أن تتصوروا لو كانت شركة لديها 10 موظفين، كم سيحتاجون إلى مساحة.

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

أنسب خيار هو : الخيار المجاني الآخر ، هو استضافة البريد الالكتروني عند شركة تقدم خدمة مجانية.

وهنا يجب أن أعقب أن مشكلة إعداد حسابات البريد الإلكتروني وتكاليفها كانت قديما لا شيء، بسبب أن كبرى الشركات مثل مايكروسوفت وجوجل كانت تقدم هذه الخدمة مجانا، فمثلا مايكروسوفت كانت تقدم خدمة إنشاء حسابات لغاية 500 حساب ( عدد مهول ) وكل حساب لديه مساحة تزيد عن 3 جيجا، وأمست 7 جيجا لاحقا، ويمكن للمستخدمين الوصول إلى حسابهم كأنه حساب هوتميل تقليدي ، من خلال موقع الهوتميل أو الأوتلوك ، ولا أخفيكم أن بريد الشركة وحساباتها كانت على هذه الخدمة ، ولدي بريدي الخاص khalil@developers.ps .
ثم بدأت الشركات بالطمع، فقامت جوجل بجعل الخدمة مدفوعة، ومن ثم مايكروسوفت، وهو عار عليهم بكل معاني العار، ويتوجب علينا قبل نهاية العام أن نجد شركة أخرى، بل حتى أن مايكروسوفت وفرت خدمة بديلة مدفوعة ( 5 دولار شهريا لحساب الواحد ) ولم توفر أداة لنقل الحسابات والرسائل من الخدمة القديمة ( تخلف واضح ).

المهم أثناء تجربتي السابقة كانت هنالك شركة تسمى زوهو Zoho تقدم الخدمة مجانا ، وقد قمت بتجربتها سابقا لشركة، وكانت ممتازة، واضطررت أن أنقل بعض حسابات المواقع لدي إلى هذه الشركة ، وما زالت ممتازة.
المميز في خيار استضافة البريد على شركة خارجية ( سواء كانت مجانية أم مدفوعة ) التالي :
1- لا علاقة بينها وبين الاستضافة، فلو اردت تغيير استضافة البرمجة، لن تتضرر حسابات البريد الاكتروني لديك، لأنها غير مرتبطة بالاستضافة.
2- لو تعطل سيرفر الاستضافة فلن توقف البريد عن العمل.
3- المشاكل الأمنية نادرة، لأن هذه الشركات تقدم خدمة واحدة، وكل من يعمل لديها مختصون في هذه الخدمة.
4- زيادة المساحة أبسط هنا، لأن سعر زيادة مساحة البريد أرخص من سعر زيادة الاستضافة البرمجية.

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

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

حل مشكلة IpOverUsbSvc في الويندوز فون

في أحيان كثيرة عند وصل هاتفك الويندوز فون بالويندوز، تظهر رسالة Windows Phone IP Over USB Transport(IpOverUsbSvc) service is running ، وهذا حل المشكلة ، وهو بسيط .
المشكلة خلاصتها أن الخدمة المسؤولة عن إعطاء الويندوز فون أي بي للاتصال به كأنه على
 شبكة معطلة.

والحل يجب تفعيل هذه الخدمة
يجب عليك الذهب إلى الخدمات الموجودة في إدارة جهاز الكمبيوتر ، وتفعيل الخدمة أو إعادة تشغيلها حسب حالتها



بالتوفيق

حل أغلب مشاكل الويندوز فون وخصوصا مشاكل الإنترنت

يواجه الكثير من مستخدمي للويندوز فون مشاكل عديدة في
• الدخول الي المتجر.
• تصفح المواقع عبر الإنترنت اكسبلورر.
• وضع الايميل وضبط الحساب الرئيسي للنظام.
• التقويم والاعدادات وغيرها من الخيارات.

الحل ان شاء الله بسيط وهو عبر خطوتين سهلتين   


الأول
ضبط تاريخ ووقت الهاتف


والثاني
تعديل الدولة : فاغلب الدول العربية والعالمية غير مدعومة لذلك يجب وضع دولة مدعومة وانا انصح باختيار الولايات المتحدة


أعلم أن الجميع لن يصدق أن سبب كل المشاكل حلهم بهذه البساطة، ولكن جرب .
بالتوفيق


هندسة برمجيات : from z to Agile الجزء الأول


حسنا حسنا، يبدو أن الموضوع كبير، ولكنه في الحقيقة بسيط، ويحتاج إلى مقدمة.

نبدأ بسؤال بسيط ما هو ال Software
الإجابة سهلة : هو برنامج
النتيجة : الإجابة خطأ

البرنامج هو Program ، أما ال Software فله قصة أخرى.

في منتصف القرن الماضي وحينما كان المبرمجون يسيطرون على العالم، كانت تواجههم مشاكل جمة.
السبب أن علم الحاسوب وصناعة البرامج ما زال علما طازجا، ومن يقوم على البرمجة هم علماء الرياضايات، وكانوا يتعاملون مع البرنامج بمنطق علمي بحت.

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

من هنا كان لا بد من ولادة هندسة البرمجيات
هندسة البرمجيات، بالمختصر المفيد، هي علم يدرس كيف نصنع Software بخطوات علمية دقيقة، لإخراج ال Software بأبهى صورة وحسب المطلوب، وذلك مرورا بمفاهيم وعمليات معينة.

قرر مهندسوا البرمجيات أن ال Software ليس مجرد برنامج ، ولكنه نظام بمعنى أوسع، له العديد من الأجزاء، لعل آخرها هو الكود، ولربما لا يكون الكود منها أحيانا.

فقبل عملية بدء البرمجة، يجب أن يكون هنالك فترة جمع المتطلبات، وفهمها وتحليلها، وكتابتها، ومراجعتها ... إلخ
وهذه تسمى عملية التوثيق Documntation ، وهي أساسية في دورة حياة صناعة البرنامج أو النظام، فبدونها سيعمل المبرمج أي كلام، وسيكتب كود قد لا يكون مناسب للمشكلة القائمة.
أيضا هنالك عملية إدارة المشروع Management، وتحديد وقت البداية ووقت النهاية والمدخلات والموارد.
ومن تحديد الموارد، هنالك الموارد البشرية، واختيار الفريق، سواء كان المبرمجين أو المصممين، أو محللي النظام ... إلخ.
أيضا هنالك عدة آليات أثناء كتابة الكود، وبعد كتابته مثل Quality Assurance ، و عملية الاختبار Testing ، أيضا حتى بعد تسليم المشروع هنالك فترة الصيانة، والتي تعتبر من ضمن الSoftware

إذا ما هو ال Software
هو مجموع كل من التوثيق، وإدارة المشروع، والكود، وفحص الجودة والكفاءة، وكافة الاختبارات، وفترة الصيانة

وهذا أدى بدوره إلى بزوغ عصر جديد في البرمجة، أدى لإنتاج هذه البرمجيات الضخمة بشكل خيالي وأيضا بشكل ناجح جدا.

قام مهندسوا البرمجيات، بوضع خطط وآليات حول كيفية سير ال Software ( سأطلق عليه الآن البرنامج )
وهذه الخطط لضمان النجاح الأمثل لدورة حياة البرنامج، وتضمنت العديد من الآليات والنماذج.

سميت هذه الآليات بالنماذج Models ، بها خطة دقيقة وعمليات معينة يجب أن يسير عليها المشروع لضمان نجاحه

لكي لا أطيل، قام المهندسون بوضع بنموذج لإتمام العمل اسمه الشلال waterfall ، هذا النموذج ينص على بعض المفاهيم منها


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

هذا النظام كان طفرة، إلا أنه حين تطبيقه على أرض الواقع، واجه عدة عقبات، منها أن كل مرحلة من مراحل هذا النموذج تستغرق وقت، فمرحلة جمع البيانات وتوثيقها قد تستغرق 3 شهور، وحينما نبدأ بالبرمجة، قد نستغرق 6 شهور مع إجراء الاختبارات.
وهذا يعني أنه قد يمر 10 شهور لكي نرى البرنامج جاهز وقبل بدء العمل عليه.
قد يكون خلال ال 10 شهور، تغيرت متطلبات البرنامج، وكان يجب إضافة عمليات أو حذفها من البرنامج، هنا يجب أن نمر بالعملية من جديد، ونستغرق مدة لا بأس بها لتعديل البرنامج، ومن ثم تظهر ضرورة لتعديل جزئية فنعود في دوامة مغلقة، فيقول المدير بعد أن يشد شعره، عودوا للعمل الورقي أرحم.

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

قام المهندسون بابتكار نماذج كثيرة ومتنوعة، منها الحلزوني ، ومنها .. ومنها، وكان منها صديقنا ال Agile الذي سأتكلم عنه في مقال منفصل

إضافة دعم ملفات HTML5 في مشروعك مثل svg

أضافت HTML5 و CSS3 العديد من الامتدادات الجديدة، والتي لن تعمل بمشروعك مباشرة حين رفعه على الويب، إلا بإضافة الدعم لها عن طريق ملف Web.Config

افتح ملف الويب كونفيج، وفي وسم
<system.webServer>
أضف فيه التالي
 <staticContent>
      <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
      <mimeMap fileExtension=".m4v" mimeType="video/m4v" />
      <mimeMap fileExtension=".ogg" mimeType="video/ogg" />
      <mimeMap fileExtension=".ogv" mimeType="video/ogg" />
      <mimeMap fileExtension=".webm" mimeType="video/webm" />

      <mimeMap fileExtension=".oga" mimeType="audio/ogg" />
      <mimeMap fileExtension=".spx" mimeType="audio/ogg" />

      <mimeMap fileExtension=".svg" mimeType="images/svg+xml" />
      <mimeMap fileExtension=".svgz" mimeType="images/svg+xml" />

      <remove fileExtension=".eot" />
      <mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
      <mimeMap fileExtension=".otf" mimeType="font/otf" />
      <mimeMap fileExtension=".woff" mimeType="font/x-woff" />
    </staticContent>

حل خطأ Unable to get property 'UI' of undefined or null reference

عند استخدامك لأداة ScriptManager  في ASP.NET الإصدار الأخير ، تجد أن هذا الخطأ يظهر
Unable to get property 'UI' of undefined or null reference
ويعكر صفوك مع الصفحة. الحل بسيط وهو كذلك

عليك باستبدال أداة ScriptManager  بأداة ajaxToolkit:ToolkitScriptManager
وستكون بالشكل التالي
<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"/>

تمام تم حل المشكلة بنجاح
بالتوفيق

المبرمج والعمل بالسخرة للمعارف

العمل بالسخرة: هو أن تعمل مجانا أو مقابل طعامك وملبسك ساعات طويلة ومهينة، وأشهر عمل بالتاريخ العربي كان بالسخرة هو حفر قناة السويس.


هنالك نوعين من الأعمال في العالم، نوع يقدم سلع Products  ونوع يقدم خدمات Services

النوع الأول ( السلع ) تقوم بدفع مبلغ مالي فتحصل في المقابل على شيء ملموس، مثلا قميص، جوال، سنادويتش، هذا النوع من الأعمال لا يواجه الناس أي مشكلة في تقبل عملية الدفع، لأنهم ببساطة يحصلون على شيء ملموس في المقابل، ولن أطيل في الحديث عنه.


المشكلة في تقبل الناس للنوع الثاني الذي يقدم الخدمات.

مثال عليه، أنت ذهبت لكي تعمل سوفتوير للجوال في محل ما، يقوم صاحب المحل بشبك جوالك وتنصيب السوفتوير في دقائق وتتم العملية.

مثال آخر حينما تذهب لتحلق عن الحلاق، فإنه يقدم لك خدمة، ولا يعطيك سلعة.

كذلك المبرمج والمصمم وأغلب فنيي الحاسوب، يقدمون خدمات.

بالمنطق لا يمكنك أن تقوم بالحلاقة مجانا عند الحلاق، وإلا لكان الحلاق صاحب عمل خيري، فهو كيف سيعيل عائلته إن كان مقابل الخدمات مجانا.


أصدقائي وأحبائي، الكثير منهم لا يستوعب هذا الأمر، وهو أمر أعاني منه بشكل شبه يومي.


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




صديق آخر طلب مني أن أخدمه في مشروع تخرج صغير ( عبارة عن جدولين ) فقلت له وقتي ضيق، فقال سأدفع، قلت له ساعتبرها هدية وستكون مبلغ 100 دولار، فقال لي لا مشكلة.

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

بعد نهاية المشروع حسبت وإذا بي قد عملت على مشروعه ما يزيد عن 140 ساعة ( وقد اضطررت لأطلب من صديق مساعدة لكي ننهي المشروع).


انتهى المشروع وحصل صديقي على ما لم يحصل عليه أحد جراء المشروع، لم أتلقى الشكر اللازم، وقلت لصديقي سأحسب أنني عملت بدلا من 140 ساعة فقط 100 ساعة، والساعة نجعلها 3 دولار ( مع ان ساعتي من 17 - 30 دولار وتصل في أحيان الى 60 دولار ).

أي أن كل عملي سيكون 300 دولار، فاستهجن صديقي الموضوع، وقال لي اتفقنا على 100 دولار، أخبرته أنها كانت حينما كان المشروع جدولين، وكان علي فقط أن أساعدك ولا أن أعمل المشروع كامل، أيضا ثمن الاستضافة هو 50 دولار والتي دفعتها مني.

بعد عناد منه طويل( خلاص المشروع انتهى، وإما أقبل أو لا ) وافقت على مبلغ 147 دولار ، ذهب منهم 47 دولار لصديقي الذي عمل 40 ساعة معي، وأنا أخذت 100 دولار، وهي بالمناسبة لا تساوي ثمن الحذاء الذي يلبسه ليتباهى به أمام الناس، أي أني لا أساوي...


لو أن هذه الساعات قضيتها مع عائلتي، أو أدرس كتاب، أو أحسن مواقعي، أو أكتب مقالات، أو أتم عمل لعميل، لكانت استفدت أضعاف الأضعاف،



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



ما الهدف من المقال هذا:


  • الهدف إذا كنت مبرمج محترف،

  •  ألا تعمل مجانا لأحد مهما كان، فالعمل عمل، ولا داعي للعواطف إلا لأمك أو أبيك أو إخوتك،

  •  إذا عملت لشخص وخصوصا إذا كان قريب، إبدأ بتسجيل شاشتك لكي تخبره أنك عملت عدد ساعات كذا لتحاسبه بدون زعل.

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

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

  • إذا المرء لا يرعاك إلا تكلفا ... فدعه ولا تكثر عليه التؤسفا


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



مشكلة عدم تعارف هواتف اللوميا على الويندوز 8

واجهتني مشكلة منذ يومين وهي عدم تعارف هاتف اللوميا 925 Nokia Lumia  على الويندوز 8 Windows ، والحمد لله حلت بعد عناء.

قد يكون سبب المشكلة عدة أمور، وحلها يكون بسيط، مثلا إعادة تشغيل الجوال، إو تنصيب التحديثات أو ضبط إعدادات الهاتف.

ولكن ما واجهني مشكلة أخرى ليست منها وبعد عناء كان الحل كالتالي:
نسخة الويندوز المنصبة على الجهاز كانت Windows 8 Enterprise N
 انتبهوا للحرف N
 هذا معناه بدون Media Features

ويجب تنصيب هذه الحزمة لكي يتعرف على الجوال ويكون به خصائص إضافية أخرى.
توجد عدة طرق لتنصيب الحزمة أسلها تحميلها من هذا الرابط.
Media Feature Pack for N and KN versions of Windows 8

ما هو مشروع روزلين (Roslyn Project)

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

عند البرمجة في الدوت نت ، سيكون كل شيء تحت يدك ، وكل الامكانيات التي حلمت بها أو لم تحلم بها بين يديك، حتى الفيجوال ستوديو نفسه IDE يمكنك البرمجة والتعديل عليه من خلال Visual Studio SDK ، وعمل إضافات وتعديلات مذهلة . الوصول لشيفرة IL وحتى بناء لغة برمجة خاصة بك، ولكن ما لا تستطيع عمله أو فهمه أو لمسه ، هو المترجم Compiler فهو ملك مايكروسوفت وكنزها الثمين وكهف أسرارها المظلم.

الآن مايكروسوفت سمحت لك بلمس هذا الكنز الثمين، وصنعت مجموعة دوال APIs للتعامل مع المترجم وصنع ما لم تكن تحلم به.

بل وأكثر من ذلك، طرحت المشروع كامل مفتوح المصدر تحت رخصة أباتشي 2.0 ، ويمكنك تحميل المتطلبات من هنا
 .NET Compiler Platform ("Roslyn")

بعد ذلك يمكنك إنشاء مشروع جديد ، أو يمكنك وضع المكتبات في مشروع سابق - كما هو برالباط بالأعلى عبر Nuget - والقيام بتجربة أمور جديدة.

حاليا لا أملك الكثير لأعرضه وأسأل الله أن يفتح لي هذا الباب المرتجي