الجمعة، 14 سبتمبر 2012

free courses online in Arabic and English

there is a group of websites give free courses about computer science in English and in Arabic
khan Academy for computer science
Microsoft Partner in learning
TED-ED
w3schools Online Web Tutorials
Code Academy
Coursera -free online caurses
Udacity - free courses
Udemy
SkillShare -learn and teach
الدارين اكاديمي -كورسات مجانية على شبكة الانترنت
yahoo Research
ITOutBreak-كورسات مجانية
MITOpenCourseWare
OpenCulture - the best free educational media on the web
E-Learning Center
For Linux Development
GateWay Courses -free and useful courses
عالم اوبونتو
Ofok NGO -learn and share

International universities

Harvard University
Camberdge University
Oxford University
University of Queensland
University of Auckland
University of Washington
lancaster university
Learn Microsoft Project
Techmeme
PHP course in Arabic
Arabic RedHat Course
Official website For RedHat Courses
Free RedHat Course
Wonderful Website for free courses
Introduction to Data Mining
45 free online IT Courses
University of Prince Edward Island
Academic Earth
Graduation Projects
ALISON - free courses
Object-Oriented course from lynda.com_PartOne
Object-Oriented course from lynda.com_PartTwo
PC-World free Download
Good Website for IT news
Open Study - study and teach
Zarcony
MetaCafe - Video entertainment Engine

Lesson for Lightwave Tutorial "Graphics " l

Lightwave Tutorials
Samsung Developpers
الموقع الرسمي للمهندس احمد نظمي في هندسة الشبكات
Find Icon
Game Programming
Best Learn -Free Learn
كـــــتــــــــــب
arab Oracle User Group
الفريق العربي للبرمجة
Windows Phone Development Center

Robotics 

Let's Make Robots
EZ-Robot
My Robot Nation

For Ruby development

Rails Casts for ruby
Lecture Fox -free lectures
Stanford at iTunes
OpenYale Courses
brekeley free courses
o.c.w.consortium
edx - free courses
Connections - search for free courses
Learners Tv - huge website for free courses
subscribe for free computer science magazine
University of RIDDET
Free Management Library
Scitable
InvestoPedia
cornel university library
Directly of open access journal
Scribd
University of People
The new boston tutorials
Free tech Books
Wibit.net - awesome free technical courses
Opera Software for education
https://developer.mozilla.org/en-US/
Learn Code the hardway
Learn HTML & CSS in one easy to use guide.
For Fun - Learn Chess ;)
Ruby on Rails Tutorials
Code School
Learn Street for Coding
Ruby Learning Blog for Basics in Ruby
Awesome website for learning languages
Try Ruby
awesome application to learn Ruby
rubymonk - learn ruby today
Learn Ruby online
Ruby Forum
Ruby Exams
rubular
ruby-for-newbies
Ruby Tutorials
Ruby Learning
ruby docs
Ruby Docs
Ruby Conference Videos
Ruby Study Hall
Learn Ruby The Hard Way
Ruby Quiz
ShowMeDo Ruby Videos, Tutorials & Screencasts
Why's Guide to Ruby /
StackOverFlow Ruby
RubyOreilly net/
MacRuby
Ruby Motion
Ruby Gems
Learning Ruby
For Ruby Developpement


TEXT BOOKS
§  The Ruby Programming Language (O'Reilly), Yukihiro Matsumoto, David Flanaganhttp://shop.oreilly.com/product/9780596516178.do
§  Programming Ruby (Pragmatic Bookshelf), Dave Thomas, Chad Fowler, Andy Hunthttp://pragprog.com/book/ruby3/programming-ruby-1-9
§  Eloquent Ruby (Addison-Wesley), Russ Olsen - http://eloquentruby.com/

DEVELOPMENT TOOLS
§  Vim (Text Editor, OS independent) - http://www.vim.org/
§  GNU Emacs (Text Editor, OS independent) - http://www.gnu.org/software/emacs/
§  Sublime Text 2 (Text Editor, OS independent) - http://www.sublimetext.com/2
§  TextMate (Text Editor, Mac OS X) - https://github.com/textmate/textmate
§  Komodo (IDE, OS independent) - http://www.activestate.com/komodo-ide
§  Notepad++ (Text Editor, Windows) - http://notepad-plus-plus.org/
§  RubyMine (IDE, OS Independent) - http://www.jetbrains.com/ruby/

REFERENCES

الأربعاء، 14 مارس 2012

Artificial intelligence

This Post about TSP (travelling salesman problem) and missionaries and cannibals

1-هذا التطبيق يوضح  travelling salesman problem  وهو عبارة عن معرفة اكثر الطرق توفيرا واقلها تكلفة بين مجموعة م المدن بشرط عدم المرور على نفس المدينة مرتين 
كما يوضح   missionaries and cannibals وهو عبارة 3 بشريين و3 آكلي لحوم البشر والمطلوب توصيلهم من شط النهر الى الشط الآخر بحيث القارب لا يحمل الا اثنين وبحيث لا يكون عدد آكلي لحوم البشر اكبر من عدد الآدميين .

الشكل التالي يوضح بنية الكود للمشكلة ال Tsp
واجهة الرنامج

يتم اضافة نقط على ال picture box عن طريق الضغط عليها ثم بالضغط على start يبدا بالبحث عن اقصر path او بالكتابة داخل ملف XML  كدخل للبرنامج 

لتحميل الرنامج ك execution file 
لتحميل source البرنامج

الثلاثاء، 13 مارس 2012

كيفية اضافة frame جديد في ال windows form application


كيفية اضافة frame جديد في ال windows form application
1-    من قائمة  file -> New Project

2-    اختار Windows Form Application ثم ضع اسم للتطبيق

3-    اضغط double click على النافذة ...سوف يظهر لك صفحة الكود الخاصة بها

4-بالعودة الى صفحة ال design أضف من ال toolbox  أضف button

4-    من ايقونة ال Add new Item  
5-    اختار Windows Form

6-    نضغط على ال button  السابق اضافتة double click فتظهر الكود الخاص بال button

7-    نكتب بداخلها الكود التالي
Form2 form = new Form2();

            form.Show();

8-    اضغط على علامة ال لتشغيل البرنامج ثم اضغط على ال button تظهر الform الجديدة
لتحميل البرنامج اضغط هنا





السبت، 19 نوفمبر 2011

الثلاثاء، 1 نوفمبر 2011

lag compensation



Lag Compensation :”using Operational amplifier”


    
ü  Lag Compensation Techniques based on the root locus approach .
ü  Consider the problem of finding a suitable compensation network for the case where the system exhibits satisfactory transient-response characteristics but un satisfactory steady state characteristics .
ü  Compensation in this case essentially consists of increasing the open-loop gain without appreciably changing the transient response characteristics .
ü  That means that the root locus in the neighborhood of the dominant closed –loop poles shouldn’t be changed appreciably , but the open loop gain should by increased as much as needed .
ü  This can be accomplished if a lag compensator is put in cascade with the given feedforward transfer functions .
ü  To avoid an appreciable change in the root locus , the angle contribution of the lag network should be limited to a small amount .     


Applications :
Ø  lag compensators influence disciplines as varied as robotics, satellite control, automobile diagnostics, laser frequency stabilization, and many more. They are an important building block in analog control systems, and can also be used in digital control.
Design Procedures for lag compensation by the root-locus method :
1-      Draw the root locus plot for the uncompensated system whose open-loop transfer function Gc(s)
2-      Assume transfer function is

3-      Evaluate the static error constant in the problem.
4-      Determine the amount of increase in the static error constant .
5-      Determine the pole and zero of the lag compensator that produce the necessary increase in the particular static error .
6-      Draw new root-locus plot for compensated system.
7-      Adjust gain K of the compensator. 

الخميس، 9 يونيو 2011

OpenGl installation (Windows and visual studio)

The OpenGL graphics library compromises three main parts. The core part (gl.h, gl.lib and gl.dll), the utility part (glu.h, glu.lib and glu.dll) and the toolkit part which enable OpenGL to interact with the windows (glut.h, glut.lib and glut.dll). Normally, the first two parts are already installed on your windows machine by default. You need only to install the third part as explained below.
Download OpenGl utility tool kit (GLUT) from the internet. You can easily find it by searching "download glut for windows in Google". Here is a link for a new version of the utility:
http://www.xmission.com/~nate/glut.html.
Usually, there are two options: downloading the compiled binary files and download the source files, both in zipped files. In principle, we need the compiled binary files. Hence, we download the zipped file for the compiled glut named something like:
  1.  Glut.h
  2.  Glut32.lib
  3.  Glut32.dll
glut-3.7.6-bin.zip. By decompressing the zipped file, the following three files should be extracted. Note
The above three files must be placed in their proper locations on your system. The glut32.dll should be put in the system32 folder under the window folder on your hard desk. The glut.h should be copied in the include folder of the visual c. To find this folder follow the path: C:\Program Files\Microsoft Visual Studio 9.0\VC\include. Of course, this will differ according to the version of visual studio, and your installation location. It’s preferred that you create a folder named GL in the include folder and copy glut.h there. The library files glut32.lib should be copied in the library folder (C:\Program Files\Microsoft Visual Studio 9.0\VC\lib). If you have not visual studio, the free Visual C++ express editions can go.
: since the glut is unmanaged code, you should download the binary file that goes with your hardware. If you have hardware other than the familiar inter 64 systems you can find a version of the library for the hardware platform you use to run your windows on the web site: http://www.opengl.org/resources/libraries/glut/glut_downloads.php#windows. Note
system.
 After the preparation of your system, you can write graphics programs in visual studio by creating Visual C++ console programs and just include the glut.h file in the beginning of any source file that calls OpenGL but after the inclusion of the standard io library. Just use #include <GL/glut.h>.
This first page should be sufficient but more details are given below. Best wishes… Dr. Hamed Hemeda
More detailed procedure for the installation (windows, Visual C++)


  1. 1. Download GLUT

  2. 2. Unzip the file.

    1. a. Put the file "glut32.dll" into the system path.
    2. b. This can be in the same directory as your executable file.
    3. c. On Windows XP or earlier, this can be in "C:\WINDOWS\system32"
    4. d. Or you can create a directory like "C:\DLLs", put the file in this directory and change your system path to include this new directory.
    5. i. Do this by opening Control Panel -> System, clicking on "Advanced System Settings", followed by "Environment Variables", and editing the "Path" variable.
  3. 3. Put the file "glut.h" into the standard Visual C++ include directory

    1. a. (For Visual Studio 2010, this should be: "C:\Program Files\Microsoft SDKs\Windows\v7.0A\include\gl")
    2. b. (For Visual Studio 2008, this should be: "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\gl")
    3. c. (For Visual Studio 2005, this should be: "C:\Program Files\Microsoft Visual Studio.NET\Vc7\PlatformSDK\Include\gl")
    4. d. You've got the right directory if you see a copy of "gl.h"
  4. 4. Put the file "glut32.lib" into the standard Visual C++ library directory

    1. a. (For Visual Studio 2010, this should be: "C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib")
    2. b. (For Visual Studio 2008, this should be: "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib")
    3. c. (For Visual Studio 2005, this should be: "C:\Program Files\Microsoft Visual Studio.NET\Vc7\PlatformSDK\lib")
    4. d. There should be lots of .lib files here, including "opengl32.lib" and "glu32.lib".
  5. 5. Make sure your Visual C++ project links in the GLUT/gl/glu libraries. This is located in:

    1. a. Menu: "Project -> (your-project-name) Properties"
    2. b. Tab: "Configuration Properties -> Linker -> Input"
    3. c. Under "Additional Dependancies", add "glut32.lib glu32.lib opengl32.lib"
  6. 6. #include < GL/glut.h > in your program.

    1. a.
    Note: This needs to come after you #include < stdio.h > and < stdlib.h >.
    Writing graphics programs
    . You should install the latest graphics driver for your graphics card to get the most of the graphics