A title like that implies some kind of existential inspection of our lives. Are we here to fulfill some kind of extra-cosmic purpose? Did some higher power put us here for his amusement? Are we merely pawns on a chessboard, unfathomable in scope? Or, are we merely here because we're here - the anthropic principle applying without justice or merit?
Actually, none of that applies to this post. We're here, in the context of this day and this blog, to watch as I relearn .NET programming.
See, before I was a buyer at ThinkGeek, I wrote code for a living. I got started automating Excel spreadsheets and creating the most basic websites for a tiny little consulting company before finding myself in Austin, Texas, working for The Big Blue Dell monstrosity. First, I developed and managed their Dell Jobs page, and later worked in their eCommerce group, helping to collect $54million a day from people who wanted bland grey towers and plastic slabtops. I was proud of my work - developing innovative methods to process discounts, working to migrate our code-base to a new content-management system, setting up international revisions of our checkout software for other Dell regions. It was fun, challenging, and stressfull. The image on the right is a screenshot of the checkout software I helped write that's still there.
I loved working at Dell because there were some of the brightest people there - coding giants that I learned from every single day. There were also, however, businessmen that, in an attempt to squeeze every dollar out of their budgets, experimented with outsourcing. Those of us "expensive" coders with institutional and cultural experience were deemed less valuable than our Indian counterparts who could work for a quarter of what we made. It mattered less that projects took 3 times longer to complete due to the miscommunication, turnover, and management overhead. In the quarterly spreadsheets, though, offshoring looked amazing.
So the writing was on the wall for us. Remain at Dell as an individual contributor, and risk being laid off at any time, or elevate to management or as a "superhero" development lead. In a development environment as large as Dell's was, and being an average coder, my chances of elevation were pretty slim. It was time to go. I put my resume out there, and was snatched up in less than a week of looking, and became a development manager at Wedding juggernaut, The Knot.
Working there was exciting - we were a small team, tasked with rearchitecting an old site into a new framework, but when the chance came to take a dream job at ThinkGeek as a buyer, and move back to my hometown, I snapped up the chance.
I've been doing this now for almost 7 years, and I miss the projects, the planning, the architecture... Troubleshooting and fixing bugs, while it sounds tedious, scratched an itch to solve problems and employ logic. I was good at it, and my skills have badly atrophied.
So, I'm back trying to pick up .NET. It's been 5 major versions since .NET 1.1, and while some elements are comfortable and familiar, there are some that are so foreign to me as to be practically alien. I feel intimidated by the changes, but I have to remember I learned .NET programming and object oriented methodologies once, I can learn them again. This blog will play, in the short term, as a document to my attempt to relearn .NET, and pick up what I might have lost.