Hi, my name is Josh and I'm a Programmer.
I began down the path to becoming a programmer approximately nine and a half years ago as a EE student taking my first C class. Although I changed majors and schools after that first year I did get a student job working as a web developer. My first experience with web application servers was with Tango; there's a reason that's not one of the major web application servers used on the net today. My first experience with databases was with either Access or Filemaker - I can't remember which as you can't say I was exactly fond of either. During my tenure in that job I progressed to ColdFusion and taught myself the basics of relational database design. After leaving that job and nearing the completion of my University career I taught myself PHP and got thrown into Oracle while in another student position.
Early Professional Experience
After finishing school I got a job as a web developer at a small software company specializing in mapping technologies and continue to work there today. One of my primary roles was the maintenance and development of our map server using ColdFusion, MSSQL, and several custom ColdFusion plugins. The map server is a "generation 1" map server displaying a single, large image that can be navigated by clicking somewhere on the image or pressing arrows - the result of which is reloading the entire page with a fresh images. While there have been certain challenging aspects to working on this version (any many trying to use it for purposes it wasn't designed) the experience has also left a lot to be desired. Since this wasn't the only project I worked on, and I was lukewarm on this one, I found myself questioning whether I even wanted to do any kind of programming.
Putting all these experiences together I learned that I love programming. I love trying to solve problems in a way that requires thought and planning, but sometimes just trial-and-error. I love the challenge of programming. When somebody thinks it can't be done, but I know it must be possible, I won't give up until I make it work. Sometimes the solutions may not be the most elegant, but somehow I get it done.
My goal as a programmer is to become the best programmer I can be. I may never the the "best" programmer, but I think I am already a pretty good programmer and can become a very good programmer. My attempt will be to learn a little about a lot, a lot about a little, and get as wide as experience as possible.
My goal with this blog is partly to share what I've learned along the way, but more importantly to learn from the vast knowledge of the people out there. Some may have suggestions, some may have praise, and some may have criticism (my favorite as long as it's constructive).
Welcome to my blog.