|
This post originated from an RSS feed registered with Ruby Buzz
by Matt Williams.
|
Original Post: The hardest thing
Feed Title: Ruby Blender
Feed URL: http://feeds2.feedburner.com/RubyBlender
Feed Description: This blog contains short-ish ruby tips, hints, and techniques.
|
Latest Ruby Buzz Posts
Latest Ruby Buzz Posts by Matt Williams
Latest Posts From Ruby Blender
|
|
The hardest thing to do while programming is not the programming itself. It is the "Not Programming".
That is to say, the hardest part is not adding feature #65353, which you're probably never going to use, but it makes the code ever so much more flexible. It is the question of "Why am I doing this? Do I really need it now (or ever)?"
Lately I've very much been on a simplicity kick; looking around at a lot of projects around me and how they're <strike>buzzword compliant</strike>over architected, I can't help but to think of all the ways in which people are prone to feeping creaturitis and Big Mac Programming.
I think that there are several things which can help -- in fact, I've coined a phrase "Just Enough Programming" -- more about that will follow, but here are a few things to help with "Not Programming":
- BDD and/or TDD, although I think that BDD is better about understanding why we are doing something.
- DRY code
- Lighter frameworks -- ones which do not require as many lines of configuration as they do of code. Infinite scalability is for imps and monkeys with typewriters.
- Declarative code -- it can be easier to limit ourselves this way (by the same token, do not fall into the trap of Rococo Programming)
A student once approached the master and asked, "Does a Foo have the Bar nature?", to which the master replied "Groo" and returned to his meditations.
- Shorter integration cycles
Occam's Razor: "Shaves as close as a blade or your money back".
Read: The hardest thing