My Journey as a Software Craftsman

I began typing at a very young age.

Young Stew

In 1998, my dad bought an email account through an Internet Service Provider. Along with the email came 5 MB or website storage. I learned HTML and quickly filled the website with animated gifs.

First Job

With two days of HTML experience, I landed a job as a Web Content Administrator at the Stillwater News Press. At that time they called me a "Webmaster". I was responsible for publishing the daily newspaper articles to the website.

From that point on, I was addicted to the Web. I built websites for the Human Resource Management Association at Oklahoma State University. I also built a site for the Student Academic Mentor program.

It was my senior year at OSU and switching to a computer science major was not in the cards. I completed my degree and worked for a year. Then I went to the Information Technology Institute. It was an intensive nine months of programming, and I ended up graduating valedictorian. Unfortunately, the school was a casualty of the Dot-com bubble and closed down.

First Programming Job

Fresh out of IT boot camp, I landed a job at petroWEB as a Web Developer. Graduating top of my class gave me a lot of confidence. I worked hard to learn ASP, but I stopped when I had learned enough to do my job.

The Hacker has a different attitude. After sort of getting the hang of a thing, he or she is willing to stay on the plateau indefinitely.

I was the hacker from George Leonard's Mastery book. I would work hard and do my job, but only my job. I didn't push myself. This would be my pattern at I get It and the College for Financial Planning up until 2009.

For 10 years I got by on being smart and improvising. In the book, Nurture Shock by Po Bronson, chapter 1 talked about the "inverse power of praise". My friends and family would tell me how good I was with computers. I graduated top of my class, work was easy for me. This kind of praise lulled me into a false sense of security. All of that crumbled in 2009.

For the first time in my career, I had a chance to work on a Greenfield project with a Master Craftsman. He wanted to use:

I was completely lost.

This was the shock that I needed to wake me up. This experience got me into Software Craftsmanship, user groups, and writing this article. It is humbling to describe my journey. It is far from over, but I finally feel like I am on the path to mastery.

I began to read anything I could get my hands on about these topics. You can view my library by visiting my Amazon profile profile page. I also wrote about what I have learned from these books on this website.

I then began to practice and improve my skills.

Train, practice, repeat, build a pattern, and acquire…

I need to remember to pause as I program.

If you practice pausing to take inventory even in the middle of actions, the procedure eventually becomes automatic, at which point it is so swift it is virtually instantaneous.

Whether you are on the mats or in the middle of everyday routines, time off can be more important than time on. You learn to weigh all relevant data in your goals and then strategize the best plan to get you where you want to be—leaving enough flexibility, of course, to recalculate and restrategize as you flow.
Joseph Cardillo

Beyond book smarts, a programmer needs time and motivation. How do you become a better programmer? By programming! This quote I modified from Chess for Dummies by James Eade sums it up.

After most people discover that I play chess program, they usually say, "You must be very smart." They should instead say, "You must have a lot of spare time."
James Eade

In January 2014 I was promoted to Quality Engineer. I would tell my friends, "Instead of making stuff, I'm breaking stuff." After 17 years as a Web developer I was ready to become a tester, but I didn't want to give up programming. So I reinvented myself and found that testing was a joy. In May 2016 I was promoted to Senior Quality Engineer. My focus is now on test automation along with test planning and test case management.

This quote represents the content of this website.

The material presented here neither is complete, nor is it entirely firmly established at the present date. Furthermore, it is hoped that this manual will bring about comments and questions by those who program.