البداية منذ الصغر ,العمل الجماعى

واعتصموا

السلام عليكم ورحمة الله وبركاته ,من مساوىء التعليم فى مصر هو خلوه من الروح ,مثل الجسد الميت ,بل ولا يوجد تحفيز على العلم ,وسأعطى مثال لذلك وهو ما يتعلمه الاطفال فى الصف الرابع الابتدائى عن غرائب الحيوانات وطيور لا تطير والحيتان ,فسئلت احد الاطفال فى عائلتى عن الحوت ,قال لى لا اعلم ما شكله ,تخيل ان تدرس عن شىء ولا تعلم كيف شكله وهو ليس شىء لا يرى بالعين المجردة ,ولكن اكبر المخلوقات الحية الموجودة حاليا ,لماذا لا يتم تزويدالمدارس بادوات العرض داتاشو مع كمبيوتر ,وليس هذا فقط بل تعليم المدرسين كيف  يستعملونها او تعيين موظف دعم فنى مسئول عن تشغيل هذه الادوات للمدرسين ونكون من بابين نحن الرابحين ,تعليم الاطفال وتوفير فرص عمل,ايضا تعليم الاطفال العمل الجماعى ,هذا الشىء لا يتم تعليمه ابدا للاطفال فى المدارس ثم بعدما يكبرون يجدوا انه مطلوبا منهم ان يأخذوا كورسات فى العمل الجماعى Working In Teams  ,قد يقول قائل وهل يعى الاطفال هذه الاشياء ,اقول لك اذا كان النمل يعيها فبالتأكيد بامكان الاطفال ان يعوها ,واليكم هذا الفيديو من البى بى سى عن النمل بعد حدوث الفيضان وكيف يكافح من اجل البقاء عن طريق تشبيك ارجلهم بارجل بعض لبناء مستعمرة طافية على وجه الماء وكيف يكافحون من اجل بقاء الملكة ,طالما لا يتعلم اطفالنا هذه الاخلاق ,فستظل امة الاسلام ذليلة.

شرح الويب سيرفيس,المختصر المفيد

Web Service او خدمة الويب هى عبارة عن برنامج قادر على التعامل مع البيانات عبر الشبكة مثل الشبكة المحلية او الانترنت باستخدام تقنيتين مفتوحتى المصدر هما SOAP و XML, سأقوم بشرح كيفية عمل Web Service باستخدام تقنية Dot Net.

مع صدور Dot Net 3.0 أصبح هناك نوعان من الويب سرفيس .

  1. ASP.NET Web Service.
  2. Windows Communication Foundation (WCF).

سأتكلم عن ال ASP.NET Web Service  .

من أجل ان تعمل الويب سرفيس ستحتاج الى سرفر عليه IIS وسنكتفى هنا بالسرفر المحلى الذى يمكن ان نقوم بتنصيب ال IIS عليه من اسطوانة اكس بى او ما بعده (لن اتكلم عن اعداد ال IIS  فى ويندوز فيستا او ويندوز سبعة).

ملحوظة :اذا كنت ستقوم بتشغيل الويب سرفيس من داخل الفجوال ستوديو فلست بحاجة لتنصيب ال IIS اما اذا كنت ستقوم بتشغيلها عند العميل ,فيجب تنصيب ال IIS

يمتاز استخدام الويب سرفيس بالآتى :

  • تناقل البيانات عبر منفذ 80 بسهولة عبر الانترنت والشبكة المحلية .
  • تستخدم الويب سرفيس تقنية ال XML  وهى مدعمة من قبل جهات عدة .
  • سهولة دمجها فى العديد من البرامج وسأعطى مثال بسيط هنا عن كيف ان الويب سرفيس تحل بعض المشاكل التى تواجهنا فى بيئة العمل ومثال ذلك استخدام InfoPath  ,فاذا كنت استخدمت ال InfoPath  لعلك واجهت مشكلة فتح ال Form فى البداية لان ال InfoPath  يقوم بجلب البيانات من قاعدة البيانات كلها بدون عمل فلترة لانه يعتمد على View  وال View  لا يمكن ان تقبل متغيراتParameters  حتى الآن ,ونقوم بحل هذه المشكلة عن طريق جعل مصدر بيانات ال InfoPath  هو Web Service  ونعطى المتغيرات لهذه الويب سرفيس .

لنفهم اولا بعض التقنية التى تعتمد عليها Web Service  .

SOAP هى اختصار ل Simple Object Access Protocol وهو نظام Protocol للتعامل مع البيانات فى صورة XML عبر بروتوكولى HTTPو HTTPs, لن نتعامل معه مباشرة فالدوت نت يتعامل معها ذاتيا.

WSDL وهو اختصار ل Web Service Description Language وهى لغة تستخدم لكتابة تعريف لل Web service فى صورة XML وخصوصا هى تعرفنا بعنوان الWeb Service و الادوات التى توفرها لنا هذه الخدمة methods للتعامل معها, لن نقوم بكتابتها يدويا فالفجوال ستوديو يقوم بانشاءها ذاتيا.

UDDI وهى اختصار Universal Description Discovery and Integration وهو يسمح لنا بعمل مكتبة للويب سرفيس ليتم استخدامها فيما بعد كفهرس للخدمات التى نقدمها.

بناء ويب سرفيس بلغة VB.NET باستخدام Visual Studio 2008 :

  • قم بفتح الفجوال ستوديو ومن قائمة File  اختر Create Website  .
  • من نافذة New Website  اختر ASP.NET Web service   واكتب اسمه webserviceDemo. هل نوعه HTTP ولا FileSystem  الامر يرجع الي كيفية التعامل مع هذه الويب سرفيس ,فاذا كنت ستتعامل معها على جهازك فقط فسيكفيك ان تكون من نوع FileSystem اما اذا كنت ستتعامل معها عن طريق الشبكة المحلية فاختر من نوع HTTP.
  • نلاحظ وضغ ملف service.vb فى الApp_code  و وضع ملف service.asmx  فى المشروع ,حيث service.asmx  هى صفحة ال Web service  اما service.vb فتعتبر هى صفحة Code Behind  للخدمة والتى سنكتب فيها الكود.
  • نلاحظ انه تم وضع كود بسيط فى صفحة service.vb .
  • نلاحظ وجود <WebMethod()> _ وهو تاج واجب الوجود لجعل ال Method Exposed  اى متاحة ,فاى Method  بدون <WebMethod()> _ لن تكون متاحة مباشرة للعميل الذى سيستخدم Webmethod  اى اننا نستخدم <WebMethod()> _ لجعلها متاحة للعميل .
  • ايضا هناك Namespace  يمكننا تغيير ال Namespace  التلقائى http://tempuri.org/ الى ال NameSpace  الخاص بنا وهو الدومين الخاص بنا ,لن يغير هذا من عمل الويب سيرفيس ,ولكنه يفيد فى حالة وجود استخدام اكتر من Method  يستخدمهم العميل بنفس الاسم فسيتم معرفة الفارق عن طريق هذا ال Namespace.
  • سنقوم بحذف هذا الجزء

Public Function HelloWorld() As String

Return "Hello World"

End Function

  • ونقوم بكتابة الخاصة بنا ولتكن مثلا كالتالى :

Public Function CalcSum(ByVal first As Decimal, ByVal last As Decimal) _As Decimal

Return (first + last)

End Function

  • يمكننا تجربة ال WebService  مبدأيا بالذهاب الى Solution  وعمل ضغطة بزر الفأرة اليمين على ملف service.asmx  وعمل browse .
  • نكتب Method  اخرى تطلب مننا رقم الOrder  فى جدول Orders  الموجود بقاعدة بيانات  Northwind  وترجع لنا البيانات عن هذه الطلب

<WebMethod()> _

Public Function order(ByVal orderid As Integer) As System.Data.DataSet

Dim con As New SqlConnection("server=.;database=northwind;integrated security = true;")

Dim com As New SqlCommand("select * from orders where orderid=@orderid", con)

com.Parameters.AddWithValue("@orderid", orderid)

Dim da As New SqlDataAdapter(com)

Dim ds As New System.Data.DataSet

da.Fill(ds)

Return ds

End Function


الآن نريد تجربة ما قمنا بعمله من Methods  وعمل Consumption  لهم.

  • نصنع مشروع Window Application  ونسميه مثلا WinConsumption .
  • نضغط على ملف المشروع فى Solution Explorer  ضغطة بالفأرة يمين ونختار Add service reference .
  • نضع عنوان الويب سرفيس وفى حالتنا http://localhost/demowebservices/Service.asmx
  • ونضغط على Go
  • نضغ Namespace  لها ولتكن مثلا Myservice  .
  • الآن نريد استهلاك السرفيس داخل المشروع نصنع واجهة كما بالشكل

interface

  • نستخدم Namespace  Imports Webconsumption.myservice وهو الخاص بالويب سرفيس .
  • وهذا هو الكود

Public Class Form1

Dim myserv As New Webconsumption.myservice.ServiceSoapClient

Private Sub btncalcsum_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btncalcsum.Click

MessageBox.Show(myserv.CalcSum(txtlast.Text, txtfirst.Text))

End Sub

Private Sub btnshoworder_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnshoworder.Click

Dim ds As New Data.DataSet

ds = myserv.order(txtorder.Text)

DataGridView1.DataSource = ds.Tables(0)

End Sub

End Class

ملف المشروع

هل مركز البيانات هو الحل الأمثل

Datacenter

السلام عليكم ورحمة الله وبركاته ,كنت فى عملى السابق فى أحد المستشفيات المرموقة ,وكان الحديث عن انهم يخططون لاستخدام الداتاسنتر كحل لربط قواعد بيانات المجموعة التى تتبعها المستشفى ,سواء فى مصر او خارج مصر ,صراحة ,كان كل ما اعرفه عن الداتاسنتر انه سرفر خاص ذو اعدادات معينة لتخزين البيانات والتعامل معها بشكل سريع عن طريق توفير برامج ومكونات كمبيوتر ذات سرعات فائقة ,وبعدما قرأت قليلا عن الموضوع حيث انه موضوع جديد فى منطقتنا وتفجر الحديث عنه فى الفترة الحالية على مدونات التقنية الاجنبية ,فالداتاسنتر يوفر لك انظمة تخيليلة لمعالجة البيانات Virtualization  والتى تعمل ببساطة بنظام يشبه VMware  حيث تسخر الهاردوير ليعمل عليها اكثر من نظام تشغيل مترابطة بنتوورك تخيليلة تسمح بالتعامل مع البيانات بكفاءة وتقسيم العمل فيما بينها وتحقيق القدر الأمثل من استهلاك الانوية العديدة التى ظهرت كمخطط جديد للمعالجات ,ايضا تقدم الداتاسنتر حلول البرمجة السحابية او ما يعرف ب Cloud computing  والتى تتعامل مع التطبيقات كخدمات ,كل هذا عرفته للحقيقة بعد تركى للعمل فى المستشفى وبحثى عن الموضوع ,لعل فيه خير فأتعلمه فيفيدنى فى رحلة البحث عن عمل ,عموما ,بما جمعته حتى الآن يمكننى ان اقول ان الاستخدام الامثل للداتاسنتر كخدمة مقدمة من القرى الذكية والشركات التكنولوجية الكبرى (حيث ان تكلفة انشاء داتاسنتر خاص بقدرات Virtualization  و هاردوير وسوفت وير تكلف الكثير من المال لذلك تقدم الشركات الكبرى خدمة استضافة قواعد البيانات لديها )لن يحقق مبتغاه الا بالتعامل عن طريق RIA وهو ما يعرف ب Rich Internet Applications  والتى يتم التعامل عادة معها عن طريق المتصفح واستخدام تقنيات الاجاكس للتقليل من الزيارات التى تتم بين الجهاز العميل والخادم ,ولا يمكن تحقيق الاستخدام الامثل من الداتاسنتر اذا كنت ستتعامل عن طريق واجهة العميل  Client Access Part  الذى يستخدم حاليا فى اغلب الشركات ,حيث يوجد هناك برنامج على جهاز العميل ,او حتى على خادم وسطى يقوم بالاتصال بقاعدة البيانات وعمل Processing  للبيانات التى تم جلبها من قاعدة البيانات ,لماذا ,لاننا فى هذه الحالة سنقوم بجلب هذه البيانات من الداتاسنتر الى الجهاز العميل او الى الخادم الوسطى لنقوم بعمل العمليات التى نحتاجها عليها مثل Insert ,Update  او حتى عرض لها ,وهذا سيواجهه صعوبات عدة ,ليس بسبب اننا فى آخر العالم من حيث التقنية او سرعات الانترنت ولكن الجميع يواجه هذه المشاكل وهى :

-اولا هناك حزم من البيانات تضيع فى الاتصال بين العميل والداتاسنتر مما سيؤثر سلبا على البيانات التى يتم جلبها او ارسالها .

-بطىء الانترنت فى بلادنا وانقطاعه لسبب او لآخر وهو امر معروف للجميع .

-انشغال شبكة الشركات ببرامج اخرى تستهلك الباندويدث مثل ارسال الايميلات وتصفح الويب وغيره.

-عملية ال Filtering  للبيانات عن طريق الجدار النارى Firewall  وغيره من وسائل الحماية .

-عدم كفاءة الهارد وير الخاص بالشركات بالشكل الامثل حيث يقف المال عبئا فى استخدام اجهزة Routers ,switches ,Lan Cards ذات كفاءة عالية وعمل Upgrade لها .

-نقل كم كبير من البيانات يستلزم وقتا كبيرا .

يمكنك ملاحظة الفرق عن طريق المخطط التالى :

Datacenter

لذلك ارى انه فى حالة عدم وجود تطبيقات ويب فان الفائدة المرجوة من الداتاسنتر لن تتحقق .

معركة البقاء

اذا كانت انجليزيتك مقبولة فستستطيع فهم هذا المقطع بسهولة وهو يتحدث عن نسب المسلمين حول العالم وكيفية محاولة اليهود والامريكان تقليل اعداد المسلمين كى يقللوا (حسب ما يدعون من الارهابيين),اهداء الى دعاة تقليل النسل ,

لا توفر العاملين على حساب العمل

employee cut

السلام عليكم ورحمة الله وبركاته ,اثار انتباهى احد الاعلانات عن الوظائف (حيث انى رجعت ابحث عن عمل بعدما تركت احدى الوظائف الممتازة لظروف ما)المهم ,المطلوب فى هذه الوظيفة هو بائع داخلى Indoor Sales ولكن من مهام الوظيفة هو الآتى:

  1. حساب سعر الوحدات المباعة والمبلغ الكلى للشراء.
  2. استقبال المبلغ سواء كاش او عن طريق بطاقات الائتمان او القسط .
  3. تحضير عقود البيع .
  4. تقديم العروض الخاصة والبحث عن الوحدات المطلوبة من الاماكن والمخازن التابعة للشركة .

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

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




مشكلة "windows was unable to complete the format"

السلام عليكم ورحمة الله وبركاته ,اذا واجهتك مشكلة القيام بعملية فورمات لذاكرة الفلاش خاصتك فعليك بهذه الأداة HP format Utility وهى تقوم بعمل فورمات للفلاش او عمل ذاكرة الفلاش Bootable ,عادة تنفع هذه الاداة فى حالة اظهار الويندوز لرسالة الخطأ “windows was unable to complete the format” ,اما اذا كانت رسالة الخطأ “data error cyclic redundancy check”  فهناك احتمال كبير حوالى 99% ان الفلاش قد خربت , يمكنك التأكد من هذا عن طريق Memtest .

كيف أكون سعيدا

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