Saturday November 21, 2009 6:05 PM AEST

Cunning linguistics

  • Email a Friend
  • Print Page
 »
Cunning linguistics
By Chris Taylor
Jul 7, 2008
Tags: education | coding

Chris Taylor is apparently a fan of puns. Good thing he's also got some advice in coding.

Since pretty much the beginning of this here section, we’ve been advocating gaining experience and fostering knowledge of programming – moreso than any other topic, really – before you start your TAFE or university course. The unit guide for your introductory programming class might say that the teaching staff and prescribed textbook assume no prior knowledge on your part, but the existence of truth in that statement has been found by many a first year programming student to be debatable. Don’t misinterpret what we’re saying. It really isn’t necessary to become ‘fluent’ in Java over the summer before you start Introduction to Object-Oriented Programming. That sort of dedication isn’t required. Or even that beneficial, if you simply learned by rote from one of those Learn XYZ in 21 Days books. No, what we’re encouraging you to develop is an understanding of the underlying concepts common to all programming languages. Such an understanding will help you immensely as both a student and programmer, and will make learning new languages relatively painless.

Of course, the best way to learn how programming works is to play with a language or two. Which language you decide to experiment with is up to you, but we’d recommend not picking something you’ll be covering in your one of your subjects. “Languages like Ruby, Python and Perl’ would be good choices,” according to Atomican dave_blob. He reasons that they are “relatively forgiving, read somewhat close to English and just make sense.”

Java and C++ might seem obvious choices. Many a guidebook is available for them, so you’ll have no shortage of learning materials. However, these are two languages that really crack a sad when you so much as forget to put a semicolon somewhere. Being hit with a long, cryptic error message is disheartening and confusing. Especially when it’s over something so minor as a punctuation mark.

Too, try and learn from more than one source. Don’t just rely on the first book that caught your eye when you wandered into the computing section of the local library. Borrow two or three books and maybe find a few good web-based tutorials. There’s a thread (http://www.atomicmpc.com.au/forums.asp?s=2&c=10&t=824) in the programming section of our forums that’ll provide you with links to a few good ones. Wikipedia can prove useful too. Reading multiple interpretations of the same concepts will greatly improve your understanding of them.

When it comes to literature, for Dummies and Learn XYZ guidebooks can seem the ideal choice for the beginner and they are, but only up to a certain point. These books frequently gloss over important topics you need to understand if you’re to be a good programmer in the name of accessibility. And it’s far too easy to learn by rote from such books. Make sure you grab something a little heavier and more in-depth to compliment any such guidebooks you pick up.

With those guidebooks, don’t just copy the sample code verbatim and read the theory as if, somehow, they can be divorced from each other. You won’t learn a thing by simply punching out a page of syntax. You need to read the theory first. Understand the mechanics of what you’re doing and then you might be able to figure out the instructions by yourself without resorting to copying the sample code. Even if you can’t produce a complete program from scratch, you’ll probably notice ways in which you can improve upon the provided sample.

Much better than books, though, is one’s fellow human being. Having a friend who programs for a living would help you immensely. Ply them with alcohol, money or sexual favours and have them go over your code. Hit them with questions when you don’t understand a particular concept. Ask for their recommendations of books, websites, short courses and maybe even languages.

Even the best Learn XYZ guidebook won’t be able to tell you off for writing ugly, inelegant code. And too, sometimes, a living, breathing person can just explain things so much better than any text-based resource. Not everything can or should be self-taught. Rely solely on resources which can’t provide you with feedback and you might find you pick up bad habits or misunderstand vital concepts. Don’t worry too much if you don’t know any programmers in-person. Forums can be an invaluable source of information, advice and encouragement for the novice coder. The programming section of our own forums is inhabited by a large population of knowledgeable souls who are more than willing to assist the confused but enthusiastic newcomer.

 
 »
 
This article appeared in the June, 2008 issue of Atomic.

The latest issue is on sale now!

Want to learn all about Diablo III? Want to find out what the best Solid State Drive is on the market today, and how to look after it? Want to catch up on the latest hardware, games and in depth tech from Australia's best enthusiast mag?

Get your copy today :)
Comments

Be the first to comment on this article.
Thoughts on this article? Add a comment below.
Login or register to submit a comment.
 
 
 
Atomic Magazine

Issue: 107 | December, 2009

Atomic is a magazine aimed squarely at computer enthusiasts, gamers, and serious PC upgraders.

Every month we bring you the latest reviews of new technology and PC components, in depth features on everything from overclocking to console hacking, and gaming previews and interviews.
 
Latest Comments
"The visit was useful. Content was really very informative. From www.globalsaridelivery.com"
by tanmoyrf | Nov 21, 2009 5:48 PM
 
""sudo preupgrade"
...failed to download installer metadata
------------
So ..."
by wlayton27 | Nov 21, 2009 8:16 AM
 
"I thought Vista outlived it's usefulness about the same time it was released , lol"
by mr.gargoyle | Nov 21, 2009 12:28 AM
 
"^ I find with CoD4 that I can jump on an empty server and be joined by 6-12 others before the ..."
by Ezekill | Nov 20, 2009 10:10 PM
 
"check

LOMAC
DCS Black Shark
X-plane"
by Bastard Child | Nov 20, 2009 8:13 PM
Latest User Reviews
Shenmue II
10%
asdfasdf
 
EVGA X58 Classified
90%
great board, a few things could be better
 
EVGA X58 Classified
90%
Gorgeous looking
 
Sapphire 4890
90%
So good, I immediately wanted a second one!
 
MSI 790FX-GD70 motherboard
90%
Allmost the prefect gaming board