Advertisement Jump to content
  • Advertisement


Sign in to follow this  
  • entries
  • comments
  • views


Sign in to follow this  


There are alot of posts with people asking what language to begin with and everyone suggesting C++ because thats what the big dogs use. And everyone wants to hang with the big dogs. Others suggest "simpler" languages like C#, Python or Java. These language although friendlier are actually not much better for the ultimate beginner.

They are languages to use after bad habits have been learned. Thus I suggest that Every pure beginner start with QuickBasic or Assembly. This may seem strange, listing those two languages in the same sentence but I will show why it is not so.

Armed with the boon of Retrospective Foresight many people say this or that language is bad because it instills bad programming habits. This is not true. By human nature any language that is chosen as first will have bad programming habits as a part of it. This is because creating misconceptions and then reordering them with experience is an essential part of learning.

Misconceptions exist because the schema, the set of knowledge which the person contains on a certain subject (here programmaing) is entirely undeveloped. To function, as the brain is wont to do, certain assumptions and groupings will be made, erronous and not truly correct connections that are only available because the schema for a topic is so devoidly underdeveloped. There is not enough for the brain to work with to create an accurate understanding or picture of it all. This can only be rectified with knowledge and experience.

QuickBasic is a good enviroment to learn "programming thinking" because it is among the most forgiving languages out there and it is limiting in just the right way to forestall grevious misconceptions attempting to learn a language as C# first would. It as well is equipped with everything required to pick up and go with virtually nonexistant fuss. Many high level language constructs - those that a beginner should be exposed to anyway - are there. You can start with graphics right away and there exist a large amount of resources to get you started. This is the path suggested for one who wishes to become a high level techniques programmer. Visual Basic is no good but I suppose Darkbasic might be okay as it follows in the same vein as QuickBasic.

Assembly is suggested as an alternative because of its authoratarian nature, you must be specific and accurate or you will die. In fact programming in assembly is virtually the same as writing a formal proof in an axiomatic system. One is forced to learn the workings of the machine and become close to the machine. There is less room than most languages for the development of grevious misconceptions due to the explicit and tight nature of it all. This is suggested for those who wish to go the low level or engine programmer path.

After Quickbasic learning a language like OCaml would be suggested. Some say Haskell is good as well but I know nothing of it.
Sign in to follow this  


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!