It is wonderful that you have decided to undertake the hobby of computer programming, but which language should you choose: Python, PHP, Java, C\#, C/C++, VB, Ruby, Scala, Groovy, Javascript, or one of the thousands of others languages available to programmers. There are many factors to consider when choosing a programming language especially when getting into programming for the first time: paradigm, syntax, platform and even just the coolness factor. \subsection{Paradigm} A languages paradigm refers to how the language is constructed. For example the three mainly disucessed paradigms are Functional, Object Oriented and Multi Paradigm. Functional refers to languages that are based around completing tasks using Mathematical functionals; C is an example of a functional language because it does not support the use of classes or objects. Object Oriented languages on the other hand are constrcuted by designing classes and objects to complete your programming tasks; Java is an example of an Object Oriented programming language because regardless of the type of program you develop you are forced into using classes and objects. Multi Paradigm languages are usually a mix of more than one paradigm. For example Python is a Multi Paradigm language because you can choose whether or not to use classes and objects when programming. \subsection{Syntax} A languages syntax is very important when choosing a language. This is mainly going to be a personal preference. Personally I like C style sytanx languages like C,C++,Java,PHP,Javascript,etc. Other people might prefer other languages because their use of other syntax styles. Your personal preference will come with time as you move from one language to another and develop your own personal style and preferences. \subsection{Platform} This is a very important factor when choosing which programming language to use. What platforms do you have available to use? Do you only have a Windows computer at your disposal? That might remove some of the options out there as some languages might not support developing on a Windows machine. \subsection{Coolness} What seems cool to you? Right now as I write this a lot of people are trying out Node.JS (even myself) as it is somewhat new and exciting. What do you want to learn? Does the idea of developing real time event based web applications seem cool? Then maybe you should check out Node.JS. Prefer to develop Windows based desktop applications, why not try out C\# or Vb? Go with what you feel. \subsection{Conclusion} Advice, if after doing some research you are still unsure which lanauge you want to use, especially for going through this resource try out Python. Python is available for every platform, or at least all of the ones I can think of, it is interpreted and lastly it's syntax is going to be one of the closest to the sudo langauge that this resource uses.