Coding Evolution

I think over the last 10 years I’ve evolved as a coder. Here’s some of the milestones I achieved.

You Start Using Source Control

You spend half a day trying to find what you changed in your code that has suddenly made it stop working. You realise that your current form of source control (CTRL+Z) isn’t doing you any favors. You spend an hour learning about source control and never look back.

You Stop Obsessing Over Optimizations

You decide that getting everything working should be the first priority. Then you’ll worry whether that function that gets called once on shutdown is fast enough.

You Stop Coding The Same Things Over and Over

You realise that half your time is spent writing the same thing. You would have used your old code but it’s so messy and you feel dirty. You decide to seperate your common generic code into its own utility library. And never look back.

You Think A Step Higher

Instead of coding a new class factory for everything that requires it you make a generic class factory template.. now you never have to code a class factory again. You actively look at what you’re doing and think “what can I do to make sure I never have to do this again”.

Including Windows.h Makes You Itch

You don’t want to include Windows.h anywhere in your project anymore. You know it’s going to come and fuck you in the end somehow. It’s going to rename your functions. It’s going to give you shit loads to fix when you try to make your project portable. So instead you go the extra mile and you look for the standard functions. If you can’t find alternatives you make a platform.h which includes a platform_win32.h under windows. It feels good.

You Start Using Build Automation

You have come to find that dropping cpp files into a vcproj isn’t the best way to manage your project. This is drilled home when you come to compile it on another platform. So from now on you use something like premake to build your project files. Now you can generate projects for Visual Studio, GMake, XCode, CodeBlocks and anything else you would ever want to generate them for. You are portable.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s