Category: Craftsmanship

  • The Software Craftsman

    I just finished a book on software craftsmanship: The Software Craftsman – Professionalism, Pragmatism, Pride. It’s a good intro to what a craftsman does and what he should do. I enjoyed reading it. Throughout the book I kept nodding, saying “yes,” or “agreed.” It’s a good book for junior programmers. It can help you get…

    Read more...

  • Write Debuggable Code!

    “One of the differences between a great programmer and a bad programmer is that a great programmer adds logging and tools that make it easy to debug the program when things fail.” [reference below] I’m sure you’ve experienced a good share of mystery/quiet/business-as-usual failures. Wouldn’t it be nice to have code that is smart to…

    Read more...

  • Fundamentals of programming

    Almost all of us know the GoF patterns. Perhaps not all of the patterns. I forget them from time to time, but with more experience, I remember more and more. (I keep forgetting what a Memento is. :)) As important as they are, I think there are other, perhaps more important patterns and principles that…

    Read more...

  • The Top 10 Attributes of a Great Programmer

    While looking at the top weekly links on dzone (good way to see what are the important things that happened), I came across a very intriguing entry: The Top 10 Attributes of a Great Programmer by Steve Riley. These always “get me,” but a lot of times they end up being just a quick browse. This one…

    Read more...

  • Writing Good Code

    Is it because of pressure? Is it because you want to be faster than others? Or is it just because that’s the way you’ve been doing things and it has worked for you? I hope it’s not the case. I hope you take the time to do it right. Because if not, as the saying…

    Read more...

  • What makes a great software engineer?

    Nicholas Zakas, the author of what I consider the best JavaScript book out there, is becoming one of my favorite bloggers! (I should let him know about that. :)) In his recent blog post, he talks about qualities of great software developers. It’s a great post. I highly recommend reading the whole post. Here’s my…

    Read more...

  • Make Quality a Requirement

    As programmers, we want to finish things fast. We want to impress our boss. We want to be better and always finish before others. So we do. We finish things as fast as possible. Because the requirement was to complete the things that were on the list. Just make it work. What’s the end result?…

    Read more...

  • Quality and Speed

    Uncle Bob wrote an excellent post, Speed Kills. Is there a tradeoff between speed and quality, he asks. If by “speed” you mean delivering working softwarequickly and repeatably release after release after release; thenmaintaining high quality is your only option. I couldn’t agree more. In the long run, the only way you can move fast…

    Read more...

  • 10 Ways to "Stay on Top"

    If you consider yourself a good programmer, great! But is this going to hold true, two years, five years from now? If you are not going to learn new things, I can safely say that you’re going to be “out of date.” If you want to stay still, you have to continue moving: being a…

    Read more...

  • Top 5 Attributes of Highly Effective Programmers

    Ben Watson, whose blog I just came across, lists the following Top 5 Attributes… Humility Love of Learning Detail-orientedness Adaptability Passion I think this is a very good list. I think effective programmers are humble. Why? Because you have to be able to work well with others. Just from my experience, it’s hard to work…

    Read more...

Recent Posts

Tags

2010 2011 abstraction advanced Books code concepts Craftsmanship design patterns encapsulation goals gof grasp immutability innerclass Java javascript jpa learning patterns practicing quality Quotes reading recommended reference solid tdd testing unclebob

Comments

  1. Good blog! I really love how it is simple on my eyes and the data are well written. I'm wondering…