From Surveying to Programming

Recently I lost my job as a land surveyor. Although I had a good run in the industry, the subprime mortgage crisis and the economic recession destroyed the ability of the civil engineering firms I worked for to win the large land development contracts they had become accustomed to. Lending quickly dried up, and with it went the pipeline and flow of work. Almost all of my fellow land surveyors at my office found themselves sacked, as did many of my colleagues in the same profession across the country here in the United States. 

This turn of events was hard on me, because I truly loved my job and was very enthusiastic about land surveying. Not long after adjusting to the early hours in this industry, I couldn’t wait to get out of bed at 5AM every weekday and head for the great outdoors to start work. I enjoyed learning from the pros with decades of experience in surveying, and I felt great about working in an outdoor “office” which often changed on a daily basis. The desire to do forestry and engineering surveys, property staking, setting corner monuments, locating utilities, and conducting topographic work was in my blood, and I thought I would be doing this work for the rest of my career. How utterly, completely wrong I was.

When the economy began to tank and ominous rumours began bouncing around the office, I decided that instead of getting consumed by the pressure I would simply take a break. I went to Israel for a few weeks and tried to forget about work. The story of what happened on that trip will have to wait for another blog post.

While in Haifa, Israel I knew I was in for a big change of direction in my life. On the way to the beach with a friend I noticed Google’s Haifa offices and also those of Microsoft, and I began to wonder what the people who worked in those offices were doing in a way that I never would have stopped to consider seeing the original offices of the same companies in my own country.

I thought back to high school, when I learned BASIC and started to program games on PCs in the computer lab, and advanced to learning C in college. Although I had dabbled in programming while working as a surveyor, I had never considering myself a “real” programmer but rather a consumer of technology. I realised that I had been thinking about these things the wrong way, and my creative impulse began to rekindle. Suddenly having copious amounts of free time on my hands, I began to talk to and hang out with real programmers, and get excited about computing again.

After returning home and losing my job, I decided that land surveying was unlikely to come back and I needed to stay in engineering but get back into hands-on programming. So I took a few proactive measures. I dusted off my copies of The C Programming Language and The Unix Programming Environment, installed a copy of Debian Linux on a castoff PC, downloaded Firefox and a number of essential utilities, and started hanging out on IRC once again. Pretty soon I was experimenting with PHP and eventually discovered Python. The old feeling of technological adventure and new horizons began to wash over me, and my irons were back in the fire.

If only I knew then how difficult the coming months would be. I consoled myself with the knowledge that anything worth doing would not be easy. More on that later.

The Future of Java

A discussion with Joshua Bloch on the future of Java.

O’Reilly Has a Buy One, Get One Free eBook Deal This Month

They’re DRM-free, offer “lifetime access” and the updates are free. You may want to act now, because this deal ends on 4/30.

Zed Shaw is writing a new Python book

Zed Shaw is writing a new Python book for beginners. It’s very much a work in progress, but I’m liking how he assumes no previous programming experience at all, and what he says are the three most important qualities a programmer needs to succeed: Reading and writing, attention to detail, and spotting differences. He’s looking for suggestions on how to improve the book. I’ll be checking back to read as the book is completed. So far, so good: the first few chapters are straightforward and highly compelling.

Welcome!

This new blog is where I’ll post exclusively about programming and technology. I’m a land surveyor with experience in professional-grade GPS, GIS, and LandXML. Lately, I’ve been getting back into programming after a long layoff. I’m currently learning how to get things done in Python. This blog will focus on Python, PHP, MySQL, Apache, and Linux (i.e., the LAMP stack), with forays into technology news and events in general. Enjoy!