Mar 9, 2011

Development Ignorance

Good talk by Dan North on how being aware of your ignorance for various aspects of a project, can indeed help you: http://www.infoq.com/presentations/Deliberate-Discovery

Mar 7, 2011

Drone-based software development

As I'm growing older, I'm starting to question more and more whether top-notch code quality and design are really necessary for a successful product.
Don't get me wrong, I'm still all in favor of the craftsmanship stuff, but given the fact that clients don't care about the code but the end-product and that most of developers I come across now-a-days are just drones, you have to start wondering...

Joshua Kerievsky's recent post on this topic: http://tinyurl.com/5vnx3mx

Mar 3, 2011

Conscious Design ?

Check out this good post by Michael Feathers: http://michaelfeathers.typepad.com/michael_feathers_blog/2011/03/data-rich-development.html

He rightfully raises the question of whether or not any kind of conscious design happens anymore in software projects, as opposed to 2-3 years ago. All of this, due to the hype of the Agile methodologies which, when adopted by drones, get interpreted of just banging out code, without much thought.Also, you get a lot of "framework-driven" design, where just by adopting a framework you code in a certain way, not really bothering with the core principles. Speaking of core principles, have look at this "old-school" site with a lot of valuable resources: http://www.laputan.org/

...and please stop being just code drones and actually start thinking about the code you write.
 

Feb 22, 2011

Internal vs External Quality

Try explaining the difference to any kind of manager who hasn't come up from the "trenches of programming" (http://martinfowler.com/bliki/TradableQualityHypothesis.html)

Feb 9, 2011

Coders@Work

"...Then there was another book that everybody thought was the greatest thing ever in that same period—Design Patterns—which I just thought was crap. It was just like, programming via cut and paste. Rather than thinking through your task you looked through the recipe book and found something that maybe, kinda, sorta felt like it, and then just aped it. That’s not programming; that’s a coloring book. But a lot of people seemed to love it. Then in meetings they’d be tossing around all this terminology they got out of that book. Like, the inverse, reverse, double-back-flip pattern—whatever. 
Oh, you mean a loop? OK." - jwz

Feb 7, 2011

Übergeneralization

Every once in a while, when writing code, you may find yourself trying to write it in such a way that it can be "easily extended" and solve a whole lot more than originally intended. 

Have a look at this: http://chaosinmotion.com/blog/?p=622 to see what I mean.