Constraints Can Be Good

We often think of constraints as being a bad thing.  Far often we don’t recognize that constraints force us to grow.

Let’s say you are writing a video chat program.  With no restrictions, you would likely require a gigabit internet connection with zero lost packets and a sub 50 millisecond ping, and you’d write it in whatever language you want.  But let’s say that you now have a set of restrictions on it: suppose that it has to run on a mobile device.

  • You will likely be CPU limited, bandwidth limited, and have a maximum camera resolution that you can use (as well as a maximum display resolution).
  • You will have to be aware of power consumption and battery life.
  • You will likely be restricted to a subset of programming languages and APIs.

Restrictions like this are going to force you to be more efficient and more creative in how you solve the original problem.  As a result, whatever solution you end up creating will likely be a lot more interesting than if you had unlimited CPU/bandwidth.

I have a huge amount of respect for those early programmers that had to deal with very tight constraints who still managed to create some amazing programs and games.


Leave a Reply

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

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

Google+ photo

You are commenting using your Google+ 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 )


Connecting to %s