Monthly Archives: January 2008

How to have a successful side project

22 Jan 2008
by mjeaton, posted in Uncategorized   |  6 Comments

Side projects – most of us have one or two pet projects that we work on between our day jobs and other non-computer stuff (family, friends, etc.)   Some of my friends and colleagues take these side projects more seriously than others and actually turn them into real products that are in use by hundreds, if not thousands (dare I say hundreds of thousands?), of people every day.  Some examples include: 22books.com (James), whatiwantmost.com (Dan), codekeep.net (Dave), meiraware.com (Jayme), tourneytopia.com (Joel) and sitedevelopers.com (Mike – non-blogging loser).  On top of those examples, there are lots and lots of developers working on lots and lots of excellent open source projects.

I probably have a dozen projects that started out with the greatest of intentions but either lack of time or the realization that I bit off more than I could chew stopped any progression.  Most of my side projects are ideas that will help ME be more productive in my work, but some area ideas that I’ve gotten from other people.  Some ideas are think are real winners, but some aren’t even worth the initial time I spent on them.  Live and learn, right?

A job?

I was chatting with James a few days ago when the subject of side projects came up.  During our chat, he said something that made me take a step back and re-think how I approach my current side projects (highlights by me).

[11:28] James Avery: you got any side projects you are working on?
[11:30] Michael Eaton: I’ve got a couple cool ideas for side-projects, but I tend to over-think and have a tough time getting started.
[11:30] James Avery: yeah, thats always a problem
[11:30] James Avery: I tend to get a good idea, then move on in a couple weeks to something else
[11:30] James Avery: I have gotten better at focusing by treating it as a job
[11:30] James Avery: and putting tickets and milestones into unfuddle

That makes sense.  I’ve almost always treated my side projects as something I worked on when there was nothing else to do.  More times than not, I’d get done with my day job and start in on one of my side projects.  I’d make some progress on a feature but then get seriously sidetracked. 

A vicious cycle

Here’s an example:
While I’m working on project , I’ll start thinking about how cool it would be if my other project, , integrated directly with and how awesome it would be if I started another project that also made use of the data from and .

See a pattern?  Ugh.  It’s at that point that my head is spinning with all sorts of cool ideas…so many ideas that things come to a stop because I’m not sure where to go from that point.  Analysis paralysis.  Most of the time, I end up getting frustrated at my inability to move on, so I’ll fire up WoW or my Xbox.  Then, after killing lots of stuff, I’ll feel bad that I didn’t get anything productive accomplished. 

Like I said, I think I have some good ideas, but I need to find a way to manage my ideas and implement a more formal, job-like process so when I get side-tracked I know where to go.  The humorous part about that statement is that I’ve been at this point before and guess what?  I started working on a tool to help me manage my projects. I got pretty far on it too (it was a RoR app) before getting into that same nasty cycle that I described above.  Of course, the net result is that I now have unfinished primary side projects as well  as my unfinished project management app. :-\  In the words of the great Homer J. SimpsonD’OH!

Where do I go from here?

So, where does this leave me?  It leaves me at a point where if I’m ever going to finish one of my side projects (and potentially make $$$) I need to take them more seriously.  One of my resolutions for the New Year was: “Bring at least two of my ‘back-burner’ ideas to fruition over the course of the year.”  In order to this, I need to be more disciplined.  This means adopting the same practices I use when dealing with clients. 

  • It means using unfuddle to manage my projects instead of some hacked-together, home grown system or 3-4 systems that can’t talk to each other. 
  • It means putting time on my schedule every day to work on my projects. 
  • It means setting milestones and sticking to them.

Yep…just like a job. :-)

I’ve also decided to have a “code garage sale” as described by Scott Hanselman.  I think I’ve got plenty of code that could be valuable for someone out there and this seems like the easiest / best way to share it.  I’m planning to blog about this soon.

Look for more posts on this topic in the coming weeks and months. 

Technorati Tags: ,,

Online apps and trust

16 Jan 2008
by mjeaton, posted in Uncategorized   |  7 Comments

Arjan posted a link to my “Making the switch to online apps” post on his link blog today

Ok, first let me say that I’m always flattered to be included in someone’s link blog and I’m pretty sure I’ve been in Arjan’s a few times.  :-)

Second, I also realize that many people have been using online apps for a long time and what I wrote is nothing new.  It seems to me that Scott Hanselman made the move to Google apps last year and did a great job writing about it. :-)

Anyway, Arjan made the following comment under the link to my post:

“Online can be handy, but do you trust Google to make backups for you?”

To be perfectly honest, I suck at doing backups which means that for the most part, I don’t do them.  Yes, I know…backups are important, and I do take some very basic steps such as copying important files to another computer in the house, but I really don’t take anything offsite.

As Scott said in his post:

  • I trust them (more or less).
  • Backups are hard.

    So, in the whole scheme of things, I’d rather have my data in Google’s datacenter and believe they’re doing the right thing than potentially losing everything when a hard drive in my laptop crashes. 

    Either way, I run the risk of losing data, but it seems less likely with Google.

    Technorati Tags: ,,
  • Making the switch to online apps

    16 Jan 2008
    by mjeaton, posted in Uncategorized   |  14 Comments

    I’ve been an independent developer/contractor almost exclusively since 2001. In that time, I’ve primarily used a hacked together Access database of my own design to track all my business income and expenses.  It even generated my invoices.  Unfortunately, I never really had time to expand it and make it into a robust system so it was very picky and many times I ended up bypassing the screens to input data directly into the tables.  I did think about using Quickbooks, but only briefly. ;-)   My Access database fell out of favor last year as I transitioned to what I hoped would be a simpler method.

    Excel or not

    2007 was the year of Excel for me.  I tracked my mileage, income and expenses in Excel 2007.  While I tracked my time using a stand-alone time-tracking application (soon to be replaced, but not by a spreadsheet ), I used Excel to generate my invoices which were then printed to PDF and emailed to clients.  Overall, this method was a bit less painful than my Access solution, but not much.

    One of the real pain points to my Excel method was that all the Excel files were stored on my laptop.  This was ok, but there were times I needed to get access to them from another machine.  Not a big deal because I could just map a drive, but still…not as convenient as it could have been.  Hell, sometimes I didn’t have my laptop but still needed to get access to those files, so I ‘d end up writing something down on paper and try to remember to get it into the spreadsheet.  In hindsight, storing them on a server could have reduced the pain, but my guess it would have pissed me off to be offsite somewhere with my laptop and not have access to the files.

    Google!

    In the past couple of weeks, I’ve slowly been converting / re-developing my spreadsheets using Google Docs.  So far, it’s been a great experience, especially considering I only used a tiny fraction of what Excel offered.  This gives me the ability to access that information from anywhere that has a connection plus I’m not having to worry about losing the data if anything happens to my laptop.

    Google Docs let’s me export my data back to Excel if needed as well as printing to PDF, so I don’t feel like I’m missing out on too much right now.

    Email?

    Over the years, I’ve been a huge fan of Microsoft Outlook and have .pst files going back each year to 2003.   About 3 or 4 years ago, a buddy and I embarked on a short-lived effort to write an email application that could take its place because one of my biggest complaints about Outlook is the .pst file itself.  It’s this big nebulous blob of binary crap that, if corrupted, could spell lost emails.  Anyway, our plan at the time was to store individual emails as xml files, yada yada yada….that plan didn’t get too far and so I’ve continued to use Outlook. :-)

    Over the past year or so, I’ve slowly been sending more and more people to my gmail account since it’s something I can access anywhere (even my less-than-feature-filled phone).  Gmail took some getting used to since I liked having a pretty deep folder structure (which flattened a couple years ago ala GTD), but now I’m digging the idea of labels and I still have “a metric buttload” of space left.  Hell, if needed, I can upgrade and get 25GB. :-)

    A few days ago, while I was attending the CodeMash conference in Ohio, my laptop stopped working.  I was pretty bummed because not only was most of my project work on it, but my 2008.pst file was too.

    When I got home from the conference, I yanked the hard drive and dropped it in my server (thank God the laptop drive was SATA) and pulled everything off, but at that point I really had no desire to install Outlook on my desktop and re-configure all my accounts so I clicked over the gmail (which, BTW, is always open along with twitter and remember the milk) and added my primary email accounts.

    Of course, I still need to keep Outlook around in case I need to access my email archives, but that’s no big deal.  I can always use my wife’s laptop which runs Outlook 2003 if I need to.

    Calendar

    I also started using Google Calendar today after making sure that Outlook things would continue to work correctly when I sent meeting requests to my wife.  So far, so good.

    Tasks

    I’ve tried the 37signals apps but abandoned them pretty quickly  because I absolutely hated the attitude coming from the developers.  There were features I knew I wanted but would never see because they didn’t believe in them.  Uh huh….whatever.

    A month or two ago, I started using Remember the Milk and I’m loving it.  It fits pretty well with the way I work and I can access it from anywhere that has a connection.

    Missing Pieces

    Right now, I’m missing two pieces to this puzzle.  I’m currently not sure how I’m going to handle invoicing.  When I first started moving my spreadsheets to Google docs, I thought I could do the same thing I’ve been doing: create individual invoices, print them to PDF and email them.  Unfortunately, that’s a sucky solution.  My next thought was to use the Meiraware Business application.  I’ve done some initial testing and like it, but I’m not sure there’s enough flexibility given the way I normally do my invoices.  I’ve given Jayme a couple suggestions, but he’s been blowing me off (I kid, I kid). ;-)

    The other missing piece is my contact list, but I suppose that’s what Plaxo and LinkedIn are for huh?  I’m not sure what I’ll do about those people that don’t have Plaxo or LinkedIn accounts.  Maybe keep them in a spreadsheet?  Hmmm…I’m really not sure.  Any suggestions?

    So far, so good

    While I haven’t been using these apps for very long (with the exception of Gmail), I do feel better knowing I’m not tied to one computer.

    Oh, I’ve also set my wife up with an iDrive account for her backups (thanks for the recommendation Jayme).  If all goes well, I’ll start using it as well.  Short of burning DVDs and taking them offsite every couple days, it seems like the best option.

    Technorati Tags:

    CodeMash 2.0.0.8

    13 Jan 2008
    by mjeaton, posted in Uncategorized   |  3 Comments

    I had a great time at CodeMash this year.  Jim and crew (Brian Prince, Jason Gilmore, Jason Follas, Jeff Blankenburg, Josh Holmes, Dianne Marsh, John Hopkins, Brian Sherwin, and Chris Woodruff) once again did an outstanding job at putting together a great conference.  My only complaint?  I didn’t win a damn thing this year. ;-)   I think next year, I’ll lock Joe Wirtley in his room so he can’t win another cool console (last year he won the Wii and this year he walked away with an Xbox 360!).

    My plan was to live blog the event, BUT my freakin’ laptop died (more in another post) on Thursday, so most of this is from memory. :-)

    After fighting a flooded basement all day on Wednesday, my family and I got a late start and arrived at the Kalahari around 8pm.  After a quick check-in, I made my way down to the conference area so I could take care of registration and hopefully catch the last few minutes of the experts panel (which actually started 30 minutes later than I thought it was supposed to).

    I said hi to Jim Holmes before being really surprised at the number of people in the experts panel.  I expected to see 20-30 people, but the room was pretty full.  Jim said there were close to 320 people registered for the event this year!

    I caught up with my former manager at Pillar (who is now on his own again) and met a current Pillar tech lead that talked to me about a potential gig late late last year.

    As soon as the experts panel ended, I found Dan Hounshell and Joe Wirtley (and their friend Clark).  It was a crazy scene…we kept running into people (Jay R. Wren, Steven Harman, Josh Holmes, Jason Follas and many others) so it took us about 45 minutes to move 15 feet.  Finally we moved the discussion to the bar in Kahunaville where many drinks were consumed. ;-)   Wow…what a blast!  It was really cool to hang with Keith, Dustin, Dan and many others.  I finally met MichaelDotNet (after exchanging many, many tweets with him) too.  Good times.  Of course, those good times kept me from getting to sleep before 2am. ;-)   I’m not sure who’s camera was used when the waitress took the group picture, but I’d love to get a copy of them. :-)

    Ok, so after a few hours sleep, I made it for most of the morning keynote which was really good (Joe did a great write-up of the keynote).  Jeff Blankenburg’s Silverlight session was standing room only, so I ended up sitting on the floor in the back of the room.  His session was ok, but nothing I hadn’t seen before.

    Jay’s talk on Castle was pretty good.  Earlier in the week, he suggested I hit the Python session instead since I already have some familiarity with Castle, but I’m glad I went to his because a) he’s very passionate about Castle and b) it gave me some ideas for blog posts. :-)   His biggest mistake (which he admits to) is trying to talk about too much in such a short period of time.

    I almost skipped Scott Hanselman’s lunch keynote, but I’m glad I stayed.  As Jim pointed out in his post, the first half of Scott’s keynote was hilarious!  Once he got into IIS7, things got a bit more serious, but it was still really good.  I’m one of the few that doesn’t listen to his podcasts, but after sitting through his keynote, I might start. :-)

    I skipped out on the vendor sessions so I could spend some time with my family. 

    Keith Elder’s “Introducing Windows Workflow Foundation” was great!  I’m actually pretty excited to dive in and learn more about WF.  Keith is a great speaker and a very easy-going guy.

    My last session of the day was Dustin Campbell’s “Putting the Fun into Functional with F#”.  It was really cool, but about 45 minutes into it, I had to bail because the kids wanted to see me (sorry Dustin…kids come before F#). :-)   I really wish I could have stayed because it definitely looked really interesting.

    After a decent dinner, I hit the vendor party where I hung out with Dan, Joe and Clark (non blogger) and watched paint dry….umm…I mean I watched a bunch of geeks play Rock Band. :-)   After the previous nights activities, it was nice to be back in my room and asleep before 2am. :-)

    Day 2 started late for me because I could NOT crawl out of bed….I think I made it for the last 5 minutes of the morning keynote.

    Bill Wagner’s “Real World C# 3.0″ was pretty cool.  Bill is another great speaker.  I almost wish I had gone to the Dojo/Google Gears session, mainly because I was already familiar with much of what Bill talked about.

    From 11-12:15, a few of us (Dan, Mike Wood, Joe, Matt Casto and I) held an open space on “speak.net“.  Chris Woodruff was supposed to be there, but he was MIA. :-)   Anyway, we discussed how to get involved in speaking engagements, use of Powerpoint and ummm….blogging I think.  It was a great session, especially for me since I work from home and don’t get the chance to talk to other devs in that kind of setting very often. :-)

    I ended up meeting my family for lunch and missing out on the one and only vendor session I wanted to catch (Monorail). 

    After lunch, but before the next session, I talked to Sheri (HR @ Pillar) for a few minutes about kids and video games. :-)   Dave “The Rockstar” Donaldson showed up minutes before his session was scheduled to start.  We BS’d for a couple minutes before he headed off to his session (which I attended BTW).

    Last year I had an interview and one of the questions was about REST.  At the time I didn’t know much about it (and still didn’t before sitting in Dave’s session).  Dave is a very smart guy and great speaker and his session about RESTful Web Services didn’t disappoint.  I really loved how he incorporated movie posters into his slide deck to get some of his points across (sometimes just for comic relief).

    My final CodeMash session was Keith Elder’s “Building Custom Workflow Activities”.  After sitting through his intro session, I was really interested to see this one and once again, he did NOT disappoint.  I’m gonna start cranking out custom activities now and make a million bucks now. :-)

    As I said at the beginning of this post, I didn’t win a damn thing during the final drawing.  Not a book, not anything. :-\  The kids already took all my swag from the vendors, so all I really came away with in terms of loot was some t-shirts. :-) Geesh….well, there’s always next year.

    If you couldn’t make it this year, make it a point to go next year.  I’m sure the 325 attendees from this year would agree with me — You will NOT be disappointed!

    It was great to see everyone again!

    References: Recruiters buzz software designers in Sandusky

    Technorati Tags:

    Update: 1/15/2008 @ 5:14pm (EST) – minor edit to remove an un-needed word. :-)

    Codemash!

    09 Jan 2008
    by mjeaton, posted in Uncategorized   |  Comments Off

    My family and I will be leaving Wednesday afternoon around 4:30 for the 2.5 hour drive to Sandusky.  I’m looking forward to the experts panel at 7.

    My tentative schedule for the actual conference is here.

    Technorati Tags:

    Codemash v2.0.0.8!

    02 Jan 2008
    by mjeaton, posted in Uncategorized   |  Comments Off

    The first Codemash conference was held in January 2007 and it was awesome.  As I read over my posts from last year, I can’t wait to attend Codemash v2.0.0.8. 

    This is what I wrote at the end of last year’s Codemash:

    “The organizers of CodeMash did an oustanding job.  As I’ve mentioned in previous posts, the venue was great, the speakers were awesome and the sessions were jam packed with good stuff.  As I told Jim after his “Open Source” talk on Friday, this was definitely another home run.

    If you missed CodeMash, you missed a great opportunity not only to learn about cool technology, but to network with peers.  While I’m not necessarily a social butterfly, it was nice to talk to Jim, Jason, Dave and Dan again.  The guys and gals from Pillar were great (mmm…..gotta love a booth that has Hershey’s miniatures) as were the guys I talked to from Sogeti.

    I can’t wait for CodeMash 2008! “

    While much of my time last year was spent stressing about job interviews, I’m really looking forward to making the most of my time at the Kalahari (although you probably won’t catch me near the water). ;-)

    While I know the content is going to be great, I’m really looking forward to seeing the usual suspects again (Jason, Dan, Joe….) and meeting new people. 

    After looking over the current schedule, some tough decisions are going to have to be made so hopefully there’s lots of blogging/twittering going on. :-)

    The New Year

    01 Jan 2008
    by mjeaton, posted in Uncategorized   |  4 Comments

    My hopes for 2008 are high, especially after the year I’ve been through. :-)  

    The things I plan to do in 2008:

    • Fully commit myself to the pushup/situp challenge.
    • Write at least one *quality* blog post each week.
    • Present at a technical user group at least once.
    • Continue to seek out new business and keep the pipeline full.
    • Attend CodeMash, Ann Arbor Day of .NET, Dayton/Cinci Code Camp and the West Michigan Code Camp.
    • Bring at least two of my “back-burner” ideas to fruition over the course of the year.
    • Spend some time with Wil before he gets married.

    I’m sure there’s more, but these are the things that bubbled to the top of the list. :-)

    Here’s wishing everyone a very Happy New Year!