Jump to content

  • Log In with Google      Sign In   
  • Create Account

Awesome job so far everyone! Please give us your feedback on how our article efforts are going. We still need more finished articles for our May contest theme: Remake the Classics

cdoty

Member Since 14 Jul 2000
Offline Last Active May 17 2013 04:18 PM
-----

#4995937 Create a Game Engine

Posted by cdoty on 31 October 2012 - 02:52 PM


http://scientificnin...mes-not-engines


This is really bad advice.


It's actually pretty solid advice, but it's missing a few caveats.

You need to be disciplined enough to take the time to refactor and clean up your code. If you're writing a bunch of functions to handle sprites, combine those functions into a unit of some sort (class, namespace, etc.). And, combine functions into generic versions when possible.

And, you need to be able to admit that the current solution isn't working very well, and start over. If you're doing this all along, you should never have to throw out the entire code base but only rewrite a specific module. The longer a bad module is left in place, the harder it is to remove or repair.

The idea boils down to iterating on the existing code until you can complete the game; and not writing code before you need it. It also accounts for the fact that it incredibly hard to anticipate every bit of code you need to complete a game.


#4809586 The importance of hardware knowledge?

Posted by cdoty on 11 May 2011 - 04:50 PM

How many of you would be able to make a working, programable computer? (i.e. not from pre-built parts)
How important is to know these things?
If the answer to the first question is, not many, is it worrying that the power to make computers is restricted to very few entities?
As computer engineers/scientists should we all be learning not only how to program and use software, but also how to make computers, and how they phsyically work?
Should we all have made, or make, our own little computer from scratch?


While not exactly easy to make a working computer, it is far easier than say 5 or 10 years ago with the system on a chip designs being so common place. The SOC concept has captured all of the requirements to build a computer, outside a few minor connection points, in a single chip.

The importance depends on what you plan to do. If you're going into electronic/chip design, it's very important to understand. As a software developer, understanding the system on a chip concepts may be enough. I would guess, there are programmers that have never dealt with hardware and only understand the concept of programming with a supplied API.

I don't think it's too worrying, we've moved past the point of needing to build computers for every project. Similar to assembly language programming, there are a people that can do it, but it's very rarely needed as a normal programmer.

It's nice to have the knowledge how computers work at a low level, but it's not as useful as it once was. It would be quicker to learn about pipeline stalls than it would be to learn the complete operations of a microprocessor, either way you have the applicable knowledge to optimize code.

As far a building a computer, time is better spent learning more relevant concepts. The amount of information that must be learned to go from assembly language to an object oriented programming language is huge; so you either learn less about each technique or you learn more about a smaller number of techniques.


PARTNERS