post Learn to code!

Filed under Code by Iain (11:41 am, July 18th, 2010)

Having had various friends ask me to how to get started with programming, but through circumstance never having had the opportunity to sit down with them and teach them one-to-one, I’ve looked around at various times for a tutorial series that teaches like I would.

Not having been able to find one, I’ve finally got round to writing my own, over at the Bendoverclocking forums.

Godlike Coding is a zero-to-hero series that takes you from rank beginner through to demo effects and games programming. I try and teach code in the same way I would if I was sitting beside you at your PC — which means lively, irreverent, and at times mildly offensive. It’s up to 24 episodes over 3 volumes so far, with my intrepid learners producing some awesome assignment output.

Mmmm, plasma

Read on for more pics and healthy self-promotion.

The language used is Java, but it’s really all about concepts equally applicable to C++, C# or any similar language. Volume I focusses on the absolute basics of syntax, flow control and data structures, but from the earliest possible moment we’re making pretties – I really like to establish a visual feedback loop and it does seem to make the learning easier. Rather than relying on any libraries however, during the course of Volume I we build our own image generation toolkit and drawing functions to render stuff with.
The rationale is that Volume I teaches only the syntax of the language, and what we can do with that alone; this avoids the reader getting confused by exactly what IS language and what isn’t, as well as explaining how all those graphics libraries we embrace later on actually work under the hood.

By the end of Volume I, we’re making pretty still images like this cityscape:

Godlike Coding Volume I : Cityscape

Volume II moves on to realtime rendering techniques. It’s only in Volume II that we start using any library code at all! We take a look at the late 1980s/early 90s demoscene, and code a bunch of pretty effects like the Plasma applet here (a screenshot of which is above, but of course it’s a lot prettier in motion).

We also cover the classic Fire effect:

I am the god of hellfire

Which again, looks a lot better when moving!

Volume III kicks it up another notch as we dive into games programming and build a good-looking Arkanoids clone.

Godlikanoids

That’s where we’re up to as of the moment; I have grand plans for the rest of Volume III but I’m taking a wee break from writing, and in the meantime I’d love to have some more people start the course. My friend’s forum could use some more traffic too.

So, want to learn to code? Ever played a game and thought, “I’d love to be able to make that”? Maybe you’ve tried other tutorials or books in the past but haven’t quite got there? Maybe you’re one of the unfortunate people from the Beginner’s Forum at GameDev.Net who’s been ridiculed for asking for help making an MMORPG? Maybe you’re a uni student on a CompSci degree course who needs some help getting their head around the coding side of things?

Answer yes to any of the above, and this could just be the tute series you’re looking for. There’s unlimited friendly support from yours truly; everyone following along with the course is strongly encouraged to register on the forum, just so I know they’re out there and can help them out as required.

So what are you waiting for? Join us! And if this isn’t applicable to you, maybe you have a friend who’d like to learn to code. Send ‘em over!

Leave a comment

ruld rurd
© 2001-2009 Iain Craig RSS Feeds Entries | Comments