15 Best Programming Languages You Can Use

Editor’s note: This is a Guest Post from Oyelaja Adebambo Oyekan, CEO of Cybernator Solutions. He is a software developer and is about to launch a social networking site called Benebo. The article is aimed at providing tips and advice on how wannabe software developers can choose the best programming languages. 

Last week I wrote about some tips on How to Choose the Best Programming Languages. Today, my goal is to provide several programming languages that you can choose to start with depending on your needs.

Now I will provide some language reviews for some popular languages out there. I’ve also covered some web languages. It should be noted that these are not actually programming languages. Some are scripting and some are called Markup languages. Also note that this is not a full review of these languages. You should do more research on a language that might interest you in order to find out more.

This is not a full list of languages! I tried to include many of the major languages but there are just so many that the list would just become too large and start to confuse beginners. For a larger list of languages check out this link.

Web Applications

1. HTML (*)

  • Type: Markup Language
  • Geared for: Web Development
  • Difficulty: Very Easy
  • Compatibility: Works with any browser, and OS compatibility is not a worry when doing web design
  • Documentation: Lots of great on-line tutorials. I see no need to buy a book when there are so many free on-line tutorials.
  • Links: www.w3schools.com
  • Side notes: All you need is notepad and a web browser.

2. CSS (*)

  • Type: Cascading Style Sheets
  • Geared for: Web Development
  • Difficulty: Easy
  • Compatibility: Works with most modern browsers
  • Documentation: Lots of great on-line tutorials. You might find buying a book helpful.
  • Links: www.w3schools.com
  • Side notes: All you need is notepad and a web browser.

3. JavaScript

  • Type: Interpreted / Scripting
  • Geared for: Web Development
  • Difficulty: Easy - Mild
  • Compatibility: Works with most modern browsers
  • Documentation: Great on-line tutorials, but you may find a book helpful.
  • Links: www.w3schools.com
  • Side notes: This gives web designers a scripting language to use with in there web pages. Can create pop up boxes and validate html forms.

4. PHP

  • Type: Scripting
  • Geared for: Web Development
  • Difficulty: Mild
  • Compatibility: Code is ran on server so browsers have nothing to do with this language.
  • Documentation: Good on-line tutorials, may want a book for more complete learning process.
  • Links: www.w3schools.com
  • Side notes: Great for accessing databases. Because code is executed on the server the user can not view the source code, this adds a level of protection and security.

5. ASP

  • Type: Scripting
  • Geared for: Web Development
  • Difficulty: Mild
  • Compatibility: Code is ran on server so browsers have nothing to do with this language.
  • Documentation: Good on-line tutorials, may want a book for more complete learning process.
  • Links: www.w3schools.com
  • Side notes: Microsoft technology. A powerful tool for creating dynamic and interactive web pages. Code is executed on the server, so the user can not view the source code, this adds a level of protection and security.

Computer Applications

1. Python (*)

  • Type: Interpreted/Scripting 
  • Level: Very High
  • Geared for: Everything
  • Difficulty: Easy
  • Compatibility: Cross-platform
  • Documentation: Great Documentation, many books, and on-line tutorials.
  • Links: www.python.org
  • Side notes: easy to learn, and very powerful. You can do just about anything with this language. Great for beginners.

2. Perl

  • Type: Interpreted
  • Level: High
  • Geared for: General Purpose, Text Processing, CGI scripts, Automating Tasks
  • Difficulty: Mild
  • Compatibility: Cross-platform
  • Documentation: Many books, and on-line tutorials.
  • Links: http://www.perl.com/

3. Ruby

  • Type: Interpreted
  • Level: High
  • Geared for: General Purpose, Web Scripting
  • Difficulty: Mild
  • Compatibility: Cross-platform
  • Documentation: Normal
  • Links: http://www.ruby-lang.org/en/
  • Side notes: The goal was to program in human style rather than adapting its mind to the computer structure.

4. Visual Basic / VB.net

  • Type: Compiled
  • Level: High
  • Geared for: Windows applications
  • Difficulty: Easy
  • Compatibility: Windows
  • Documentation: Well supported by Microsoft and many books.
  • Links: http://msdn.microsoft.com/en-us/vbasic/default.aspx
  • Side notes: Not a great language, but easy to use and whip up a quick app. Not well respected by other programmers. Dot net is compiled differently. Research the dot net platform for more information.

5. C / C++ (**)

  • Type: Compiled
  • Level: Middle
  • Geared for: Everything
  • Difficulty: Mild - Hard
  • Compatibility: Cross Platform
  • Documentation: Tons!! Books, on-line, people, just tons!
  • Links: 
  1. http://www.cplusplus.com/doc/tutorial/
  2. http://www.cprogramming.com/
  • Side notes: Well respected language. Take the time to understand this language, it will pay off. There is a reason it is the industry standard.

6. C# (*)

  • Type: Compiled
  • Level: High
  • Geared for: General, The Dot Net Platform
  • Difficulty: Mild
  • Compatibility: Native to Windows, Cross Platform
  • Documentation: No lack of books or developers to speak with.
  • Links: 
  1. http://msdn.microsoft.com/en-us/vcsharp/aa336809.aspx
  2. http://www.microsoft.com/express/vcsharp/
  3. http://mono-project.com/Main_Page
  • Side notes: Not directly compiled to machine code. The mono project is working on making the language cross platform but does not have all features of the Microsoft dot net platform.

7. Java

  • Type: Compiled
  • Level: High
  • Geared for: Everything and portability
  • Difficulty: Mild - Hard
  • Compatibility: Cross platform
  • Documentation: Well documented
  • Links: http://java.sun.com/docs/books/tutorial/
  • Side notes: I have heard good and bad things about this language. Not a choice I would pick for a beginner.

8. Assembly (**)

  • Type: Compiled
  • Level: Low
  • Geared for: Special niches when needed
  • Difficulty: Very Hard
  • Compatibility: Each processor architecture has Its own version.
  • Documentation: Normal
  • Links: http://webster.cs.ucr.edu/
  • Side notes: Has a big purpose in the programming of embedded systems (you name it, anything from washing machines to tv’s). If you learn assembly for one architecture, than it isn’t too difficult to code on different ones. You just have to learn a new instruction set.

Keys:

* = I personally recommend to hobbyist or average beginners

** = I recommend to students for more serious learning.

Disclaimer: I personally have skills in most of the languages above but my favourite are listed below.

  1. PHP
  2. C++
  3. Erlang
  4. CSS
  5. Haskell
  6. Html
  7. Javascript
  8. Mysql
  9. Delphi
  10. Perl
  11. Python
  12. Ruby (I’m not so good with it)
  13. VB6 ( I hate it now but I learnt all I could with it. Sometimes, I feel I can write a human in it LOL!)
  14. Assembly Lang (currently building an OS in it)
  15. Whtml (Custom language developed by me and the Cybernator Solutions team. It will be in use on our social network soon to be launched).
  16. English (yeah english lol)

Remember to have fun and learn all you can!

3 comments:

  1. D'Code KokoCoder, 23. April 2009, 15:41

    C# mild?? I think not. Though the learning curve is good to start with it gradually gets steeper, the vast features (linq/plinq, multithreading, delegates, events, etc) of the language and attaining mastery of it is by no means “mild”. Its is superior to every language you mentioned (including java and the functional ones) bar c++.

     
  2. Oyelaja Oyekan, 23. April 2009, 16:27

    I still think its mild compared to erlang and the likes

     
  3. Oyelaja Oyekan, 23. April 2009, 22:25

    And if you notice it says MILD-HARD

     

Write a comment:

You must be logged in to post a comment.