Coding Guidelines: Finding the Art in the Science - Part 2

After writing Part 1 of this post, I received a very awesome Christmas gift - "The Pragmatic Programmer: From Journeyman to Master" by Andrew Hunt & Dave Thomas. While I've only dug into the first few chapters of this book, I like the majority of what is said. While there was one section of Chapter 1 that really struck a chord with me (section 6 where the authors speak about communication of various types), reading the book spurred me to take a look around pragprog.com, something that I haven't done for quite a while.

While at pragprog.com, I stumbled across their magazine, PragPub. In the September 2009 magazine there is a wonderful article titled, "Beauty in Code." The entire article deals with understanding the function and meaning of these unique snippets of code. While this is a fun challenge (I may use this in the classroom someday), it makes a solid point regarding development that is very well stated in the article:

We translate user stories into source code. How much of it survives the operation? More importantly, how much of it gets lost in the translation?

The issue being dealt with here is clarity. Clarity in code is vital and adds directly to the beauty of what is being developed in both form in function. While I could rant on this topic for quite some time, I will simply let this simmer for a while.

I leave you with two excellent quotes. The first is from the article I've discussed and the other is from Java.next #4: Immutability.

If you do it right, the beauty you see is multifaceted. If the code (as it runs) is as beautiful as the code (as it is written), then you are singing it just right.

Languages are not about what they make possible, but about what they make beautiful.

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">