The demand for programming skills is growing on the job market. Here are a few online courses to help you keep up.

Programming techniques are used in many fields, from website and mobile apps building, to video games, 3D movies, self-driving cars and even medical robots. As such, it is an increasingly sought-out skill on the job market.

Here are 6 MOOCs (Massive open online courses), made in the Arab world and further, to introduce you to the basics of programming and help you dive into some of its most widely used languages.

All of the courses are free, except the last one for which students can ask for financial support. 

“CS50x” by Harvard University

CS50x is Harvard University’s introductory course to computer science and programming. It teaches students how to think algorithmically to solve problems. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. The languages used are C, Python, SQL, and JavaScript plus CSS and HTML. Problem sets are inspired by real-world domains such as biology, cryptography, finance, forensics, and gaming.

MOOC platform: edX

Language: English

Price : free (90$ to add a certificate)

Duration: 9 problem sets (10 to 20 hours each), 1 final project

Level: Beginner

Teacher: David J. Malan

“Java Programming 1” by the Arab Open University

This course is offered by the Arab Open University and available on the Jordanian free MOOCs platform Edraak. It will introduce you to Java, one of the most common programming language. Java can be used in Android and IOS apps, video games, desktop GUIs (Graphic User Interfaces) and software development.

MOOC platform: Edraak

Language: Arabic

Price : free

Level: beginner

Teachers: Dr. Jehad Al Saadi, Othman Walweel, Abdelfattah Al Dabbas

 

“Programming a website using HTML5, CSS3 and JavaScrip” by Rwaq 

This MOOC offered by the Saudi education start-up Rwaq is dedicated to website front-end programming. In other words, it will teach you how to build the graphical interface viewed by users and how to interact with them. The languages taught in this course are HTML5, CSS 3 and JavaScript.

MOOC platform: Rwaq

Language: Arabic

Price : free

Level: beginner

Teacher: Ayman Ahmad Al-Qudah

 

“Programming Foundations with Python” by Udacity


This course displayed on the American MOOC platform Udacity will make you discover object-oriented programming, a must-have technique for software engineers. The language introduced is Python, which can be used for web development, video games development, desktop GUIs as well as software development.

MOOC platform: Udacity

Language: English

Price : Free

Duration: approx. 6 weeks

Level: beginner

Teacher: Kunal Chawla

 

“Intro to JS: Drawing & Animation” by Khan Academy

This MOOC from the America NGO Khan Academy will teach you how to use the JavaScript language and the ProcessingJS library to create fun drawings and animations. 

MOOC platform: Khan Academy

Language: English

Price: free

Duration: 15-40h, depending on your pace

Level: beginner

 

“Introduction to game development” by the Michigan University

This course is targeting game lovers willing to discover how to make them, without prior experience. You will start developing your own videogames using the industry standard game development tools, including the Unity3D game engine and the C# programming language. This MOOC is taught by the Michigan University, which offers one of the most renowned game development programs.

MOOC platform: Coursera

Language: English

Price : 49$/month, with possibility to apply for financial aid

Duration: 4 weeks, 2-5 hours/week

Level: beginner

Teachers: Brian Winn, Casey O’Donnell