One of the things I enjoy most about Freelance programming, is the fact that I work from home most of the time. I get out of bed, pop my morning allergy and caffeine pills, power on my computer, and I check Facebook and e-mail. By the time I do that, I am as ready as I will ever be, to continue work on my latest contract(s).
Over the course of the last 10 years, my full-time employment opportunities were either short lived due to lay-offs, or I simply despised doing the same repetitive tasks time and time again. I am a creature of the night as well, so some of my best programming has come “after hours”.
It wasn’t until I moved down south, that I found out what my true calling was in this world. I always wanted to be a computer repair person when I grew up (at the age of 5), then I refined it to Network Administrator (age 14), and I kept with that until 26.
I had a lot of experience programming through that time span, but always got burned out doing it. I think in part, because of what I was programming, as well as the circumstances arising in my early 20’s. Life hasn’t always been peaches and cream, but computers kept me going.
Down south, I found many opportunities that were non-existent (as far as I knew) up north. My reputation spread like wildfire (some great, some bad). I would either have short lived dry spells of contracts, or a ton of them drop on me like a pile of bricks. Either way, it was the programming that kept edging itself to the top.
My field of expertise in coding is customization and integration. I work with semi proprietary software that usually always accesses a form of SQL (MySQL, MS SQL). I highly enjoy slapping a WAMP (Windows, Apache, MySQL, PHP) server on their servers, make a portal using AJAX and web 2.0 techniques, and just go to town. Enhancing the capabilities beyond what their software can do has always driven more work to me when they have an idea.
Thinking outside the box, and removing the phrase “It can’t be done” from my vocabulary has kept food on my table, a roof over my head, and has opened the doors to many other ventures. One key component to all of this, is critical thinking.
Critical thinking isn’t just for religion, politics, or philosophy. It’s a way of life. Bringing critical thinking into programming has pushed me far beyond what I had ever imagined. It has challenged me to rethink my programming style, enhance old techniques, and broaden my horizon on what I can apply it to.
The sad thing, is critical thinking can’t be taught. It’s like one of those Neo moments on the Matrix. “I can only show you the door” etc. It just gradually develops, but when it does eventually hit you full on, the best way to explain it is using a phrase from a friend of mine up north “It’s like reality shifting without a clutch”.
– The Secular Nerd