Jump to content

  • Log In with Google      Sign In   
  • Create Account


#ActualSerapth

Posted 30 August 2013 - 02:37 PM

It doesn't really matter what language it is that you learn.

Sure many will point you towards building yourself up from easier languages to more difficult languages, such as starting out on python and working through things like C# or Java and up to more lower level programming languages like C or C++. Look for the qualities in the language that you desire. C and C++ are probably one of the best things to use for game programming, but they are indeed a bit more difficult to learn than say C# or Java.


This isn't really true if you factor in efficiency.  I am not talking code proficiency, but learning proficiency.  In this case some languages are certainly better than others when just starting out.  Languages are invented for different things.  BASIC was invented as an introductory language ( the B in BASIC literally stands for Beginner ), C++ was invented to deal with code complexity in large scale C programs. PASCAL was invented to teach good structured programming practices ( or at least so far as Niklaus Worth found them ). 

 

When just starting out the user not only has to deal with learning basic universal programming concepts ( program flow, variables, conditionals, etc... ) while at the same time learning the language syntax.  On top of that they often need to deal with a compiler in many cases ( or an interpreter in others ), often an IDE as well, and in some cases ( thankfully increasingly rare ) a linker as well.  IMHO, backed by many teaching professionals, the more of these things you remove from the equation the easier it will be to learn.

 

There are some areas that are a bit iffy in that regard though.  For example, an IDE, while adding a layer of complexity, also hides a layer of complexity.  So starting with an IDE or not can go both ways.

 

If the browser wasn't such a horrible programming environment and the language didn't have so many warts, I would probably recommend JavaScript as a starting language.  Its got a very tight feedback loop ( code something, see what it does ), reams of supporting materials, lots of good libraries, etc.  Maybe when JavaScript 6 becomes the norm, it will be much improved.  The nice thing about JavaScript is, its used, A LOT.  It's basically one of the few languages every single programmer should know.

 

Otherwise I would probably suggest going with one of the Lua libraries.  You can get a decent IDE/Editor in the form of Zerobrane and the LOVE library is probably one of the most accesible game libraries in existence.  The advantage is, Lua is very commonly used in the game industry, so its not exactly a wasted space on your CV.

 

The nice thing about these two languages is they dont have a compile or link phase.  Write code, then run it.  Modify something and continue.  That is very very very handy when just learning.

 

 

 

 

 

Now at the end of the day what Panda said is completely true.  The most important thing you can do is pick ONE thing and stick with it.

 

But, some languages very much are better for starting out than others.  Me personally, I suppose I recommend you start with Lua or JavaScript.

 

 

 

 

/ My only caveat with Lua is they chose to start counting from 1, unlike basically (pun not intended) every other programming language other than BASIC.  This is a shame and a bad decision IMHO.


#2Serapth

Posted 30 August 2013 - 02:37 PM

It doesn't really matter what language it is that you learn.

Sure many will point you towards building yourself up from easier languages to more difficult languages, such as starting out on python and working through things like C# or Java and up to more lower level programming languages like C or C++. Look for the qualities in the language that you desire. C and C++ are probably one of the best things to use for game programming, but they are indeed a bit more difficult to learn than say C# or Java.


This isn't really true if you factor in efficiency.  I am not talking code proficiency, but learning proficiency.  In this case some languages are certainly better than others when just starting out.  Languages are invented for different things.  BASIC was invented as an introductory language ( the B in BASIC literally stands for Beginner ), C++ was invented to deal with code complexity in large scale C programs. PASCAL was invented to teach good structured programming practices ( or at least so far as Niklaus Worth found them ). 

 

When just starting out the user not only has to deal with learning basic universal programming concepts ( program flow, variables, conditionals, etc... ) while at the same time learning the language syntax.  On top of that they often need to deal with a compiler in many cases ( or an interpreter in others ), often an IDE as well, and in some cases ( thankfully increasingly rare ) a linker as well.  IMHO, backed by many teaching professionals, the more of these things you remove from the equation the easier it will be to learn.

 

There are some areas that are a bit iffy in that regard though.  For example, an IDE, while adding a layer of complexity, also hides a layer of complexity.  So starting with an IDE or not can go both ways.

 

If the browser wasn't such a horrible programming environment and the language didn't have so many warts, I would probably recommend JavaScript as a starting language.  Its got a very tight feedback loop ( code something, see what it does ), reams of supporting materials, lots of good libraries, etc.  Maybe when JavaScript 6 becomes the norm, it will be much improved.  The nice thing about JavaScript is, its used, A LOT.  It's basically one of the few languages every single programmer should know.

 

Otherwise I would probably suggest going with one of the Lua libraries.  You can get a decent IDE/Editor in the form of Zerobrane and the LOVE library is probably one of the most accesible game libraries in existence.  The advantage is, Lua is very commonly used in the game industry, so its not exactly a wasted space on your CV.

 

The nice thing about these two languages is they dont have a compile or link phase.  Write code, then run it.  Modify something and continue.  That is very very very handy when just learning.

 

 

 

 

 

Now at the end of the day what Panda said is completely true.  The most important thing you can do is pick ONE thing and stick with it.

 

But, some languages very much are better for starting out than others.  Me personally, I suppose I recommend you start with Lua or JavaScript.

 

 

 

 

/ My only caveat with Lua is they chose to start counting from 1, unlike basically (pun not intended) every other programming language other than BASIC.  This is a shame and a bad decision IMHO.


#1Serapth

Posted 30 August 2013 - 02:35 PM

It doesn't really matter what language it is that you learn.

Sure many will point you towards building yourself up from easier languages to more difficult languages, such as starting out on python and working through things like C# or Java and up to more lower level programming languages like C or C++. Look for the qualities in the language that you desire. C and C++ are probably one of the best things to use for game programming, but they are indeed a bit more difficult to learn than say C# or Java.


This isn't really true if you factor in efficiency.  I am not talk code proficiency, but learning proficiency.  In this case some languages are certainly better than others when just starting out.  Languages are invented for different things.  BASIC was invented as an introductory language ( the B in BASIC literally stands for Beginner ), C++ was invented to deal with code complexity in large scale C++ programs. PASCAL was invented to teach good structured programming practices ( or at least so far as Niklaus Worth found them ).

 

When just starting out the user not only has to deal with learning basic universal programming concepts ( program flow, variables, conditionals, etc... ) while at the same time learning the language syntax.  On top of that they often need to deal with a compiler in many cases ( or an interpreter in others ), often an IDE as well, and in some cases ( thankfully increasingly rare ) a linker as well.  IMHO, backed by many teaching professionals, the more of these things you remove from the equation the easier it will be to learn.

 

There are some areas that are a bit iffy in that regard though.  For example, an IDE, while adding a layer of complexity, also hides a layer of complexity.  So starting with an IDE or not can go both ways.

 

If the browser wasn't such a horrible programming environment and the language didn't have so many warts, I would probably recommend JavaScript as a starting language.  Its got a very tight feedback loop ( code something, see what it does ), reams of supporting materials, lots of good libraries, etc.  Maybe when JavaScript 6 becomes the norm, it will be much improved.  The nice thing about JavaScript is, its used, A LOT.  It's basically one of the few languages every single programmer should know.

 

Otherwise I would probably suggest going with one of the Lua libraries.  You can get a decent IDE/Editor in the form of Zerobrane and the LOVE library is probably one of the most accesible game libraries in existence.  The advantage is, Lua is very commonly used in the game industry, so its not exactly a wasted space on your CV.

 

The nice thing about these two languages is they dont have a compile or link phase.  Write code, then run it.  Modify something and continue.  That is very very very handy when just learning.

 

 

 

 

 

Now at the end of the day what Panda said is completely true.  The most important thing you can do is pick ONE thing and stick with it.

 

But, some languages very much are better for starting out than others.  Me personally, I suppose I recommend you start with Lua or JavaScript.

 

 

 

 

/ My only caveat with Lua is they chose to start counting from 1, unlike basically (pun not intended) every other programming language other than BASIC.  This is a shame and a bad decision IMHO.


PARTNERS