version controling
Version Control Systems or Source Control Systems are very important tool for any developer even if s/he is working alone !!
for a starter how about having a time machine for your code that will allow you to go back in time to any place in the history of your project coding if you are using version controlling you will be able to go to any previews versions (comits) you have made in the system. so that is a greate backup /restore functionality.
-
Easily Compare any two points in the history, or history with the current version , this is better than the time machine you can very easily know what have changed in any two versions of your code
Synchronization : the code will be automatically shared between you and other team members with much better & easier control and access than shared folders
Tracking : the code share and synchronization is done with full tracking of who did what (no one can blame you on their mistakes). and that is a million time better than shared folders cause every thing is tracked and protected (to the code lines level )- Branching : do you have created a big project which is
in production, and need to do small changes to make it usable on different environment , or on slightly different requirements? If yes most probably without version controlling you will do copy the whole project and create a new project and treat them as two different projects. But the fact is you will Need in some point of time to know what changes you have done in the first project two create the second one, or you will need change the new one back to the first one, or change the real system to have the extra features you have added in the second project, all these are possible in version controlling systems using branching feature.
these were some of the features of version controlling maybe in some of the coming posts i will do a comparision between different version controlling tools.
Voip
تعرف على تقنية VOIP
ما هو VOIP ؟
- هي إختصار لـ Voice Over Internet Protocol .
والمرادف لها بالعربية هو( الصوت عبر بروتوكول الأنترنت ) ، وهي تقنية حديثة الغرض منها الأتصال سـواءً إجــراء أو إسـتقبال المكالمات الهاتفية عبـر الشــبكة الداخليــة او الانترنت عن طريق إســتخدام بروتوكـول الأنترنت.
كيف تعمل هذه التقنية :
- عند إجراء مكالمة هاتفية بإستخدام هذه التقينة يتم تحويل الإشارة التناظرية إلى إشارة رقمية ومن ثم تشفيرها وتقسيمها إلى حزم بيانات وإرسالها عبر الأنترنت وهنا يتم التعامل مع الصوت كأي نوع من أنواع البيانات (Data) وبطريقة عكسية يتم فك التشفير وتحويل الإشارة الصوتية إلى تناظرية مرة أخرى ويتم تسليم المكالمة إلى نهاية النقطة بكل وضوح .
الإشارة التناظرية
الإشارةالرقمية
ماذا أحتاج لأستفيد من هذه التقنية :
1 – أنترنت السريع – Broadband Modem
2 – هاتف تقليدي + محو ل ( ATA )
+
- ( ATA ) Analog Telephone Adapter
جهاز يستخدم لتوصيل الهاتف التقليدي بالمودم DSL لإجراء المكالمات عن طريق إستخدام شبكة الأنترنت وميزة هذا الجهاز أنه أرخص من الهواتف التي تدعم تقنية VOIP والتي توصل مباشرة إلى الحاسوب عن طريق منفذ USB .
3 – هاتف يعمل بتقنية VOIP
نوع من الهواتف التي تدعم تقنية VOIP ويتصل مباشرة عبر منفذ USB للحاسوب
4- برنامج للإتصال مبنية على بروتوكول (SIP ) مثل : ) Skype )
- مثال من البرامج المجانية التي تستخدم للإتصال عبر الحاسوب بإستخدام سماعات الرأس وكارت الصوت وهناك برامج عديدة مجانية وبرامج يمكن شراؤها .
رسم توضيحي مبسط للأجهزة الموصلة :
شكل 1
- تحويل الصوت إلى إشـارة رقمية يعني تحولها إلى نوع من أنواع البيانات (Data ) المرسلة عبر الشبكة أو الأنترنت ومن هنا جاءت فكرت إندماج الشبكيتن المختلفتين تماماً شبكة الحاسب الآلي وشبكة الهاتف بحيث تصبح شبكة واحدة وتسـمى هذه العملية ( Convergence ) والتي أحدثت تقنية IP Telephony
رسم توضيحي لإندماج شبكتي الهاتف والحاسوب
تقنية IP Telephony :
- هي تقنية إرسال الإتصال الصوتي عبر الشبكة عن طريق إستخدام بروتوكول الانترنت .
- هي تقنية توفر خدمة الإتصال والوصول إلى جميع الموظفين سواءً في أماكن عملهم في مكاتب المبنى الرئيسي أو الفروع أو الذين يعملون عن بعد او الذين ينتقلون .
هناك أربع طرق مختلفة تتيح لك الاتصال بإستخدام تقنية VOIP :
- حاسوب إلى حاسوب :
أسهل الطرق وأكثرها شيوعاً لا تحتاج إلى دفع مبلغ إضافي للاتصال حتى لو كان الاتصال دولياً كل ما عليك هو إستخدام برنامج اتصال مجاني ويشترط ان يكون نفس البرنامج مع الطرف المراد الاتصال به إضافة إلى سماعات الرأس وكارت الصوت وخط الانترنت السريع DSL .
- حاسوب إلى هاتف :
هذه الخاصية تتيح لك الاتصال من الحاسوب بأي هاتف وهي تشبه طريقة الاتصال من حاسوب إلى حاسوب ويلزم برنامج مجاني للاتصال وربما هناك نسبة ضئيلة لتسعيرة المكالمة بالدقيقة حسب موفر الخدمة .
- هاتف إلى حاسوب :
بعض شركات الاتصال توفر أرقام خاصة وميزة هذه الأرقام انها تسمح بإجراء المكالمات والإتصال بالحواسيب شرط أن تستخدم نوع معين من البرامج لتبادل الاتصال بين الهاتف والحاسوب .
- هاتف إلى هاتف :
عن طريق بوابة (VOIP Gateway ) يمكنك الاتصال مباشرة بأي هاتف في العالم .
ماهي إيجابيات هذه التقنية :
1 - الاتصال الدولي المجاني بأي طرف حول العالم
2- التحدث بأكثر من طرف واحد وفي نفس الوقت
3- التكامل والتوافق بمعنى إمكانك المحادثة عبر الحاسوب والعمل في نفس الوقت مثلاً تصفح الانترنت والبريد الالكتروني أو العمل مع البرامج المختلفة .
4- المرونة والسهولة في أجراء المكالمات الهاتفية وهذه الخاصية مفيدة وعملية للموظفين الكثيري السفر كل ما هو مطلوب جهاز حاسوب وتوفر خدمة الانترنت النطاق العريض.
5- مميزات أخرى لا حصر لها (مثل البريد الصوتي-توجيه مكالمة –مكالمة في الإنتظار-إظهار بيانات المتصل-حظر الإتصال-خدمة عدم الإزعاج…. )
==========================
===========
أتمنى أني وفقت ولو بشئ يسير في توصيل المعلومة….
شكرا لصديقي خليل الزدجالي الذي كتب هذه المقالة
Read More
تعلم الجافا : ما هي البرمجة (Programming) ؟
ما هي البرمجة (Programming) ؟
البَرْمَجةُ هي مصدرٌ من الفِعل بَرْمَجَ ( يُبَرْمِجُ بَرْمَجَةً )،نعني بالبرمجةِ أن توضع خطوات وأوامر معينة لأداء غرض معين، ومجموع هذه الخطوات والأوامر تدعى برنامجاً(Program).
وعلى سبيل المثال برنامج يقوم بعمل عصير برتقال، هذا البرنامج بُرْمِجَ بأن يقوم بالخطوات التالية:
1- أحْضر كأس فارغاً نظيفاً.
2- ضع ملعقتين (حجمهما متوسط) من مسحوقِ عصيرِالبرتقال فيالكأس الفارغ.
3-أملاء الكأس بالماءالبارد.
4- حرِّك المزيج بواسطة الملعقة إلى أن يذوب مسحوق عصير البرتقال في الماء.
نتيجةً من هذا البرنامج هو كأس عصيربرتقال.
هذه الخطوات الأربع هي البرمجة التي بواسطتها يستطيع البرنامج عمل عصير البرتقال كما في مثالنا السابق.
طبعا هذا مجرد مثال للتوضيح و إلا حتى يستطيع الحاسوب بعمل عصير برتقال سيحتاج للكثير من الأدوات و الأوامر المختلفة و المعقدة
إذاً ما هي البرمجة في الحاسوب؟ وما هي لغات البرمجة؟
البرمجة في الحاسوب هي كتابة الخطوات البرمجية المطلوبة لأداء غرض معين كما في مثال برنامج عصير البرتقال، ولكن كيف يمكن للحاسوب أن يفهم هذه الخطوات التي يكتبها المبرمج!! وما هي اللغة التي يفهما الحاسوب وكيف يمكن مخاطبته بها ؟
اللغة التي يفهما الحاسوب تُعرف بِلُغَةْ البرمجةوهي:
لغة مصطنعة تكتب بها الأوامر التي يُطلب إلى الحاسب تنفيذها، وتتسم معظملغات البرمجة المستعملة الآن بأنها ذات تراكيب لغوية محدودة سينتاكس و دلالات (سيمانتكس ) ضيقة
ولا تتيح لغات البرمجة المصطنعة حرية التعبير كما في اللغات الطبيعية كالعربية والإنجليزية. (مجمع اللغة العربية).
الحاسوب عبارة عن جهاز رقمي لا يفهم - في الأساس - إلا شيئين 0 و1 (مرور تيار كهربائي1 أو عدمه 0).
ففي بدايات الحاسوب كان التخاطب معه مبنياً على رقمين (0 و1) والذييسمى بلغة الآلة
( Machine language ) وهي
Assembly Language
ومع إزدياد متطلبات الحاسوب وتوسع المشاريع المقامة عليه كان لا بد من عمل لغة أسهل في التعامل لأقرب من لغة الإنسان فكانت أول لغة برمجة من المستوى
العالي هي لغة فورتران( Fortran )
ومن ثم تطورت لغات البرمجة وأُدْخِلت فيها التعديلات والتسهيلات وهناك المئات من اللغات البرمجية المشهورة وغير المشهورة.
- Java
- C++
- Delphi
- C#
- Paython
- إلخ….
كتبها ودقق عليها كل من (حسن عمر المرهون ، خالد المعمري ، علي اللواتي)
Read Morepopular posts of OmanDev
Well this post should had came on the new year 1st Jan, but I am too lazy to do this kind of things in their time
, just now i felt like i am too late so lets do it.
In this post i will list the most popular posts of Omandev (based on google analytics most visited posts) not only for 2008, but also for its entire life cause Omandev started few months before 2008 specificlly in jul 2007. so this time i am covering all the period from jul 2007 til today.
Since the blog still don’t have a lot of posts, it has around 55 posts in english, and 24 posts in arabic, the top posts i will list will be 5 from the english posts and 2 arabic posts, so here we go.
- Quick find Algorithm : this post explains a quck find algorithm as was given to us in SQU Algorithm lectures
- Assembly Language – Shift Instructions :a very nice explanation by arkan of shift instructions in assembly language
- A Good Programmer : a greate piece of writting by saud on a very worthy topic about how should a good programmer be. this post has got the longest reading time from our visitors
- java GUI builder VE Matisse, Jigloo : the very first blog on omandev by me, it compares between the best three GUI editors of Java
- SQLTip2: how to display rows as columns : a simple tutorial on how to get cross table or pivot table kind of results in MYSQL using sql queries
in arabic blog
- Introduction to windows 7 features : simply listing few features of windows 7
- Technology future with organic light emitted diode : the most visited arabic post, it is by hassan on the future of organic light emitted diode applications.
أفضل تدوينات مطوروا عمان
في هذه التدوينة سأعرض افضل التدوينات ( حسب عدد زيارة الصفحة المسجلة في الجوجل اناليتيكس لدينا) لتدوينات المدونة لعام منذ بداية المدونة الذي كان قبل 2008 بعدة أشهر ،بالتحديد يوليو من 2007
كون المدونة مقسمة إلى مدونتين عربية و انجليزية و كون العربية تحتوي على بضع و عشرون تدوينة و الانجليزية تحتوي على بضع و خمسون تدوينة سأعرض افضل تدونتين للعربية و افضل خمس تدوينات للقسم الإنجليزي من المدونة
المدونة العربية
- ويندوز 7 : تعرض هذه التدوينة بعض الخصائص التي وعدت بها ميكرسوفت لنسختها الجديدة من الويندوز
- مستقبل التقنية مع الوصلة الثنائية الضوئية العضوية : تدوينة مميزة من حسن و هي أكثر تدوينة عربية زيارة في مدونتنا تتحدث عن التطبيقات المستقبلية المتوقعة للوصلة الثنائية الضوئية العضوية
المدونة الإنجليزية
- خوارزمية البحث السريع quick find : تتحدث التدوينة عن خوارزمية البحث السريع و تشرحها بالسي ++ كما تعلمناها بجامعة السلطان قابوس
- لغة الأسمبلي استخدام الـ shift instructions : شرح جميل من أركان عن كيفية استخام الشفت في الأسمبلي
- المبرمج الجيد : تدوينة جميلة جدا من سعود تعدد خصال المبرمج الناجح
- مقارنة بين المتيس و الجيغلو والفيجول ايديتور : و هي من اول تدوينات بالمدونة تقوم بالمقارنة بين اهم ثلاث برامج تصميم واجهات رسومية بالجافا
- استخراج القوائم من رفوف قاعدة البيانات : درس عن كيفية استخراج معلومات اضافية من جدول بقعاعدة البيانات و ذلك بجعل بعض قيم رفوفه اعمدة للجدول الناتج


