Go Go Go

I’ve been giving my last post a lot of thought.  Its incomplete.

I don’t like being tired, but I do love working on projects that I’m truly passionate about and if that causes me to lose some sleep, so be it. We only live once and I don’t want to sleep my life away. If I get to a point where I can spend 80-90-100 hours/week working on projects that I care about, I’ll consider it a success.  I don’t mind missing out on some things as long as its while I’m doing work I love. 

There is a rush.  In 100 years, we’ll all be dead. Better not waste it.

There’s no Rush

The most finished man of the world would be one who was never irresolute and never in a hurry.

Schopenhauer

I wake up usually 15 minutes later than I should, quickly shower, dress, and head to work. I speed most of the way there.

I get to work and spend most of the day moving fast. There’s a lot of work to do and usually not enough time to do it.

When I get done with work, I speed home while busily planning in my head how I’m going to spend the next five hours before I need to go to sleep.  The later I get off work the faster I tend to drive. I drive 10-15 over the speed limit because it shaves 5-10 minutes off the drive, which is an extra 5-10 minutes I can spend with my wife or programming each night.

On nights that I’m short on time, I don’t program and I spend the time with her instead.  It’s not a hard decision, but its one I wish I didn’t have to make.

When I program I code fast. I don’t particularly like writing test cases because they take time. Usually the code is hacked together. Usually it works. Sometimes it doesn’t.

I like Five Star notebooks. I keep one at work and one at home. I use them to track the things I’m working on. I make small squares next to the tasks I need to do and check them off as they are completed. For the times in between work and home, I have a todo list app on my phone. It can be helpful to track all those random ideas that come up when you’re not trying to come up with ideas.

I’ve been thinking about it a lot the past few days: I need to slow down.

I took a look around on the drive to work today. I never noticed most of the stores I pass on a daily basis: dry cleaners and audio equipment stores and a sub place I’ve heard of and even a place that sells sheds, to name a few. I bet that sub place is pretty good, but I never noticed it because I wasn’t looking. There’s also beautiful vast cornfields that I’ve never really looked at before. If I wasn’t running late, I may have even stopped on the side of the road to watch the sunrise. It’s really quite something if you catch it at the right time and the right place. Call me a sissy, whatever.

Work’s kind of the same way. I’m so busy focused on getting the next task completed that I’m missing out on all the really amazing people and things around me.

Programming too. I’ve gotten so absorbed with Domain Pigeon that I forgot why I started it in the first place–to learn new things that’ll help me found a start-up one day.

On that note, I’ve been trading sleep for programming and I’ve come to one conclusion: it’s a terrible trade off. I get to program for a few extra hours a week but I become a walking zombie the rest of the time. Ironically, the lack of sleep also results in more typos when I do program which costs more time in the long run. And for what? Is it that big of a deal if I found a company at 30 instead of 28?  I’d rather spend the next six years taking it slowly and enjoying myself than work my ass off and miss out on the best years of my life. Taking it slowly helps in other ways too: you won’t get burnt out, you’ll have more time to learn, and should you fail, you’ll still be able to look back and remember all the good times you had along the way.

Lesson learned: Enjoy the ride.

Losing Focus

I started Domain Pigeon to help me prepare to found a start-up in a few years.  I wanted to learn Rails and web development and to gain valuable experience along the way. I realized today that over the last few weeks I’ve lost sight of that goal.

For example, I am not very good with git. I know enough to use it in conjunction with Capistrano to deploy my Rails app to Dreamhost, but when it comes to moderately complex tasks like branching and merging I’m completely inept. I have to constantly refer to the cheat sheets and even then, I’m not confident that I’m doing things correctly. I know this and know that I ought to become fluent with git, and yet I spent a good two hours today tweaking the font size of the links on Domain Pigeon’s homepage. 1.3em or 1.4em? Text decoration none or text decoration normal?

I have two Nolo books that I bought to help me learn what I’m talking about: Quick LLC and LLC or Corporation?. I made it through about a third of each of these, fell asleep, and went back to programming. I’m still not sure what’s the best choice for would-be founders.

I have subscriptions to Inc and Fast Company but lately I either let them stack up on my coffee table or, if I do get around to opening them, all I pay attention to are the designs. “That looks really good,” I say to my wife. “Maybe I can incorporate that into Domain Pigeon.” “Uh, OK, have fun with that honey.” Screw understanding what accounts receivable are, I want to know what font that is. And does the padding on that header looking like 10px or 15px?

Also, “cap deploy” is awesome, but it would also be nice to know how to administer my own server. It would probably be helpful if load balancing wasn’t just theoretical.

And what the hell is with blocks in Ruby? That shit is crazy.

I want to learn how to write better and want to get better at public speaking. Instead, I’ve been blogging about the morality of claiming that Domain Pigeon has “free” domain names vs “available” domain names.

Here’s the thing:

Knowing how to program is important, but its not enough if you want to be more than just a developer. Knowing how to run a business is also important, but its not enough if you want to be more than just a manager. To really make it big, you’ve got to be able to do both well. That, or get a kick-ass cofounder.

Now, if you’ll excuse me, I’ve got work to do. #222222 seems a bit too dark and I’m highly considering #2a2a2a.

Minor Updates and Dancing with Google

Updates:

+ Changed (again) the copy on the left column. Wording things well is very, very hard.

+ Re-added # people interested to the dropdown lists.

+ Bolded the 1K added daily label.

Thoughts:

+ Now that the design updates are settling down, I need to start thinking about how I’m going to attract new visitors to the site.

+ Expect a long month-in-review post to celebrate Domain Pigeon’s 1 month anniversary next Sunday.

+ I purchased On Writing Well after reading about it on HackerNews. Besides becoming a better writer, I hope to pick up a lot on web design, as I think there are a lot of similarities between the two disciplines.

+ I spent most of the morning trying to figure out how to crawl Google so that I can display the number search results next to the domain names on Domain Pigeon. With a little luck, visitors to Domain Pigeon will be able to sort by the number of Google search results in about a week. For example, there’s 29 search results for iInsomniacs. How fascinating!

As it turns out, Google doesn’t like people crawling their site. Isn’t it ironic, don’t you think? At least they apologize:

After a few hours of toying with timeouts, I can now happily report that I am crawling Google at the breakneck rate of two searches per minute. Technically, I’m not even supposed to do this, but I doubt my low intensity campaign will cause any alarms to go off. At least I hope not.

It’s a calculated risk. If they don’t Google ban me (please don’t Google ban me) I get to add a valuable metric to Domain Pigeon which will will make it easier for people find good domain names. If they do Google ban me, I’m pretty much screwed, as my entire online identity is in their hands.

But hey, Domain Pigeon is three weeks old and you’re supposed to fail early, right?