by: Grant Palin
This post was originally submitted to
The Great Devlicio.us Giveaway
Up until about a year ago, I was programming in .NET using just Visual Studio. I was
used to the tedium of manually compiling, testing, backing up projects, writing
documentation, and so on. There was no awareness of tools and techniques, just
much manual work.
My curiosity piqued by various writings on the web, I read an article about source
control with Subversion. And in a flash, I realized that I was missing out on
numerous tools and techniques. So I proceeded to learn about Subversion, and set
up repositories for my projects.
And that was just the beginning. I set out to read about other practices and tools.
I read, I experimented, I wrote, I revised, and I learned.
And now I feel I am much more knowledgeable than I was a year ago. Over that time,
I have started using source control, build automation, code analysis and metrics,
design patterns, and unit testing. I have applied these concepts to ongoing projects,
and it has been quite an adventure.
I now know that when next I start a new project, I will have knowledge of tools and
techniques to simplify and guide my programming efforts, both in getting started and
in the long run. And these can be applied to other languages and platforms outside
of .NET and Windows. I have also been applying these ideas to one of my PHP projects.
The concepts are the same.
All of this learning has been done on my own time, for my own purposes. I now realize
that many of these practices could be useful at my day job. I have helped to set up
a Subversion server, and move one of our bigger projects into source control. I
have also initiated discussions on unit testing, build automation, and code metrics.
There is interest among my coworkers on the subject, and it is my hope to be able to
apply my new knowledge for the benefit of our projects.
Just think: if I had not read that first article on Subversion, I might have carried
on with my projects in the manual tedious way. I might not have learned anything
new. But I did, and I started moving beyond my boundaries.
And after all of this, I can see that there is still much more to be learned.
I shall continue to read about and explore the tools and practices, and apply
them if I find them useful. My main lesson here is that it is important to be
aware of what information is out there, and how it can be used to one’s benefit.
Thanks to some initial exploration, I am now a better programmer, and will continue
to better myself and my skills.
08-04-2008 4:33 AM