One of the most common questions I get is “What Programming Language Should I Learn First?” Others have attempted to answer this question, however, I’m not sure there really is a definitive answer. I think the language you should choose for your first foray in to computer programming or web development should be dependent on your goals and reasons for learning the language in the first place. Based on the some of the reasons for learning programming, I have made suggestions for languages to start with and provided links, where appropriate to a few resources to help you get started.
I Want To Program Video Games, Evenutally
Video game programming, while a popular goal for many beginning programmers is probably the most difficult type of programming. Console games, PC/Mac Games and Mobile games are often complex and require knowledge of a game library, audio, video, physics in addition to the basic programming language. One thing to remember however, is that the most common language for game programming is C++. C++ is one of the most difficult languages to learn, but mastering it will make you ready to tackle just about any programming task. Some people who want to learn video game programming and C++ first learn C, which is an older, slightly easier subset of the C programming language.
If you want to learn C or C++ you might check out:
I Want to Make Kick-Ass Web Sites
Web Sites are much more than sites now-a-days. Quality web sites that actually do something– as opposed to static web sites that are mere informational flyers on the web — are a combination of languages. HTML defines the site structure. JavaScript is used for interaction within the web browser. Perl, PHP, .net, or ColdFusion are used for the server side code to (usually) interact with a database, and Actionscript is used for any Flash or Flex assets. If it sounds overwhelming and you have never developed web sites before, you should start with HTML. While not a programming language, HTML will get you used to the idea of coding. Don’t be tempted to use a tool like Dreamweaver to create the sites– Hand coding the sites in HTML can be a valuable experience.
If you already know HTML but want to start programming in earnest, PHP is one of the easier server-side languages to learn. PHP will allow you to interact with databases, and build truly interactive web applications. Many commercial sites are written in PHP, so you are developing a truly marketable skill as you learn.
If you Want to Develop Web Applications Check Out:
I Want to Learn Programming as a Hobby
If you are looking to program as a hobby, you might consider a language Actionscript, which is the language that is part of the Flash and Flex platform. While it initially started as a pretty rudimentary scripting language, Actionscript 3.0 (the current version) has developed in to a full-fledged, object oriented language that is robust and powerful. Actionscript is a fun way to learn programming, because, coupled with Flash or Flex you can rapidly develop applications that can really do some interesting things. As a bonus you can deploy your applications to the web to play in Flash players or to the desktop with Adobe AIR.
If You Want To Learn Programming as a Hobby Check out:
I am Going To Take Programming Courses in College
It seems that most college computer science courses have moved to the Java platform. This movement has not been without controversy, however. Many argue that C++ and/or C are better for students because memory allocation and management are not abstracted away from the programmer as they are in Java. That having been the case, I would contact the college or university where you are going to take courses and see what their primary language is. Then move forward and get a head start in that language. If you’re still not sure, Java, is probably your best bet.
I Want to Make Business Applications
The .net Programming platform is a good bet if you are going to make business applications. It’s not particularly easy to learn, but more and more, it seems that business applications are being developed on the platform. The .net platform actually gives you the option to choose one of two languages– C# and VB.net. I would choose C# as it is more commonly used and it is more like the C and C++ languages. Microsoft has trials and casual versions of the .net studio available which is required to make .net programs.
One of the nice thing about .net for beginners is that it has a toolkit that allows you to create the user interface by dragging and dropping tools on to the user interface. You’re job, once the interface is created, is to develop the back end business logic in files commonly known as “code-behinds.” This manner of programming enforces a separation of the logic used to display data in your program and the logic used to do “the business” of your programing. The separation of your business logic from user interface and display is a great habit to get in to and the .net platform gets you doing it habitually from the start.
If You Want to learn Programming for Business Applications:
I Want to Work with Graphics, Video and Sound
In gaming and graphics and sound applications the coding is done mostly in either the Direct X library or older OpenGL library. These are add-ons for existing programming languages. For example OpenGL libraries can be access from C, C++ or even Java. However, if you want to start working with Graphics, Video and Sound I’d again recommend the Actionscript language, which is part of the Adobe Flex/Flash platform.
The Actionscript language provides a rich interface for graphics, video and sound that is doesn’t have a steep learning curve. In my live classes I have new Actionscript programmers developing MP3 players and video players without too much trouble.
If You Want To Work with Graphics and Sound:
Adobe.com Free Trial Downloads
LearnToProgram.TV Flash, Flex and Actionscript Tutorials
Thanks.
it explained alot to me..
[...] Read full article here: http://learntoprogram.tv/2009/11/what-programming-language-should-i-learn/ [...]
Leave your response!
Tips, Tricks and Training Email
Thanks for wanting to keep in touch! I promise I will only send you valuable information, announcements and tips and tricks that you can apply to your own programming and web development. I will not send you advertising, SPAM or other garbage. Remember, if I can ever be of help with corporate techinical training, consulting or eLearning, don't hesitate to contact me at mark@learntoprogram.tv!
(Required fields are bold)
Tags
Pages
Recent Comments
Recent Tweets