الأربعاء، 16 مايو 2012
زيادة اعداد المستخدمين لتويتر يستدعي قوانين جديدة
الاثنين، 16 أبريل 2012
برمجة الأندرويد

ولكن أفكر معكم بصوت مرتفع وأستعرض فكرة البرمجة على أجهزة المحمول الذكية Smart Phones والمستقبل وما هو شكل هذا العالم البديع والمبهر .
هناك ثورات قامت بمساعدة تكنولوجيا الهواتف الذكية عن طريق استخدام تقنيات مثل التويتر والفيسبوك وكيف لمواطن في مدينة السويس المصرية يرى جنود الشرطة المصرية يطلقون الرصاص الحي على المتظاهرين وباستخدام التويتر يقوم بتسجيل الفيديو ونشره في دقائق معدودة حتى يراه من يتابع الأحداث في دولة أخرى و في ساعات يكون انتشر على تويتر كالنار في الهشيم ليراه كل العالم .
هنا قمنا باستخدام تقنية التغريد الرائعة ( Twitter ) في نشر فيديو عن أحداث مهمة وقام ناشر الفيديو بإستغلال لهفة الملايين لمعرفة أي أخبار تأتي من هذه المدينة الباسلة في بدايات الثورة المصرية واذ لا يعرض فقط اخبار مكتوبة بل هو يضعهم في قلب الحدث بالصوت والصورة وكل هذا بفضل تقنيات تم تطويرها لتعمل على الهواتف الذكية والتي معظمها الآن يعمل بنظام تشغيل الأندرويد.
اول ما شد انتباهي وابهرني في هذا المجال كان عبر تقرير على قناة العربية منذ سنتين تقريبا عن ثلاثة شباب من مدينة الإسكندرية يخطون خطواتهم الأولى بعد تخرجهم من الجامعة في تخصصات تقنية مختلفة وكانت بدايتهم في ذاك الوقت فريدة من نوعها ، بدأو ببرمجة اجهزة أبل ولما كان سوق مثل ذلك تطبيقات غير موجود في مصر حينه فإتجهو الى السوق العالمية ونجحو نجاح كبير واتذكر انهم صممو تطبيق عن حالة الطقس وقد احتل هذا التطبيق حينها الترتيب الاول من حيث عدد مرات التحميل من متجر أبل
كان أيفون أبل بنظام تشغيله IOS يحتكرون سوق تطبيقات الهواتف إلى ان ظهر أندرويد وبدأ في المنافسة بل والتفوق احيان كثيرة واصبح التوجه لبرمجة الهواتف الذكية كبير جداً ،فالأندرويد يوفر بيئة برمجة أكثر سهولة حيث قامت جوجل بتوفيرها بشكل مجاني ومفتوح المصدر .
سأذكر هنا نموذج آخر لشاب مصري صغير السن ولكنه كبير العطاء .
ايهاب عصام :
نقلا عن اكثر من وسيلة اعلامية يعد ايهاب عصام من اصغر مطورين الأندرويد في مصر بل والوطن العربي كما هو من اصغر رواد الاعمال في مصر وهو لم يتم بعد الـ 16 من عمره - حفظه الله - والمشارك في اكثر من فاعلية منها Startup Weekend القاهرة كما قام بتطوير تطبيق لاجهزة الاندرويد دليلك لانتخاب رئيس مصر يسرد فيه بيانات عن المرشحين وعن انتخابات الرئاسة من شروط وخلافه وهنا تطبيق وهو اشتري مصري .
للحديث عن الجانب المادي بشكل ربحي واقتصادي برمجة الهواتف الذكية توفر اكثر من طريقة ربحية ولكن في الاساس انت في حاجة لبرمجة تطبيق ناجح ويلقى قبيول كبير وعدد مرات تحميل كبيرة في هذه الحالة يصبح في مقدورك التربح سواء من توفير التطبيق على المتاجر المختلفة بقيمة رمزية 1 او 2 دولار مثلا مع عدد مرات تحميل 5000 مثلا و لك ان تحسب العائد او العائد عن طريق الإعلانات .
مرة اخرى لست بصدد عرض لقصص نجاح ولكن هو بمثابة عصف ذهني يساعد ويلهم لتطوير تطبيقات بأيد مسلمة عربية تفيد العالم اجمع وتبرز الصورة الحقيقية للعقل المسلم المستنير في كافة المجالات الاقتصادي منها او الاجتماعي او السياسي او المجال الدعوي ،هي لغة العصر والمستقبل واسرع الطرق للوصول للآخر واسهل اللغات التي يفهمها ويستوعبها الآخر .
ألم تتحمس بعد لتعلم برمجة الأندرويد يمكن متابعة هذه القناة على اليوتيوب هي باللغة الإنجليزية ولكنها رائعة ومبسطة وشاملة .
Android Development For Absolute Beginners
الأحد، 30 أكتوبر 2011
Graphs And Charts in Visual Basic
بعد عملية بحث طويلة اكتشفت انه يوجد العديد من أدوات الرسوم البيانية والخرائط الإحترافية التي يقدمها اصحابها بشكل غير مجاني والحقيقة أنها تقدم حلول و تصاميم رائعة وجيدة ولكنها غير مجانية وبالتالي هي غير مناسبة مع شرحي هذا على الأقل حتى يتسنى لزواري الأعزاء تجربة المثال فتابعت البحث الى ان توصل لأداة رائعة وتقدم كل ما هو مطلوب وبشكل مجاني MSChart إضغط هنا لتحميلها ومعرفة متطلباتها .
غالبا سنحتاج الى الـ Framework: .NET Framework 3.5 SP1 بعد ذلك نقوم بتشغيل ملف الإعداد .
بعد الإنتهاء من الإعداد نبدأ الآن في تهيئة الفيجوال بيسك للبرمجة على الأداة .
إضافة الأداة إلى بيئة البرمجة لإستخدامها :
- من شريط الأدوات Toolbox نضغط زر الفأرة اليمين ثم Choose Items ثم تحديد الأداة ستظهر في شريط الأدوات .
- نقوم بسحبها لإستخدامها على الفورم .
- تحديد مدى البيانات التي سيتم تحويلها إلى رسوم بيانية أو خرائط من الخصائص Properties وعند الخاصية Series إضغط على Collection لتحديد عدد مجموعات البيانات المطلوبة .
- فقد تكون مجموعة واحدة من البيانات مثلاً ( مبيعات مكتب سياحة وسفر ويتم فيها مقارنة مبيعات تذاكر الطيران بالنسبة لحجوزات الفنادق )- أو قد تكون مجموعتين من البيانات مثلاً ( نفس المثال مبيعات تذاكر الطيران ويكون هناك بيانات لتكلفة المبيعات وبيانات صافي المبيعات كما موضح في الصورة )
كل ما عليك هو اضافة مجموعات على حسب احتياجك . - هنا كود برمجة لمجموعة ( Series ) واحدة فقط :
Private Sub Sales_Graph()
Dim array(1000, 1000) As Object
array(0, 0) = "Ticket"
array(0, 1) = "Hotel"
array(0, 2) = "XO"
array(1, 0) = 50
array(1, 1) = 100
array(1, 2) = 150
array(1, 0) = Format(CDec(array(1, 0)), "#,##0.000")
array(1, 1) = Format(CDec(array(1, 1)), "#,##0.000")
array(1, 2) = Format(CDec(array(1, 2)), "#,##0.000")
Chart1.Series(0).Points.AddXY(array(0, 0), array(1, 0))
Chart1.Series(0).Points.AddXY(array(0, 1), array(1, 1))
Chart1.Series(0).Points.AddXY(array(0, 2), array(1, 2))
End Sub
أما في حال كان هناك أكثر من مجموعة ( Series ) :Private Sub Staff_Sales_Graph()
Dim array(1000, 1000) As Object
Dim array1(1000, 1000) As Object
Dim array2(1000, 1000) As Object
Dim Total_Sales As Double
Dim Cost_Sales As Double
Dim Net_Sales As Double
Total_Sales = 150
Cost_Sales = 100
Net_Sales = Total_Sales - Cost_Sales
array1(1, 0) = Net_Sales
array2(1, 0) = Cost_Sales
If array1(1, 0) > 0 Then
Chart2.Series(0).Points.AddXY(array1(0, 0), array2(1, 0))
Chart2.Series(1).Points.AddXY(array1(0, 0), array1(1, 0))
End If
Next
End Sub
مع العلم ان أكثر هذه الأنواع إستخدماً هما النوعان الموضحان في الأعلى .
تمتعوا بهذه الإضافات الرائعة التي تعطي لبرامجكم الكثير من التميز والإحترافية .
الخميس، 20 أكتوبر 2011
تويتر على الفيجوال بيسك
لا اتحدث اليوم عن تويتر كشبكة اجتماعية انما اعرض للمبرمجين طريقة استخدام TwitterVB.dll في برامجهم .
- تنزيل الملف TwitterVB-2.5
- اضافة المكتبة Add a reference .
- إضافة الأسطر التالية إلى مشروعك .
Imports TwitterVB2 - الآن عليك ان تأخذ تصريح عن طريق حساب تويتر الخاص بالمستخدم حتى يستطيع تطبيقك من استخدام حسابه لذا عليك ان تسجل تطبيقك ضمن تطبيقات تويتر من هنا
http://twitter.com/oauth_clients
أو للمساعدة http://twittervb.codeplex.com/wikipage?title=XAuth&referringTitle=Documentation - بعد الإنتهاء من التسجيل ستحصل على متغيران the consumer key و the consumer secret
- الآن لديك المتغيران وعن طريقهما سيقوم المستخدم باعطاء التصريح للتطبيق لكي يستخدم حساب التويتر الخاص به لذا عليك برمجياً ان تقوم بحفظهما سواء في الـ app settings او ملف تكست او قاعدة بيانات لك حرية الإختيار .
قم بإضافة التالي في منطقة التصاريح العامة general declaration area وقم بتعريف مغير واحد فقط للـ twitter lib
Dim Twitter As New TwitterVB2.TwitterAPI
ثم
Url = Twitter.GetAuthorizationLink(ConsumerKey, ConsumerSecret) - ستحصل على الـ PIN الذي سيستخدم أيضاً للحصول على متغيران المستخدمان للتسجيل في تويتر عن طريق التطبيق
Dim Isvalid As Boolean = Twitter.ValidatePIN(TwPIN)
If Isvalid Then
Token = Twitter.OAuth_Token
TokenSecret = Twitter.OAuth_TokenSecret
End If
سيتم حفظهما كمان حدث مع المتغيران السابقين حيث انه عند التسجيل على تويتر كل مرة يتم استخدام الاربع متغيرات- Consumer
- Consumer secret
- Token
- Token Secret
- الإرسال
Twitter.AuthenticateWith(ConsumerKey, ConsumerSecret, Token, TokenSecret)
Twitter.Update("Hello World")
- قراءة التويتات على الـ Wall
Public Function ReadMsgs(ByVal User As String) As String
Dim TwMsgs As String
Twitter.AuthenticateWith(ConsumerKey, ConsumerSecret, Token, TokenSecret)
For Each tweet As TwitterStatus In Twitter.HomeTimeline
TwMsgs = TwMsgs & tweet.User.ScreenName & " : " & tweet.Text
Next
Return TwMsgs
End Function
استمتعوا ببرمجة تويتر واتمنى ان نرى تطبيقات جديدة ومبتكرة حيث ان تويتر مفتوح المصدر ونستطيع ملاحظة الكثير من التطبيقات الناجحة المبنية في الاساس على تويتر كمصدر مفتوح .
الأربعاء، 19 أكتوبر 2011
The Business Model النموذج التجاري
بشكل نظري وعملي يستخدم هذا التعبير رسمياً أو غير رسمياً بشكل واسع في توصيف جوانب الأعمال التجارية شاملاً الغرض والعروض والإستراتيجيات والبنية التحتية والهياكل التنظيمية والممارسات التجارية والعمليات التشغيلية والسياسات بشكل مختصر فهو يعطي صورة كاملة عن المنظمة ومن منظور رفيع المستوى .
بمجرد تاسيس العمل التجاري فان المؤسسة التجارية تقوم صراحةً او ضمناً بتوظيف نموذج اعمال خاص يصف التصميم او البنية المعمارية للآلية المستخدمة من أجل الحصول على القيمة .
و تاريخيا و مع مرور الوقت يستمر تطور نموذج الأعمال فظهر مع بدايات القرن العشرين نموذج The bait and hook business model الذي يمكن ترجمته كالتالي نموذج الطعم والخطاف !!
وهو يعتمد على تقديم منتج بسعر منخفض جداً او بسعر التكلفة واقل ( bait الطعم ) ثم يتم تعويضه عند اعادة استخدامه او مع توفير خدمات اخرى مرتبطة به ( hook الخطاف ) . وأشهر الامثلة على ذلك :
- الطابعة ( bait ) الحبر ( hook )
- برنامج القارئ Adobe Reader يوزع مجاناً ولكن مصمم البرنامج يتحصل على مئات الدولارات من تصميم وكتابة المستندات التي يتم قرائتها عن طريق القارئ .
ولكن ما يشغلني هنا هو النماذج التي تعتمد على تكنولوجيا المعلومات في عصرنا هذا الذي يتوفر فيه امكانيات جبارة لم تكن متوفرة في السابق فيمكنك الوصول لاكبر عدد من العملاء المستهدفين وما يطلق عليه مصطلح ( NICHE ) في اسرع وقت وبأقل تكلفة .
والفكرة تتلخص ببساطة في كيفية استغلال العدد الكبير الذي يمكنك ان تتواصل معه ( عن طريق الشبكات الإجتماعية مثلاً ) للحصول على افضل النتائج الممكنة .
ومن هنا تأتي الفكرة . شركة مثل مايكروسوفت كيف استغلت نظام تشغيلها الأشهر ( Windows ) عن طريق الكم الهائل من مستخدميه فنرى شركة مايكروسوفت تحقق عوائد كبيرة مثلاً عن طريق تدريب المستخدمين على استخدام برامج ( Microsoft Office ) وهذا تأثير غير مباشر نتيجة ضخامة شبكة مستخدمين ويندوز ، الآن نستطيع معرفة سبب تقاعس شركة مايكروسوفت عن حماية برامجها من القرصنة بشكل قوي !!
إذن تحديد نموذج اعمال لمنشأة ما بمثابة صناعة مستقلة بذاتها تقوم بإنتاج طرق للحصول على افضل عائد لمنتج هذه المنشأة .
فاصل ونعود
الاثنين، 13 يونيو 2011
أول عميل لبرنامج جلوب لشركات السياحة والسفر

1BoxOffice هي وكيل سياحة وسفر متخصص في تذاكر المباريات الرياضية بشكل عام سواء كانت كرة قدم او تنس ارضي او كرة سلة او غيره هذا بالإضافة الى تذاكر للأحداث المختلفة على مستوى العالم سواء كانت مهرجانات بكل انواعها او اجتماعات او معارض على مستوى العالم كله .
والآن مستعد كل الإستعداد للعميل رقم 2 إدعولي بالتوفيق ..
الأحد، 1 مايو 2011
تصميم برنامج مبيعات ومخازن
- جدول الأصناف .
- جدول التصنيفات . يخص التصنيف الذي يندرج تحته الصنف مثلاً أسمنت أبيض يندرج تحت تصنيف الأسمنت وهكذا .
- جدول المخازن . يخص المخازن التي تملكها الشركة أو المؤسسة .
وثلاث جداول أخرى تخص حركة المخزن :
- الوارد . يتم التسجيل فيه عن طريق سند إستلام المخزن .
- الصادر . في حالتنا هنا يتم التسجيل فيه مع كل صنف يباع عن طريق فاتورة المبيعات .
- المحجوز . يتم التسجيل فيه عن طريق سند حجز صنف كما سأوضح في الملف المرفق .
والآن الأمر بسيط جداً حتى نستطيع معرفة رصيد المخزن لصنف ما نتبع المعادلة التالية :
الوارد - الصادر - المحجوز = رصيد المخزن لصنف ما .
وتتم هذه المعادلة عن طريق البرمجة ،فعندما نحتاج لمعرفة رصيد صنف ما نستدعي الكود البرمجي بشرط الصنف والمخزن والتاريخ فيعطينا عن طريق المعادلة السابقة الرصيد لهذا الصنف . في النهاية أنا أستخدم قاعدة البيانات كوعاء أخزن فيه البيانات وبشكل خاص الأكسس .وأي تقارير أريدها أولدها عن طريق الكود فليس هناك داعي مثلاً لعمل جدول خاص لقائمة الدخل في قاعدة البيانات .. أتمنى أن تكون الفكرة وصلت .
أما فيما يخص تسعير المخزون فانا اتبع طريقة المتوسط المرجح ( Average ) كالتالي :
في حالة الوارد :
سعر المخزون = ( إجمالي تكلفة المخزن + إجمالي تكلفة الوارد ) ÷ ( إجمالي الكمية في المخزن + إجمالي الكمية الواردة )
وفي حالة الصادر :
سعر المخزون = ( إجمالي تكلفة المخزون - إجمالي تكلفة الصادر ) ÷ ( إجمالي الكمية في المخزن - إجمالي الكمية الصادرة )
* إجمالي الكمية الصادرة = الكمية الصادرة × السعر المتوسط المرجح ( لآخر عملية تقييم للمخزون عند آخر عملية شراء أو بيع كما سبق توضيحه )وهنا كود لأحد برامج المخازن من تصميمي .
