Menu Close

CSP: Programming

A professional software developer should master at least two programming languages. In this class you can learn your first computer language in about 5 up to 14 days depending on your focus. As freelancer it is not wrong to learn several computer languages before you commit yourself to a project for work. 

Prerequisite

For this class, you need basic understanding of programming methodology, propositional logic, algebra and mathematics. Usually these things are teach in school between age of 12 up to 21. If you are younger then 12 please wait to grow up and come back when you are at the right age. 

  • Before this class we recommend: CSE: Engineering, to learn basics principles of software development. The engineering class is required study. Without Engineering class you will probably have no clue how to create and manage a software project even if you know a computer language.
  • We host code examples in our classes. These examples are called code snippets. We use a free web service to host these examples.  It will be useful to register and make your own snippets to try a programming language, therefore we recommended: repl.it

Select the language

Next we briefly describe top 10 most popular programming languages. For each language we spend about 12 minutes. There are no advertisements and no interruptions. If you have already decided what language to learn you can skip this presentation. 

Next: you can select one of 8 languages. For each language we have an introductory article with external references to the best on-line documentation. For some languages we have created original articles with examples of code found nowhere else but here. Enjoy!

Freelance Languages

Next 3 languages are for web apps, preferred by freelancers. If you pass at least one exam in this category with more than 80% you can ask for a researcher role and then you can contribute to our projects. 
#?Class DifficultyLanguage DescriptionReference
1HTML+CSS★★Default languages for static web pageshtml & css
2JavaScript★★★★Default language for dynamic web appsmozilla.org
4Python★★★Popular scripting languagepython.org

Research Languages

Next 5 languages are for server-side programming, preferred by professional developers. If you pass at least one exam in this category with more than 80% you can ask for an instructor role then contribute to our training program with new examples, articles and courses. 
#?Class DifficultyLanguage DescriptionReference
4C    ★★★Low level system languagewikibooks.org
5Go ★★★★Concurrent language for Google cloudgolang.org
6Rust★★★★★Safe system programming languagerust-lang.org
7Julia★★★★★Academic dynamic language by MITjulialang.org
8Ruby★★★★★Productive scripting languageruby & rails
? = Tutorial coverage:
◔ basic tutorial
◑ intermediate tutorial
◕ advanced tutorial
 
Your contribution: After you finish learning one or two languages we need your help to improve our content. Without your contribution our content will remain stale. Please post feedback messages on our forum. Tell other visitors about your experience so that they can decide what language to learn. I’m sure they will appreciate your effort. Thanks!