I’m 90% of the way through Simply Rails 2. It’s an excellent book for someone like me who has no experience with Ruby or the Rails framework. I have about five SitePoint web development books now and all of them have been fantastic. The examples are practical, the explanations clear, and the they always excel at not bloating the book (which a lot of programming books do).
I also purchased Agile Web Development with Rails this evening, the original book on Rails. Althrough the third version of the book hasn’t been released yet you can buy an early PDF version here and they’ll ship you the paperback when its available in October.
I didn’t get much of a change to look through it, but it seems a lot more comprehensive than Simply Rails. That makes sense too, since it’s supposed to be the definitive text on the subject. Simply Rails is more of stepping stone into the more advanced concepts.
On unrelated subject, I found an old copy of Inc magazine this weekend. I try not to subscribe to too many magazines, since I rarely ever read them, but they had some great business articles including on on Twitter that was really interesting. Maybe I’ll actually read this one? ;)
It’s pretty rare that I take a break from my work for more than a few days at a time. Recently the major breaks I’ve had were for my wedding, honeymoon, a trip to Baltimore to donate stem cells, visiting family in CT, and this weekend, where my wife and I spent an absurd amount of time dealing with complications from a cat bite she received a few days ago.
After every one of those breaks I’ve had a rush of ideas. My day to day thoughts are usually just additions to those ideas. For example, while we were cruising in the Caribbean for our honeymoon I came up with a few ideas for potential start-ups. Since then, I’ve just mostly been making small changes to those ideas and not coming up with anything radically different.
This weekend I spent very little time at the computer and I came up with some other ideas that I’m really excited about. Somehow this always surprises me. Its like I don’t want to admit that I’m not as clear headed on a normal basis.
I’m not sure whether its because of the break itself or because I get more sleep during those times.
The problem is that whenever you’re taking a break you’re not getting work done. If you work too much you never have any great ideas. If you are always taking breaks you’ll never get any work done. The key is to find the right balance between work and rest. I don’t think I’ve found that yet. Usually if I’m tired and have a decision between programming and sleeping I’ll choose programming.
Also, I think my body requires 8-9 hours of sleep to really be 100%. I get 6-7 normally, which would mean I have to sacrifice two precious hours each day to achieve my potential. So I work at 70% mental capacity for 4 hours vs 100% for 2 hours. Maybe a good compromise would be to go to bed an hour earlier, meaning 3 hours of 85%. Mathematically that works out to be the best, although it seems like a stretch to represent the situation mathematically.
Regardless, the key is to get regular breaks. You won’t work at your potential otherwise.
Check out this great speech by Chris Wanstrath, a notable Rails developer. Most of the stuff I really liked was towards the end:
I don’t know how many of you read RSS, but I challenge you (that’s a keynote term) to give it up for a month. Just turn it off. Stop using Google Reader or NetNewsWire or whatever
the kids are using these days. It’s not worth your time.
If you’ve been meaning to learn a new language, start learning it. But don’t just read a book. Start writing a program.
In fact, stop worrying so much about other people. Every time I’ve worked on a project I thought other people would really love, it was a massive flop. Every time I’ve worked on a project I loved, it worked. If you’re sitting in this room, your taste is not as far off from those around you as you’d think. Build something you love and others will love it, too. (Not everyone, of course.)
My plea to you today is to start a side project. Scratch your own itch. Be creative. Share something with the world, or keep it to yourself.
One thing he mentions is to take one Sunday a month and just go go go. I think this is a really great idea for me given my current time crunch.
Let limitations guide you to creative solutions
There’s never enough to go around. Not enough time. Not enough money. Not enough people.
– Getting Real by 37signals
Despite having about two hours less each day of free time I’m making better progress now than I was in the past? Why? I don’t have time to bullshit around on Hacker News or read all 45 updates on my Google Reader.
Every minute counts.