Automated Build Flurry

Posted by Ryan Baxter Tue, 12 Feb 2008 22:39:00 GMT

Quite a few automated build articles have been cropping up this week over at CodeBetter.Com. The first, How do you build your application?, by Kyle Baley, asks Developers of the .NET community how they manage builds using the NAnt toolkit. Jeffrey Palermo responded with a helpful post including a link to his own NAnt build template. Kyle then followed-up with a few humorous links to graphics of common build scenarios.

CodeBetter.Com has provided me with an overwhelming amount of great .NET content over the years and the above articles couldn’t have arrived at a better time. My spare cycles at Primus Technologies Corporation have been few and far between, but those found have been spent configuring the companies Continous Integration system. I must admit that I was pleased that my own NAnt build script looked remarkably similar to Jeffrey Palermo’s template. :)

Of all of the work involved in developing software, build automation and Continuous Integration are my favorite. When Continuous Integration is implemented correctly it should function like an assembly line. Just like Ford Motor Company, your software will see improvements in efficiency and development time. If you’re a .NET Developer and confused by what I’ve written thus far then you should definitely familiarize yourself with these concepts. At the very least, I’d recommend researching the following tools:

In addition, Scott Hanselman has a few podcasts that could also be helpful. Listen carefully, read diligently, and improve your software. Be better at your craft.

The Way to Becoming a Better Developer Addendum

Posted by Ryan Baxter Thu, 13 Sep 2007 12:55:00 GMT

Peter Norvig's Teach Yourself Programming in Ten Years better describes what I was trying to illustrate in the martial arts analogy of my last post, The Way to Becoming a Better Developer. Great article Peter! Keep up the good work.

The Way to Becoming a Better Developer

Posted by Ryan Baxter Fri, 07 Sep 2007 19:13:00 GMT

Wikipedia defines shibumi as “a Japanese word which refers to a particular aesthetic of simple, subtle, and unobtrusive beauty”. Ruby, 37signals, Nintendo, and Apple all have it. As a developer, I can often find shibumi in programming languages, websites, and applications, but have a hard time characterizing what it takes to be a master programmer. I don’t think I’m alone. The blogosphere is full of the self-help affirmations of programmers wishing to better themselves at their craft. How can we become better at what we do?

I don’t have the perfect answer, but borrowing from my experience in teaching martial arts may provide a clue. A frustrated student once asked me how he could become better at performing his kata. I responded by telling him that practice by repetition is the best way to improve form. Under his breath he muttered, “Practice makes perfect, but nobody is perfect”. Apparently it wasn’t the answer he was looking for. I suspect that most programmers would react similarly if told to keep practicing.

Judo, Taekwondo, and Karate-do all end with the letters “d-o”. “Do” is the Japanese pronunciation of the Chinese word, ”Tao”, meaning “Path” or “Way”. Each of these martial arts is merely a set of instructions for following a path. What the young student didn’t understand is that practice, in martial arts, is not a means for perfection. Practice is the goal. The key to becoming a better programmer is accepting that practice, focus, and attention are the only way to improve.

Older posts: 1 2 3