Progress Report 4

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Whoops, I’m a bit late with my report after 7 months of transition away from Microsoft and on to freer pastures. Life, as they say, has been getting in the way.

  • At this point, I pretty much do not touch the Windows box except to put together the Daily Grind and to keep up my business bookkeeping in QuickBooks. My accountant is pretty well tied to the latter. We’re planning a physical move across the country later this year, if all goes well, which will probably provide an opportunity for switching accountants and accounting packages.
  • I haven’t written a line of code in anything other than Ruby (and more specifically RoR) in the last month. The two active Rails projects I have are moving along fine. I’m getting in good amounts of billable hours at a decent rate, both clients are happy, and I’m on track to complete the work on time and under budget.
  • The “on time and under budget” part is a two-edged sword: it’s getting to the point where I ought to be scratching for more work again, though I also need to follow up with the existing customers to see whether they want to extend the engagements.
  • More and more I know what I’m doing in RoR without having to look it up, though I still am far from true expertise in the environment. I still need to really be pounding out more code every day to get to that point. I’ve always learned computer languages by immersion with reference materials handy, though, so I’m satisfied with this state of affairs.
  • We recently purchased our second island in Second Life, and rentals are starting to throw off some profit at a decent ROI. So while SL doesn’t look as likely to turn into a full-time job as it did a couple of months ago, it may yet become a reasonably profitable hobby.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Here I am, half a year into my experiment with cutting loose from Microsoft, and I think I can pronounce it a success:

  • I now have two Rails consulting jobs running, and I’m as busy on that front as I want to be from now until about the end of August, which is about as far out as my consulting time has ever been assured. This doesn’t mean that I’m not looking for more, but it means that I’m feeling a comfortable cushion, and a confidence that I’ll find more work to keep the pipeline full. My Rails rate is nowhere near what my top C# rate was (or for that matter, what my top Netware rate was many years ago), but that’s OK.
  • I’ve got a couple of leads on actual US-dollar paying Second Life work, which I am actively pursuing.
  • I still don’t feel like I’ve reached the “expert” level with Rails yet, but at least I can get it to mostly do what I want with minimal fuss. The times when I go off the clock to research something are getting fewer and taking less time.
  • My .NET skills are rapidly deteriorating; I haven’t written a line of C# or VB code in months.
  • I’m moved almost entirely to the Mac for my day-to-day work, with the exception of maintaining the Larkware site.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Five months in to my twelve-month plan of getting off the Microsoft platform and things are still going reasonably well:

  • I enjoyed myself at RailsConf and was pleased to discover that I actually knew more about Rails than many attendees. I made some good contacts and on the whole it was probably worth the money I spent, despite the fact that I didn’t nail down any work there and was rather ill the last couple of days.
  • My first Rails app is about to go live; the client has been asking for some changes, and has slowed the deployment schedule by a couple of weeks, but they’re still happy.
  • I’m getting a bit worried that more Rails work has not yet appeared on my doorstep. I have a chance to tackle another .NET-related book, but frankly at this point I’d rather not take it. My disillusionment with Microsoft is worse than ever after their recent attack on Jamie Cansdale and TestDriven.NET.
  • I’m still spending plenty of time in Second Life, though that time is still definitely not generating positive cashflow yet; I’ve been chatting with a few people about potential future business opportunities there, but that’s a long shot.
  • Writing for Web Worker Daily on a daily basis has been rewarding and helps fill in a bit of the income gap.

So, on the whole, I’m still feeling positive about life and work, but I still need to make more contacts and nail down some more contracts to convince myself that this move is going to work out.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Four months into the year of giving up on Microsoft and here’s where things stand…

  • I’m actively working on my first Rails application for a paying client. It’s not gone live yet, but we’re on track to deploy June 1. I’ve cut my rate substantially in recognition that this is a learning experience for all concerned; fortunately, it’s a client who I’ve got a good history of mutual respect with.
  • So far freelance work is keeping food on the table, between the one Rails app and various bits of writing. I’d like to get to where I’m doing more coding and less writing.
  • Second Life is the major distraction in my first life. I’m sniffing around some business opportunities there but nothing has gelled.
  • Traffic here at A Fresh Cup continues to rise roughly linearly every month. Thanks to all readers & commenters.
  • Traffic over at Larkware hasn’t started dropping off yet, but ad sales are declining and I’m clearly starting to lose touch with what Microsoft is up to. My self-imposed moratorium on covering anything after .NET 2.0 has made most of the news out of MIX this week irrelevant, for example. I just don’t have time to keep up with their latest and reinvent my own career.
  • Looking forward to being at RailsConf in a couple of weeks. I’ll be aggressively looking for more consulting opportunities there.
  • I did buy a Mac Book Pro to take to RailsConf with me, so the financial picture for the year as a whole is looking even less great. But then, that’s not unexpected. As I’ve said all along, I’m willing to take a hit this year to get myself back on the right track.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

3 months into the 12-month clock for reinventing my career, so it’s time to take stock again:

  • I quit my full-time .NET consulting job, effective last Friday. This was 9 months sooner than originally planned, but the time was right for a lot of reasons. This means that I’m definitely interested in talking to people who want to hire a freelancer (though I’m actually fairly busy for the month of April already). While I expect to take on some more .NET work to hold things together, my first preference is going to go to Rails work if I can find any, even if that means substantially discounting my rate.
  • I didn’t do a lot of Rails work in March, mainly through lack of time (which is one reason for the sudden change of job status). I did find time to explore some of the interfaces between Rails code and LSL, the scripting language used in Second Life, which has been fun if not terribly instructive or lucrative. This has also led me to the Rubyists of Second Life group, which may end up being my local user’s group (for some value of “local”).
  • I’m now writing daily pieces for Web Worker Daily . This isn’t going to be money to live on, and I don’t expect to be a full-time writer, but it’s good fill-in money and I enjoy having the new direction to stretch in. Good new set of contacts, too.
  • Traffic on this blog is still going up, roughly linearly by month. That’s good, though I still need to figure out what all the doubling in the XML feed is about.
  • I’ll definitely be trolling for business at RailsConf. During April I need to figure out what to do about a Mac Book (Pro?) to take along with me. At this point, roughly 75% of my daily desktop work is now on the Mac, so bringing a Windows laptop along isn’t going to cut it.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Two months into the year. That’s 1/6 of the time I have allotted myself for throwing out the old career and bringing in the new. Time to take stock again.

I continue to get more comfortable working in Rails, and have put up several sites using this framework, though nothing too spectacular and all works in progress (links over in the sidebar). But given that the best way to learn a new language is to write code, and I’m writing code every night, I’m happy with that. I’m also doing lots of reading. I’m sure there are plenty more “aha!” moments ahead of me, and I would hardly claim to be fluent in Rails yet, but the pieces are fitting together for me, and with books at my side I can usually make it do what I want with some research time.

I need to somehow find more reading time; there are several books that I want to finish (including Programming Ruby and Mac OS X: The Missing Manual that I just haven’t had time for. Part of the problem is that these books are too darned big to read in the bath.

This blog has doubled in pageviews over the last month (which is good) despite the continued problem with doubles in the feed (which is bad). The latter, I think, is down to me making the domain available both with and without www, but I’ve not yet figured out how to solve the problem, even though I’ve made several abortive attempts to do so with both the Mephisto code and with Apache. I’ve noticed the same problem with some other Mephisto blogs in my own feed list. I haven’t given up yet. Anyhow, I’ll be happy if readership keeps going up at this rate; hopefully other people are finding the linky-posts useful.

As I’ve mentioned before, I’m going to RailsConf in May. My interim goal at this point is to feel confident enough of my Rails code by then that I can actually sniff around for some project involvement without feeling like an utter imposter.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

One month into 2007 I seem to have settled on Rails as my new direction of choice, at least for the time being. The way that Rails applications are put together appeals to me and it seems like a good fit for the size of application that I enjoy building. On a more pragmatic level, it also has good buzz and the change of getting work appears, at least in the medium run, to be reasonable (which puts it ahead of some potentially technically superior alternatives for my own particular circumstances).

At this point, though I can hardly claim to be fluent in Rails, I’ve at least taken a broad survey of the whole framework. I’m reasonably comfortable banging out basic sites that hook up databases to Web pages, and I have some sense of which bits do what. I can find what I’m looking for in the documentation and books with a minimum for fuss.

The next month or so goes for refining those skills, going into a bit more depth, and really digging into Ruby, I think. I need to get more than a passing acquaintance with the underlying language, and learn more Rails simply by using it more. I’ll probably try to write an article or two as well – that’s one of the best ways I know to develop my own understanding. Stay tuned.

To Conference or Not to Conference?

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Now that I’m moving into a new universe of development, I need to start thinking seriously about the conference circuit again. RailsConf is coming up in May in the relatively-close venue of Portland, and Amy Hoy has a roundup of some smaller Ruby conferences on her weblog today.

Certainly conferences were an important part of my personal branding strategy when I got started in coding for the Microsoft platform – but that was speaking at conferences, not just attending them. I do not think I’ll be in a position to pitch myself as a speaker until very late this year, or early next. So I need to think hard about the costs of attendance. Even RailsConf would cost a couple of grand to get to, between the $800 registration, travel and hotel, and 4-5 days that I can’t bill at my current rate. That’s a fairly significant hit. Balance against that some incremental amount of networking and learning – incremental in that I can otherwise do some pretty decent networking and learning over the Internet.

Right now I’m inclined to think that conference attendance falls into the “luxury” category for me, and that I’d be better served by putting the time into polishing my coding skills.

Ask and Ye Shall Receive

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

A few days ago I speculated that it might be time to open a support group or mailing list for developers trying to rise up and throw off the chains of Microsoft. Fortunately for me, the lazyweb has come to my rescue here. The guys over at Softies on Rails just announced the opening of a new forum for people making the journey. See you there!

Tracking Traffic

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

I admit it, I watch traffic to my various Web sites. Terrible character failing, I know. Anyhow, at the moment A Fresh Cup is on track to get somewhat less traffic in a month than Larkware gets in a single day. So I guess I’ve got a ways to go. By the end of the year I’d like to see this site built up to the point where it’s got the sort of authority that that one does, only in a new field. Of course, there are some barriers to that: right now, I don’t know much, and not many people know that I’m over here. But I’m learning fast (I hope) and word is slowly spreading. Stay tuned, and feel free to tell your friends to come and visit.

I Feel Like I'm in Hamlin

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

James Higgs is the latest developer I’ve seen to publicly express a dissatisfaction with working in the Microsoft ecosystem. In his blog entry A change in my digital life he links back to this blog as well, which makes me either an inspiration or a bad influence (or perhaps a little of both).

I’m starting to think it’s time for a support group, or at least a mailing list.

It's Always Something

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

This morning I had to hunt down Copying a MySQL Database From One Machine to Another in the course of moving a Rails app from a development server to a production server, as I didn’t feel like re-entering a bunch of data (and I hadn’t used data migrations to put the data in the database in the first place).

This just goes to remind me of two things about this career transition:

  1. There are a zillion things that I know how to do in the Microsoft universe (like copying databases from one server to another) that I need to relearn as I move sideways to a world of other software. This is a cost above and beyond whatever I spend on new hardware and software and directly learning my new core competency.
  2. Fortunately, it’s all out on the net somewhere, and I’m darned good at hunting things down quickly.

A Kindred Spirit

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

There’s that old saying about being able to recognize the pioneers because they’re the ones with the arrows in their backs. So it was nice to wake up this morning and read Maybe it’s time to try something new, or maybe it’s the drugs over on Jon Rowett’s blog, and see someone else joining the ferment of discontent that I’m a part of. I wouldn’t say that any huge part of the .NET community is jumping ship, but it’s nice to not be all alone in exploring.

Progress Report

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

With the arrival of the new monitor the hardware buying binge is complete. Now I’ve settled in for some more serious development. I spent a couple of hours yesterday working with Rails on the Mac, poking along at my first “real” (as opposed to tutorial) application. I’m not ready to announce it yet, but hopefully I’ll have something to show off within a week or two.

Rails development continues to agree with me. Lots to learn but the pieces fit together in a sensible manner.

I’m proceeding up the Mac learning curve reasonably well, with pauses to try to hunt down tools and utilities I need. There’s not nearly as many choices on the Mac side as on the Windows side, but I knew that going in. Perhaps that will translate to market opportunity for me at some point.

A reader wrote to ask how many hours a day my personal “20% time” comes to. I’ve been allocating not less than an hour a day to this effort. Now that I have the dev environment set up, I expect to up that to two hours most days. As the year goes on and I transition into whatever my new career turns out to be, hopefully that will grow.

Moving Right Along

Posted by Mike
Liquid error: wrong number of arguments (5 for 2)

Well, I’ve done several things lately to make progress on my quest to invent a new career not involving Microsoft:

  1. I let my current boss know that I expected not to be with the company past early 2008.
  2. I spent a bundle of money on a new Mac (which should be here on Monday).
  3. I’ve let the publishers I’ve been writing articles for know that I’m not interested in continuing to tackle Microsoft-related topics. This means an immediate income drop, but on the flipside it frees up some time.
  4. I’ve started setting aside a solid, real, uninterrupted hour a day to work on new stuff – my equivalent of Google’s “20% time,” more or less. The past few days this time has gone to brainstorming on a few ideas for relatively small applications that I can (I hope) build with Ruby on Rails as a way to get some hands-on time in that environment. Next week I plan to pick one and start building.

To sum it up, I’ve been slowly snipping away my safety net, in the hopes of forcing myself into a new world. With any luck, this strategy will work.