This document provides guidance on how to become a good software engineer. It discusses what programming is, different types of computer languages, popular programming majors, and how to learn software programming. The document recommends starting with online courses to learn programming basics and the integrated development environment. It also advises supplementing courses with books for a more comprehensive understanding and to develop an open mind. Community websites are recommended for discussions and problem solving help. The overall guidance is that both courses and books are important for learning, but courses are best to start as a beginner.
4.language expert rendering unicode text on ascii editor for indian languages...EditorJST
In this paper we introduce the Language Engine which addresses rendering of Unicode characters on a ASCII supportable editor. Unicode characters are related to Indian regional languages based on their character sets. With the application of Parse Engine, Language Engine and Rules Engine to identify the language and convert from Unicode to ASCII in the target editor to resolve rendering problem, also improvises file size reduction. Parse Engine parses the input text character by character and checks if it is a new text or already parsed. Inference Engine checks the Unicode character and identifies the language. Respective Language Engine is loaded with rules. Rules Engine identifies the corresponding ASCII text to be placed in output. Here Rules stored in Rules Engine are composed of XML formats and comes from manual entry. Input Unicode text can come from any source of input. Finally, the output composed from the output file is pasted on the ASCII editor with the installation of the font renders the correct text.
What is Programming Paradigm
Types of Programming Paradigm
What is web programming
How does it work
What are web programming languages
Module of Web Programming
HTML
CSS
JAVASCRIPT
PHP
ASP .NET
RUBY ON RAILS
JAVA
PYTHON
Programming languages helped us reach the moon and helped us invent new things in computer science, making our lives easier. Over the years, programming languages evolved with the help of open-source projects, companies, and the contributions of developers. Today there are plenty of programming languages for web apps development and ecommerce apps development.
ava and Python are two of the most popular and powerful programming languages of present time. Both
of them are Object-Oriented programming languages with unique advantages for developers and end
users. Given the features of Python and how it is related to emerging fields in computer science such as
Internet of Things, Python is considered a strong candidate of becoming the main programming language
for academia and industry in the near future. In this paper, we develop JPT, which is a translator that
converts Java code into Python. Our desktop application takes Java code as an input and translates it to
Python code using XML as an intermediate language. The translator enables this conversion instead of
having to rewrite the whole Python program from start. We address a number of cases where the
translation process is challenging and highlight cases where manual inspection is recommended.
Here i am sharing interview questions of HTML for similar kind of html interview questions you can refer this link
http://skillgun.com/html/interview-questions-and-answers
4.language expert rendering unicode text on ascii editor for indian languages...EditorJST
In this paper we introduce the Language Engine which addresses rendering of Unicode characters on a ASCII supportable editor. Unicode characters are related to Indian regional languages based on their character sets. With the application of Parse Engine, Language Engine and Rules Engine to identify the language and convert from Unicode to ASCII in the target editor to resolve rendering problem, also improvises file size reduction. Parse Engine parses the input text character by character and checks if it is a new text or already parsed. Inference Engine checks the Unicode character and identifies the language. Respective Language Engine is loaded with rules. Rules Engine identifies the corresponding ASCII text to be placed in output. Here Rules stored in Rules Engine are composed of XML formats and comes from manual entry. Input Unicode text can come from any source of input. Finally, the output composed from the output file is pasted on the ASCII editor with the installation of the font renders the correct text.
What is Programming Paradigm
Types of Programming Paradigm
What is web programming
How does it work
What are web programming languages
Module of Web Programming
HTML
CSS
JAVASCRIPT
PHP
ASP .NET
RUBY ON RAILS
JAVA
PYTHON
Programming languages helped us reach the moon and helped us invent new things in computer science, making our lives easier. Over the years, programming languages evolved with the help of open-source projects, companies, and the contributions of developers. Today there are plenty of programming languages for web apps development and ecommerce apps development.
ava and Python are two of the most popular and powerful programming languages of present time. Both
of them are Object-Oriented programming languages with unique advantages for developers and end
users. Given the features of Python and how it is related to emerging fields in computer science such as
Internet of Things, Python is considered a strong candidate of becoming the main programming language
for academia and industry in the near future. In this paper, we develop JPT, which is a translator that
converts Java code into Python. Our desktop application takes Java code as an input and translates it to
Python code using XML as an intermediate language. The translator enables this conversion instead of
having to rewrite the whole Python program from start. We address a number of cases where the
translation process is challenging and highlight cases where manual inspection is recommended.
Here i am sharing interview questions of HTML for similar kind of html interview questions you can refer this link
http://skillgun.com/html/interview-questions-and-answers
We attend iDempiere 2013 conference in Germany, Krefeld. We share ADempiere implementation experiences for other community members. The goal was to motivate other community members and sharing experiences.
Open Source ERP Technologies for Java Developerscboecking
PowerPoint presentation from an Austin JUG (java user's group) event in June. The purpose of the presentation is to help Java developers learn, use and extent ADemipere, a popular open source ERP.
Do you wish to gain thorough knowledge on the topic of computer coding and its numerous benefits? Continue to our blog for a quick lesson on what is coding. (Source URL: https://www.goodcore.co.uk/blog/what-is-coding/)
Types Of Coding Languages: A Complete Guide To Master Programmingcalltutors
Are you confused about types of coding languages? In this article, we have discussed everything about different types of programming languages in detail.
Remember your first glance at a screenful of computer code? It probably felt like reading another language. Some words may have looked familiar, such as “print” and “input,” but they were surrounded by symbols and numbers that looked completely new.
https://codelearning4.wordpress.com/
Are you responsible for developing satellite on-board software? Are you the Dutch government and you have to efficiently implement the public benefits law? Are you a healthcare startup, developing companion apps that help patients through a treatment? Are you an insurance company struggling to create new, and evolve existing products quickly to keep up with the market? These are all examples of organisations who have built their own domain-specific programming language to streamline the development of applications that have a non-trivial algorithmic core. All have built their languages with Jetbrains MPS, an open source language development tool optimized for ecosystems of collaborating languages with mixed graphical, textual, tabular and mathematical notations. This talk has four parts. I start by motivating the need for DSLs based on real-world examples, including the ones above. I will then present a few high-level design practices that guide our language development work. Third, I will develop a simple language extension to give you a feel for how MPS works. And finally, I will point you to things you can read to get you started with your own language development practice.
B.Pharm sem 2
Computer Applications in Pharmacy
Introduction to Introduction to HTML, XML,CSS and
Programming languages, introduction to web servers and Server
Products
Introduction to databases, MYSQL, MS ACCESS, Pharmacy Drug databaseIntroduction to HTML, XML,CSS and
Programming languages, introduction to web servers and Server
Products
Introduction to databases, MYSQL, MS ACCESS, Pharmacy Drug database, XML,CSS and
Programming languages, introduction to web servers and Server
Products
Introduction to databases, MYSQL, MS ACCESS, Pharmacy Drug database
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Honest Reviews of Tim Han LMA Course Program.pptxtimhan337
Personal development courses are widely available today, with each one promising life-changing outcomes. Tim Han’s Life Mastery Achievers (LMA) Course has drawn a lot of interest. In addition to offering my frank assessment of Success Insider’s LMA Course, this piece examines the course’s effects via a variety of Tim Han LMA course reviews and Success Insider comments.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
1. Your Guide to be a
Software Engineer
How to start software engineering in a good way
Many of us want to be a programmer, but they don’t
know How? or where to Start? And what to Learn?
And even what are the resources for learning?
Here you will find all the answers to your Questions
Ahmed Mater
Introduction to Programming
“Everybody in this country should learn how to program a computer
because it teaches you how to think” Steve Jobs 1955-2011
2. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
The Content of the Speech:
1. What is Programming?
2. What is the language of the Computer?
3. The Different types of Computer Languages:
1. Programming Languages
2. Markup languages
3. Style Sheets
4. Scripting Languages
5. Query Languages
6. Data Exchanging Languages
4. Types of the Programming Languages:
1. Machine Language
2. Assembly Language
3. Low-Level Languages
4. High-Level Languages
5. The Main Majors of Programming:
1. Desktop Applications
2. Web Development
3. Mobile Applications
4. Game Programming
5. System Programming
6. Structured vs Object-Oriented Programming:
7. How to Learn Software Programming:
1. The English Language
2. Watching Courses
3. Reading Books and References
4. Which One to start with? (Courses or Books)
5. The Communities Websites
6. The Tutorial Websites
7. The Language Documentation
8. Getting Experience from the Experts and Professionals
9. The Online Judge and Problem Solving
10. Finally Where to start? What to learn first?
8. How to write a Code for a Program?
1. Defining the Problem
2. Planning the Problem
3. Coding the Program
4. Testing the Program
5. Documenting the Code
3. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
9. What to focus on when you start learning software?
1. Perform the functionality
2. How to write a Readable Source Code
3. How to use the Debugger tool
4. The Algorithm of the Code
5. How to use Libraries in your code
10. The Academic Courses in College
1. Visual Basic
2. C Language Programming
3. C++ or Java Programming
4. Mathematics
5. Electronics
6. Digital Logic Design
7. Computer Organization and Architecture
8. Algorithms
9. Data Structure
10. Operating Systems
11. Computer Networks
12. Artificial Intelligence
13. Databases
14. Digital Control Systems
11. The Main Topics you can find in any Programming Language:
1. The Basics of the Language:
2. The Object-Oriented Programming:
3. I/O files (Binary or Text)
4. Collections, Generics and Data Structures
5. Database Connection
6. Server-Side Programming & Web Services
7. Multi-Threading and Parallel Programming
8. Handling Exceptions
9. Graphical User Interface (GUI)
10.Graphic Design (2D)
12. The Recommended Courses and Books
13. The Recommended Professionals
14. My Contacts (if you need any advice, Don’t hesitate to ask)
4. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
1. So what is Programming?
Programming is all about a problem in our life and we think about a way to solve it.
But in an academic perspective it’s about some steps which we call instructions to solve the problem.
Ex: How to go from here to the gas station:
1. Go ahead in this road for 1m
2. Take the first turn to the left
3. Then go straight and pass the first two turns
4. And take the third turn to the right
5. Finally you will find the gas station in the front
These steps are called an Algorithm to solve the problem and we will talk about it later on in the
part of the Academic Subjects, but we can notice here that this algorithm is written in our native
language which may be English or Arabic, but can the computer understand our language?
Of course Not!!!! Which lead us to another question.
2. What is the language of the Computer?
Computer actually can understand only 2 numbers which we call them the Binary Digits (bits)
and this Language is called the Machine Language, but there are more other Types of Languages that
the computer can understand which are more advanced than the 0s and 1s.
3. So what are the Different types of Computer Languages?
1) Programming Languages: They are the Languages that talk to the computer directly
either on the Hardware level directly such as (Machine Language and Assembly) or on the
Software Level (Operating System) such as (COBOL, PASCAL, C, C++, Java, Python and
C#)
2) Markup languages: They are concerned with the structure of the Web pages, as telling the
web browser how to display the Webpages (Ex: they specify the Headers, Paragraphs,
Images and more other things in the web page to the browser), and also you have to know
that the HTML is the Markup Language for the web pages, but the XML is used to structure
Applications such as those developed in C# and in Java for Android (Ex: It says that there is
a button here and a text box there and so on)
HyperText Markup Language (HTML and XHTML and HTML5)
eXtensible Markup Language (XML)
3) Style Sheets: It is concerned with the beauty of the website which says (Ex: This Header
will be in this font, that font size and this color and so on), (another Ex: This border will be
with a specific thickness and has a margin of this value and so on), also you may notice that
some buttons change when you move your mouse over them this is also done by the Style
Sheets.
Both of the Markup and Style-Sheets are called Front-End of a Website.
Cascading Style Sheets (CSS & CSS3)
4) Scripting Languages: Those are the Languages of the servers, they are used to give
functionalities for the websites (Ex: comparing the username and password entered in a
website with the database and reply to the user), this is called a Server-Side Programming
at the Back-End of the Website.
5. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
But the JavaScript is a little bit different than the other as it runs on the Web Browser not a
Server and it’s used to give life to the Web pages and make it more interactive with the user
by making the HTML more Dynamic to be called DHTML.
Do more things which you can notice when you search in google and you see the results
before clicking on the search button this is called the AJAX where the JavaScript
communicate with the Server and retrieve the results from the database and display them at
the same time.
Now the JavaScript has ready Libraries that you can use directly without rewriting them from
scratch such as JQuery.
PHP Hypertext Preprocessor (PHP)
Ruby on Rails
Python
JavaScript and JQuery
1. Document Object Model (DOM)
2. Asynchronous JavaScript and XML (AJAX)
5) Query Languages: They are the languages associated with the Database which are used
for dealing with databases by inserting or retrieving or delete or update the data.
Structured Query Language (SQL)
Procedural Language/Structured Query Language (PL/SQL)
XQuery and XPath (They are related to the XML)
6) Data Exchanging Languages: They are languages used to send data over the internet in
a form a structured message for example: (for the message in JSON, the data are values
associated with keys { key : value }), unlike (for the message in XML, where data is between
Tags <Tag> Data </Tag>)
JavaScript Object Notation (JSON)
eXtensible Markup Language (XML)
4. The Programming Languages:
1) Machine Language: This is the very basic language that the computer can understand or
to be more precise is what any machine or hardware can understand.
It consists of 2 digits (0 and 1) which are the representation of switching on and off a
transistor or an electronic switch in a Logic circuit, it’s a very complicated language and used
only for the Digital Logic Design.
ex: to add 2 numbers the instruction may be (0100 00 0010 1100)
2) Assembly Language: This language is more developed than the Machine Language as it
uses English words as codes instead of numbers to perform the operations such as (STO:
Store in Memory) (ADD: to add numbers) and more others. This is easier than using (1s and
0s) to write a program.
ex: to add 2 numbers which are 5 and 6 then print the result
STO R0 5 R0 is a Register (Temporary storage)
ADD R0 6
PRT R0
6. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
3) Low-Level Languages: They are languages which are more developed than the
Assembly and the Machine Language, they use also the English words for instructions
(Ex: printf(): to o/p on the console) and symbols for operations (Ex: 3+2).
It’s simpler than Assembly, as some operations may need several lines of Codes in
Assembly which can be executed in only one statement in C Language.
Ex: to add 2 numbers, 5 and 6 then print the result ( printf(“%d”, (2+5) ); )
4) High-Level Languages: These are the most advanced Languages of them at all, they
support what is known as OOP (Object Oriented Programming) - and we’ll talk about it later-,
these languages can perform more advanced tasks like Network Development, Designing an
Application with GUI (Graphical User Interface), Database Management and report
generation and more other advanced stuff.
Examples of these Languages are Java, Python, C# and more other.
We have to know that The Machine Language is closer to the Hardware of the Computer and as
we go higher from the Assembly to the Low-Level to the High-Level the more we get far from the
Hardware.
And also the more we got far from the Hardware the more advanced stuff we can perform and
the slower the program will be. (For example: the program developed in C is hard to be coded but
faster than the program coded in java).
5. What are the Majors of Programming?
1) Desktop Applications: In which the programmer develops an application to run on a
desktop computer without using the internet like (MS Word or Notepad or AutoCAD), may be
application for small business such as an Accounting Application for a Mall, and this could be
accomplished by high-level Language such as: Java or C# or Python with the help of a
Database (if needed) such as MySQL or SQL Server or any other DB.
2) Web Development: In which the programmer develops an application to run on a server
so as a user, I will need access to the internet so I can use it, also to design a Web site with
many pages and services, and this could be accomplished using a Markup Language such
as HTML and Style Sheets such as CSS and a Scripting Language such as PHP or
JavaScript or may be a Programming Language such as Java or C# or Python, also with a
Database Management System (if needed) such as MySQL or PostgreSQL
3) Mobile Applications: In which the programmer develops an application to run on a mobile
platform (such as Android or Windows Phone or iOS) and devices such as Tablets or TVs.
But For each platform we use different Language and a different IDE
For Android you can use Java as a Language and Android Studio as an IDE
For Windows Phone you can use C# as a Language and MS Visual Studio as an IDE
For iOS you can use Objective-C or Swift as a Language and Xcode or Cocoa as an IDE.
4) Game Programming: In which the programmer develops Games and Graphical animated
applications, this major may be one of the difficult majors as it need to develop in a low-level
languages such as C++ as it runs faster and more efficient, it also require a high degree of
technical proficiency, (but trust me it’s fun to develop games)
You can also develop games using Java or Python and Web Games using HTML5 and JavaScript,
but the efficient games are developed in C++.
7. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
5) System Programming: In which the programmer write codes in a low-level language that
will run on a piece of hardware (such as: programming a Micro-Processor to perform a
specific task) so it need to be fast and efficient.
Also for a big project we could call it an Operating System of the Hardware
The most common used Language in this Major are C++ and C Languages
6. Structured vs Object-Oriented Programming:
During your career in programming you will encounter these two terms and you have to know
the difference between them:
1) Structured Programming: This is an old approach used in the Low-Level Languages
such as C & COBOL, this approach focuses on the process and the functionality more than
the Data, as you will see that the application programmed in C is a set of blocks of codes
called functions and there is one main block called main() function that uses the other blocks.
2) Object-Oriented Programming: this is a new programming approach used in the High-
Level Languages such as C++, C#, Python, Java, and this approach focuses on the Data
and the functionalities that works on this data, and encapsulate them in one container called
Class, so the application programmed in Java will be a set of Classes each one of them is
concerned with a specific topic, (Ex: Database Class that will deal with the database for the
insertion and retrieval of data) another (Ex: Networking Class that will deal with the data
from a web site or sending data to a server) and so on.
7. How to Learn Software Programming?
Before anything, we have to know that the Computer Science Major is one of the hardest Majors
in the working careers, but on the other hand It’s considered one of the highest and well-paid
compared to other careers, and this because The CS Major is developing every day and more
technologies are introduced, and the more technologies you learn, the more you will get paid for
your career, and beside the Money if you are interested in puzzles and solving problems, then you
are in the right place and I wish you good luck in the Future.
Now you will know how to learn through some Points and I will recommend some good websites
and YouTube Channels for you:
1) The English Language: We all know that the Computer and the Computer Languages are
developed by the EU and US scientists so most of the good resources to study Computer
Science are in English Language, so My first advice is to start learning English that will help
you watch efficient courses and read good books and also you can share on the discussions
on the programming sites, understand them and benefit from their knowledge.
Recommended resources:
1. EngVid – YouTube Channel: http://bit.ly/1IyDSRl
2. English Grammar - Al Darayn Academy : http://bit.ly/1Kqziaf
3. English Beginner - Al Darayn Academy : http://bit.ly/1Di0SqW
4. Mr Ehab Ramzy: http://on.fb.me/1JkbgPy
5. Mr Abdullah Amer: http://on.fb.me/1IoppGl
6. Ahmed Mater – How to learn English: http://on.fb.me/1N5SpYv
8. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
2) Watching Courses: You will notice that the instructor in the course will focus on how to
work on the IDE (the program for writing the code) and will teach you the main and most
used statements of Codes, and he will focus on the working and practical side.
3) Reading Books and References: The writer of the book will teach you every single
information about the topic even if they are additional or rarely used and to be good in any
CS major you have to read books or at least have a reference so you can revise it when you
need, This will lead us to the next Question?
4) Which One to start with? (Courses or Books)
We have to know that in our learning journey, we will definitely need both the courses
and books to improve our skills and learn more technologies and languages.
but as a Start and if you are beginner or know nothing about programming, then you have to
focus on learning through courses as they will be easy for you at the beginning and will focus
on the important topics and practicing on the IDE.
And after one or two courses you have to go for additional information through books.
and One of the most good benefits of the books are that they will make you Open-minded
and think in different ways and face more problems and some books introduce case studies
from the real life.
5) The Communities Websites: As we mentioned before that reading is one of the main
methods to learn, another resource is the community Websites that offer discussions about
programming and the problems facing the juniors.
So how this websites works? And how you can benefit from them?
Every one of us will face many problems during his career of programming and also
will have questions that he can’t find their answers in Courses or Books.
Now there are websites that offer a very helpful service in which you can post your
question and there are some other experts in the field will see your question and
answer it, and you will try the answers given and for the correct answer you will
confirm it.
These Websites offer their services for free and there is great number of experts and
professionals devoting their time to see the questions and answering them and the
websites organize everything and mark the questions if they have been answered or
still not answered, so people can easily search through the Website.
Now for you as a beginner in the field when you face any problem try to search for the
answers on these websites and read about every one’s experience and the answers
and try the solutions, and when you become an expert don’t forget to help the juniors.
Recommended Websites:
1. Stack Over Flow: http://bit.ly/1H6BvGw
2. Reddit : http://bit.ly/1Kx8cSB
3. Code Project: http://bit.ly/1Kx8nxl
4. Site Point: http://bit.ly/1Kx8qsV
5. DZone: http://bit.ly/1Kx8Ak5
6. Bytes: http://bit.ly/1Kx8ARa
9. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
6) The Tutorial Websites: These are more like the books but they are a little simpler, these
websites offer you a simple written tutorials with some code samples and some written
illustration of the Language topics.
As you are going to be a programmer you don’t have to remember everything, on the other
hand you need to have more other resources some may be big references for big issues and
big problems which are Books and other simple resources for fast remembering a simple
information, and these Tutorial Websites comes in handy for that.
Recommended Websites:
1. Tutorials Point: http://bit.ly/1IXph0Y
2. C plus plus: http://bit.ly/1UmeI0m
3. C Programming: http://bit.ly/1G0xVKi
4. Mozilla MDN: http://mzl.la/1ggGbRr
5. W3SchoolCode Project: http://bit.ly/1G0xVKj
7) The Language Documentation: For every Computer Language you will find an official
website where you can find the Libraries of the language and the different versions and the
most of them that you have to focus on is the Documentation of the Language, and if you
don’t know what the documentation is? Well here is the answer, it’s the syntax of the
language including the functions and classes (if it’s an OOP language), and for every class
and function you find a simple description of what does the function do? And what is its
inputs and its output? And more other helpful information.
These are called the Libraries and the descriptions are called the Documentation.
Recommended Websites:
1. Python Documentation: http://bit.ly/1Kx9ltr
2. Java Documentation: https://docs.oracle.com/javase/7/docs/api/
3. C# Documentation: http://bit.ly/1Kx9Tj6
8) Getting Experience from the Experts: in your career you will meet many other people
who have more experience than you in the field, and my advice to you is to ask them and
gain as much experience as you can from them, also try to see how they start their career
and how they got their experience, also try to see their codes - if they are open source and
available to you - and try to simulate them and see how they write and how they think.
In our field don’t be shy, if you are stuck in a middle of something try to search for a
solution - especially in the Community Websites - and if you don’t get your answer, ask
others who have more experience and show them what you have got from searching
and they will sure help you and show you what is missing.
Another advice don’t depend on other to solve your problems and write your codes, or
you will end up know nothing, you will have codes that aren’t yours and you couldn’t
even write them again on your own.
Searching for a solution of a problem will help you see different thinking ways of
different peoples and this will enhance your thinking skills, and your experience will
increase, unlike other people who don’t search before asking, they got only one
answer and in an easy way, and believe me the easy you got the answer the faster
you will forget it, So Search for the information if you want to be good in your field.
10. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
9) The Online Judge and Problem Solving: There are many websites that offer too many
problems for you so you can think about the solutions, practice and apply what you have
learned before, and the problems are categorized and there are highly advanced problems
so you can practice the algorithms you have learned too.
Recommended Websites:
1. Code forces : http://bit.ly/1KxasJA
2. Hacker Rank: http://bit.ly/1KxaDVt
3. A2oj: http://bit.ly/1KxayAV
4. Timus Online Judge: http://acm.timus.ru/
5. UVA Online Judge: http://bit.ly/1KxaPnD
10) So Where to start? and What to learn first?
We have spoken before about the majors of the Programming and Software, and you
have to choose one of these majors to work on and continue your career, but the most of us
don’t know much about the major and want to take some time to choose the major.
But at the same time you don’t have to take so long in thinking and don’t waste your time
during thinking, and my advice is to start learning English with a general programming course
to learn the initial codes and take a general look on the programming language.
Recommended Courses:
1. Lynda - Foundation of Programming: Fundamentals: http://bit.ly/1zIQSol
2. Dr. Ahmed Mohamed El Said - C++ Programming: http://bit.ly/1zGy8kR
3. NU – Islamabad – CS201 Introduction to Programming: http://bit.ly/1TLtv53
8. How to write a Code of a Program?
When you have a problem and you want to make an application to solve this problem then
you have to follow these 5 main steps in order to make a good application
1) Defining the Problem: Ask yourself what is the problem? (May be searching for a solution
to a Mathematical Equations) and try to perform step (b) which is planning this problem, but if
it’s difficult to be planned, you can break it into smaller problems and solve every problem
alone, and this technique is called Divide-and-Conquer.
2) Planning the Problem: This may be done by either two ways
(Drawing a Flow-Chart): which is a set of shapes (circles, squares, … so on) which
represent the flow of the program step by step, or
(Writing a Pseudocode): which is writing the steps that the computer has to follow in order to
perform the task and they are written in any Natural Language (English or Arabic).
3) Coding the Program: This is about transforming the simple sentences of the pseudocode
into instructions in any programming Language.
4) Testing the Program: After coding the program you have to try it and see the result, most
of the programs don’t give correct results from the first time so you have to see where is the
problem? and try to fix it out.
5) Documenting the Program: it’s about writing a detailed description about the project, and
it may include the comments in the code, also the Flow-Chart and the Pseudocode of the
Program, and this is an important step in programming procedure as it helps the programmer
to remember everything about the project in the future.
11. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
9. What to focus on when you start learning
1) Perform the functionality: You have to practice on solving problems and try as many as
you can while learning, also try to code these solutions and you have to know that each
problem may have many possible solutions, some of them are better than the other, so you
can try to solve it and improve your solution in the future.
2) How to write a Readable Source Code: After some time of learning how to program
and get used to face many problems and solve them, try to simulate the codes of the
professionals (Ex: in the naming of variables and the arrangement of the code), this is very
important specially for the big companies where you have to work on a project with many
engineers and coders and you don’t have to explain everything in code for them because
there are conventions and standards all of them follow so they can easily understand each
other.
3) How to use the Debugger tool: When you code a problem you will face some errors
(logical errors), and those are hard to find especially if you have an infinite loop in your
program, so there are some tools that can help you to follow the execution of your application
and in every step you can see the values of the variables and you can find the step where the
code fails and solve it, this tool is called The Debugger, and you must learn it.
4) The Algorithm of the Code: As I said in the first point, we have to face many problems
and try to solve them, and each problem may have many solutions and some of them are
better than the other and you have to try solving with the better solution.
The Algorithm of the code means the steps to solve the problems. You have to know that
there are some famous problems that have a good solutions (Ex: finding the shortest path in
a map) this can be accomplished through many algorithms and each of them has its own
properties, so you have to study algorithms and make good use of it in your project
5) How to use Libraries in your code: Now the programming languages offers you a ready
codes to use instead of writing from scratch, and this codes are already enhanced, safe and
faster in execution and with them you can accomplish more things and highly advanced
things.
10. The Academic Courses in College:
You will spend 4 or 5 years in your college either you are a Computer and Informatics student or
Engineering student and during this time you will study some practical subjects and other are more
academic than practical, so you have to know how to make good use of each subject and how to
enhance your skills during your time of study in the college.
Another point, may be some of you think that the study in college is humble and the subjects are
very simple and naïve compared to what you will work with in a company, but you have to know that
it’s not that bad and my advice to you is to have your resources to study from and be step-ahead
from the college and try to improve yourself through Courses and Books.
Finally and since I’m in Engineering College, I will talk about the subjects we study in the Computer
and Systems Dept. :
1) Visual Basic: This subject will introduce you to the programming and will focus on the GUI
of the program and a little about the functionality, this may be a good start but it’s not
practical at all, and not used in any company, it’s just for academics and to do simple stuff.
12. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
2) C Programming: It’s a practical subject where you will have your true first steps in
programming in the college, and whatever your major is, The C Language will benefit you of
course, It will focus on the basics of the programming.
Recommended Courses:
1. The New Boston – C Language: http://bit.ly/1IoLNR2
2. Learning Lad – C Language: http://bit.ly/1K1qoUc
3. Dr. Ahmed Sallam – C Language: http://bit.ly/1K1qoUc
Recommended Books:
1. C – The Complete Reference: http://amzn.to/1TLo5an
2. C – Primer Plus : http://amzn.to/1TLpptV
3. Head first C: http://amzn.to/1TLpkGm
3) C++ or Java Programming: They are very practical subjects that you will use in your
work at a company for sure (may be C++ isn’t widely used, unlike Java), This subject will
revise the basics you have studied in C (better for you to revise them on your own) and will
continue in the Object-Oriented Programming where you will study the classes,
encapsulations, Inheritance, and may be Polymorphism and some other advanced stuff.
Recommended C++ Courses:
1. Dr. Ahmed Mohamed El Said - C++ Programming: http://bit.ly/1zGy8kR
2. Eng. Mostafa Saad - C++ Programming: http://bit.ly/1P7eV7O
3. The New Boston - C++ Programming: http://bit.ly/1IoMU3g
4. The New Boston - C++ GUI with Qt: http://bit.ly/1IoMpWW
5. Learning Lad - C++ Course: http://bit.ly/1K1qP0S
Recommended Java Courses:
1. Lynda - Java Essential Training: http://bit.ly/1bzea56
2. Lynda - Java Advanced Training: http://bit.ly/1JThqqH
3. The New Boston - Java Beginner: http://bit.ly/1IoMU3g
4. The New Boston - Java Intermediate: http://bit.ly/1IoMpWW
5. Eng Ahmed Helal - J2SE: http://bit.ly/1KxfuGd
6. Eng Mohamed Essa - Java Programming: http://bit.ly/1JJ7Tnx
Recommended Books:
1. C++ – The Complete Reference: http://amzn.to/1TLo9XI
2. C++ Primer Plus: http://amzn.to/1TLovgS
3. The C++ Programming Language: http://amzn.to/1TLos4I
4. Java The Complete Reference: http://amzn.to/1TLoCcp
5. Thinking in Java: http://amzn.to/1TLoMQO
6. Head first Java: http://amzn.to/1TLoFoz
4) Mathematics: During your 5 years in the college of Engineering, you will study Math, and
mayn’t be all the problems are solved by Math, but Studying Math enhances your thinking
skills and some of the solutions can but enhanced by Mathematics, so don’t ignore it.
13. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
5) Electronics: As an Electric Engineer, you will study Electric Circuit and Electronics, each in
a separate subject but for a software engineer you have to learn electronics which is the main
ingredient of the Computer Hardware, and this will help you in many ways first, you will learn
how the computer works and how this hardware work, second it will help you to understand
How the Embedded Systems work and will pave the road to The Digital Logic Design.
The Main Components you will study are (Diode and Transistors)
6) Digital Logic Design: This may be one of the interesting subjects you will study, and you
will learn many things about how the machines work. Also you will learn more about the
Machine Language and what does the 1s and 0s actually mean and how these 2 numbers
can do different things. You will also learn how to design Logic Circuits, but they will be on
paper not practical, so my advice to you is to try and buy some components and try to
connect them and apply what you have learn in action, Trust me it’ll be more interesting than
what do you think.
Recommended Courses and Books:
1. NPTEL – Digital Circuit & Systems Design: http://bit.ly/1TLq3Yc
2. NU – Islamabad - CS 302 – Digital Logic Design: http://bit.ly/1TLquBU
3. Digital Design Principles and Practices : http://amzn.to/1TLruG1
7) Computer Organization and Architecture: This is one of the most important subjects
that you will study in the college, you will learn how the computer works as a total system,
you will study the CPU, ALU, Main Memory, Cache, I/O Devices, and more other things, you
won’t just learn how they work, but you will study them in detail and you will also study some
codes in the Assembly Language and how it can be executed by the Processor.
This subject is very very important if you are going to work in the field of the Embedded
Systems as you will learn how to design a system and how the components will work
together, and if you are going to work as a pure software it will be good to know how the
computer works in detail.
Recommended Courses and Books:
1. Dr Ahmed Sallam – Old x86 Assembly Language: http://bit.ly/1NerEOB
2. Dr Ahmed Sallam –x86 Assembly Language: http://bit.ly/1NerI0O
3. NU – Islamabad – CS401 - Computer Arch. and Assembly: http://bit.ly/1TLrW7h
4. NPTEL - Computer Organization: http://bit.ly/1KviIJS
5. Bilkent University - CS-224 Computer Organization : http://bit.ly/1KviQsS
6. Coursera - Computer Architecture: http://bit.ly/1Kvk4V5
7. Computer Organization and Architecture William Stallings: http://amzn.to/1TLsslG
8) Algorithms: This is one of the interesting subjects you will study in college, but let me tell
you more about Algorithms and what it is about? First the word Algorithm is named after the
Arabic scientist Muhammad ibn Musa al-Khwarizmi the greatest mathematician who
founded the science of Algebra, and while he was working on Algebra, he noticed that there
are some problems can be solved by some constant steps, so he worked on collecting every
problem and its own set of steps to solve it, and by the time when the science of
programming is founded, each set of the steps to solve a problem in programming is called
an Algorithm for that problem, there can be more than one algorithm for each problem.
In this subject, you will learn how to study the Algorithm and How to specify which algorithm
is faster, which is consuming more memory storage and this comparison will help you specify
14. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
which algorithm is suitable for your application.
You will also study many algorithms to solve some problems (such as Sorting, Searching,
Compression, and more other problems) and notice that each of these problems can be
solved by several algorithms and each has its own properties.
Recommended Courses and Books:
1. NU – Islamabad – CS502 - Fundamentals of Algorithms: http://bit.ly/1TLrYvO
2. Coursera - Algorithms: Design and Analysis, Part 1 : http://bit.ly/1fYY1HW
3. Coursera - Algorithms: Design and Analysis, Part 2 : http://bit.ly/1fYY72h
4. Data Structure and Algorithms in Java: http://amzn.to/1TLtcam
5. Introduction to Algorithms: http://amzn.to/1TLtiyY
9) Data Structure: Sometimes it’s attached to the Algorithm, but it’s a different subject. This
Subject is about how you can manipulate data in Memory or Database, you will study
different ways to store and retrieve data, and other functions to manipulate Data (Ex: The
Stack DS which works with FILO – where the first element enters an array will be the last to
be retrieved) (another Ex: The Queue DS which works with FIFO – where the first element
enters the array will be the first element to be retrieved) and more other Data Structures, and
you will study each one and its properties and how they work so you can choose a suitable
one for your project.
Recommended Courses and Books:
1. NU – Islamabad – CS301 Data Structures: http://bit.ly/1TLs9aD
2. UC Berkeley - CS61B - Data Structures: http://bit.ly/1TLxNJC
3. Data Structure and Algorithms in Java: http://amzn.to/1TLtcam
10) Operating Systems: It’s one of the important subjects, where you will study how the
computer hardware executes the applications and what is going on behind the scene when
you for example double click on a program on your desktop, you will also learn about some
important terms such as Threads, Parallel execution of programs, Client-Server
communications and How the I/O devices works.
The OS is considered the interface between the Hardware and the User so you will learn
what your simple clicks do inside the Hardware and you How the OS manages all the
programs running and How the Processor executing them.
This subject is associated with the Computer Organization as OS manages the working of
the hardware and introduce it to the user in a friendly manner, and it’s very important to
understand the Operating Systems if you want to design large Embedded System that will
perform many tasks.
Recommended Courses and Books:
1. NU - Islamabad - Operating Systems: http://bit.ly/1TLs06X
2. Operating Systems by P.K.Biswas Sir: http://bit.ly/1KvjXZF
3. Dr Ahmed Sallam - Old Operating Systems: http://bit.ly/1NerDtZ
4. Dr Ahmed Sallam - Operating Systems: http://bit.ly/1NerDdw
5. Operating System Concepts: http://amzn.to/1TLxVJ8
11) Computer Networks: Another interesting subject where you will study what is the internet
and how it works? Also you will understand how the data are transmitted over the internet,
and how can two applications communicate with each other, and you will study some devices
15. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
such as: Routers, Switches, Bridges and Hubs, and how the networks are constructed, and
many other interesting things.
This Subject is considered the basics of the IT Major in Computer Science, and if you are
going to do programming for a Client-Server programming then you have to understand How
the network works? And how the data are transferred through the network?
It’s also very helpful in the field of the Internet of Things (IoT).
Recommended Courses and Books:
1. Coursera – Computer Networks: http://bit.ly/1TLxYoi
2. NTPEL – Computer Networks: http://bit.ly/1TLy3IR
3. Computer Networking – Top-Down Approach: http://amzn.to/1TLy7YR
12) Artificial Intelligence: This is the subject of those who want to work in the Robotics field,
where you will learn more and more algorithms that you can use to develop an intelligent
Robots, Algorithms for Searching, Solving Problems, Genetic Algorithms.
The field of the AI (Artificial Intelligence) is vast and huge and what you will learn in this
subject is an introduction, so if you are interested you have to continue in more advanced AI
fields such as: Machine Learning, (NLP) Natural Language Processing, Computer
Vision, (ANN) Artificial Neural Networks and more other.
Recommended Courses and Books:
1. Dr Ahmed Sallam – Introduction to Artificial Intelligence: http://bit.ly/1NerBlN
2. Udacity – Introduction to Artificial Intelligence: http://bit.ly/1TLyjYm
3. Artificial Intelligence A Modern Approach: http://amzn.to/1TLyliH
13) Databases: It’s one of the important subjects, and from its name it’s concerned with the
Databases, and you will study the different types of Databases and how to design a database
and how to connect the tables together, also you will study the SQL Language which is used
to make queries from the database to store data in or retrieve data from the database, so it’s
very important to study this subject especially if you are working on a project in which you will
need a database, and even if you aren’t working on a project, try to practice on one, while
studying this subject.
Recommended Courses and Books:
1. NU – Islamabad – CS403 - Database Management Systems: http://bit.ly/1TLs3Q4
2. Lynda – Foundation of Programming – Databases: http://bit.ly/1H5XDAH
3. Head First SQL: http://amzn.to/1TLytPk
4. Beginning Database Design: http://amzn.to/1TLzaYQ
14) Digital Control Systems: this subject may be more Hardware than being a Software but it
has a software implementation, In the Digital Control Systems, you will study the types of the
controllers and systems and how to design a controller to control this system, and these
systems may be such as controlling an Air Conditioning to be constant on a specific
Temperature, or controlling a Water-level in a Tank, and more other systems, you can notice
that they are hardware (Controlling Motors or pumps and so on), so where is the software?
The answer is in the controller which will have a Micro-Controller programmed to control the
system at different states.
16. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
11.The Main Topics you can find in any Programming Language:
1) The Basics of the Language: this is the part of the basics where you will study the types
of variables and Data Types and how to make loops and Decisions and how to create
functions from the codes to reuse them again several times.
2) The Object-Oriented Programming: we talked before about the OOP, so in this section
you expect to study the attributes and Methods and how to build a class also you will learn
about the inheritance between classes and the polymorphism which is the class takes many
forms
3) I/O (Binary or Text): this section is about the streams and data and how to read from and
write to the files either they are text or other types such as sound, video and so on.
4) Generics, Collections and Data Structures: this section is about the data structure
where every language has its own Libraries of these Data Structures and you will just use
them directly.
5) Database Connection: you will study here how to connect your code with a database and
how to store and retrieve data in the Database through your program.
6) Server-Side Programming & Web Services: you will study here how to code an
application to run on a server and how to connect you application with another one on a
server and how to communicate through the network, also how to build a web service that
can be called by the application in the future.
7) Multi-Threading and Parallel Programming: you will study in this section how to divide
your application into separate parts so they can run together in parallel which decreases the
executing time of the application and makes it more faster
8) Handling Exceptions: the good applications are those that don’t crash at any error
happens, so you will study here the different types of errors (Exceptions) and how to handle
them to keep the application stable.
9) Graphical User Interface (GUI): in this part you will learn how to design a friendly user
interface such as Button, Textboxes, and Select lists and so on. And how to code the
functionality of the buttons and the other components
10)Graphic Design (2D): you will study here how to draw using the programming language so
you do some graphs in the Applications or developing applications with graphics such as
developing games.
17. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
12.The Recommended Courses and Books:
First there is something I want to talk about: Many of you when they see many links for courses
or many books introduced they got disappointed and think that it’s a big deal and they can’t handle
it, so I want to say this, When I give many links courses for different people I just wanna introduce
different styles of learning and writers for books, but for you as a student you will end up with only
one course or a book that you prefer and get comfortable with his style.
This is because some people prefer the detailed explaining and the many examples and some
others prefer the fast information and the abstract one, and they practice by themselves.
So you just take a look on the courses and the books, choose the best one of them for you and then
watch the course or read the book.
1) The PHP Language:
PHP - Ahmed Syam - اساسيات تعليم : http://bit.ly/1SDRNgR
Ahmed Syam - PHP Zatona: http://bit.ly/1mu2kiv
Ahmed Syam - PHP CMS October 2014: http://bit.ly/1mu2kPp
Eng. Mohammed Yahya - PHP and MySQL : http://bit.ly/1SDSRRS
The New Boston - PHP Stock Market Analyzer: http://bit.ly/1IoMtGc
The New Boston - PHP Tutorials: http://bit.ly/1IoMY3a
2) The C# Language:
Adel Sabor - Web Application C# ASP.Net: http://bit.ly/1LGsWXz
Adel Sabor - Course ASP: http://bit.ly/1jqehU1
Adel Sabor - ASP.NET C# SQL Server: http://bit.ly/1jqetTl
Adel Sabor - ASP.Net & AJAX Controls: http://bit.ly/1OmNCEM
Adel Sabor - C# & Asp.net Diplomate: http://bit.ly/1mu2BSs
The New Boston – C# Language: http://bit.ly/12eO9TL
3) Python:
Eng. Mohamed Essa – Python Programming : http://bit.ly/1mu2sys
Some Videos of Python Web Development: http://bit.ly/1mu2whu
The New Boston - The Python 3.4: http://bit.ly/1BtORxp
The New Boston - Python GUI with GTK+ 3: http://bit.ly/1IoKLEU
The New Boston - Python Website Scanner: http://bit.ly/1IoKQIE
The New Boston - Python GUI with Tkinter: http://bit.ly/1GYUaFz
4) XML:
Lynda – XML Essential Training: http://bit.ly/1DaeLRV
Lynda – XML integrated with Java: http://bit.ly/1MGGORo
Ibrahim Qudeeh – XML Course: http://bit.ly/1Z9MENk
5) HTML & CSS:
El Zero Web School Courses: http://on.fb.me/1O4EPFG
Free4Arab - HTML & CSS: http://bit.ly/1LSExCw
Free4Arab – CSS: http://bit.ly/1Cl238j
Ibrahim Qudeeh – HTML: http://bit.ly/1IERduW
The New Boston - XHTML and CSS: http://bit.ly/1LSEpTN
30 Days to Learn HTML & CSS: http://bit.ly/1fhitEy
6) Ruby on Rails:
Learn Ruby on Rails from Scratch: http://bit.ly/1mu2zdm
Ruby on Rails 4.0 Lectures: http://bit.ly/1mu2y9f
The New Boston - Ruby Programming: http://bit.ly/1IoMvhd
18. Your Guide to be a Good Software Engineer February 7, 2016
___________________________________________________________________________________________
Written by: Eng. Ahmed Mater
7) JavaScript & JQuery:
Lynda – JavaScript Essential Training: http://bit.ly/1EW7omq
Lynda - JavaScript and JSON: http://bit.ly/1F97W7G
Lynda - JavaScript for Web Designers: http://bit.ly/1uxu9Uz
The New Boston - JavaScript: http://bit.ly/1dHIgnL
The New Boston - jQuery: http://bit.ly/1CWkc75
The New Boston - AJAX: http://bit.ly/1IoMk5G
El Zero Web School Courses: http://on.fb.me/1O4EPFG
Eng. Youssef Islmail – JavaScript: http://bit.ly/1NJ5O89
Ibrahim Qudeeh – JQuery 1: http://bit.ly/1ChApsv
Ibrahim Qudeeh – JQuery 2: http://bit.ly/1NJ64nm
Adel Sabor - Intro to Web : HTML5+CSS3+JavaScript: http://bit.ly/1JQfexT
8) Databases:
Ahmed Syam - SQL Language: http://bit.ly/1SDRRx4
Data Access Solutions using C# & ADO .NET: http://bit.ly/1mu2DKa
Data Access By Eng-Eslam Ghanem: http://bit.ly/1mu2K8i
Adel Sabor - JDeveloper 11g Course: http://bit.ly/1jqdUc5
Adel Sabor - Oracle Database SQL & PL/SQL: http://bit.ly/1jqdW3G
النجار أحمد .م - Learning SQL Server 2012: http://bit.ly/1mu2Mxc
Eng. Ahmed Habib - Oracle Developer (SQL): http://bit.ly/1mu2FBE
The New Boston - MongoDB for Beginners: http://bit.ly/1IoLrtW
The New Boston - MySQL Database: http://bit.ly/1IoMvxR
9) J2EE Java Enterprise Edition:
على عهود .م - JSP-Servlet-JSF: http://bit.ly/1mu2qXi
Eng. Ibrahim Eladdah - Java EE: http://bit.ly/1mu2rud
Adel Sabor - Java Course Applet Servlet – JSP: http://bit.ly/1MWVdW1
Adel Sabor – JSF using JDeveloper: http://bit.ly/1jqeXsA
13.The Recommended Professionals:
Ahmed Eltabakh : Embedded Systems : http://bit.ly/1i1ncvx
Hamdy Soltan : Embedded & Hardware : http://bit.ly/1i1neDy
Mahmoud Samir Fayed : Programming : http://bit.ly/a25sw
Abdallah Eid : Programming : http://bit.ly/qswcafw
Ali Hamdi : Web Design : http://bit.ly/AHamdi
Mohamed Yahia : Web Development : http://bit.ly/MYahia
Ahmed Syam : Web Development : http://bit.ly/ASyam
Ahmed Tartour : Database : http://bit.ly/ATartour
Mohamed Mostafa : Database : http://bit.ly/asdtckq
Free4Arab : Networking : http://bit.ly/xcvwaz
Adel el Hamidi : Networking : http://bit.ly/AHamidi
14.My Contacts: Free to contact me at anytime (preferred through Facebook)
LinkedIn : https://www.linkedin.com/in/ahmedmater
FB Group: http://on.fb.me/1MqbSFi
FB Profile: https://www.facebook.com/ahmedmater20
YouTube Channel: http://bit.ly/20lQl67
Facebook Page – Free Courses and Books: https://www.facebook.com/free.Course.book
Facebook Page – Books and MOOCs: https://www.facebook.com/Books.And.Moocs
E-mail: ahmedmotair@gmail.com