28th August 2009
Peter Cooper Interview
Peter Cooper is a digital jack of all trades based in the north of England. He is author of Beginning Ruby — published by Apress — creator of numerous Web properties and technologies, a professional blogger, and an entrepreneur who sold two startups in 2007.
His specialist subjects are writing, publishing, AdSense, Web 2.0, RSS, UNIX, and Web application architecture and deployment.
I first discovered Rails in late 2004 and being a Perl guy I decided
to try and implement something like Rails in Perl. It sucked though so
I decided to give Rails a try itself (along with Ruby). After I
completed a basic project within a few days that would have taken a
couple of weeks in Perl, I was sold. So my first paying Ruby related
work was that first Rails site I built that I had intended to use Perl
for originally. I just began using Ruby for things that I was already
doing programming jobs for.
Where, and how, do you search for work now? Can you give me some advice on the best ways to find Ruby related work?
My advice for anyone looking for Ruby related work would be to first
get a name for yourself somehow, though primarily through either open
source contributions or by developing your own Web sites. Blogging is
also a wise step, though often your code can talk for itself. People
want to be confident in a person’s experience and abilities before
hiring them, so having a public demonstration of this is valuable.
What advice would you give a Ruby beginner without any projects ready to show?
Finish some projects Alternatively, if that’s taking a long time,
you can comment on all Ruby related blog posts you can find as long as
you have anything half way interesting to say (don’t look like spam).
Twitter and/or blog about things you find in Ruby that you like and
about things that you’ve learned. Build up a repository of your
presence online and keep making contacts.
What books, or sites, or recipes, or whatever else you can recommend (they may be about productivity, or negotiation, or thinking – anything you think will help me live a better life as a programmer)?
Ready Fire Aim by Michael Masterson is invaluable for learning how to
get things done quickly and how to get ahead in business.
Coders at Work by Peter Seibel is a great analysis of how some of the
world’s most famous coders work and think about programming. It’s not
out till September though.
What Clients Love by Harry Beckwith is full of useful advice if you
plan to work as a freelancer / independently.
I would also recommend reading Getting Real by 37signals. It’s
available to read for free on their Web site.
How much time per week do you work? How do you keep yourself productive and focused?
I don’t know. Sometimes I don’t do anything I consider “work” whereas
other times I spend many hours working away at something I’m not
particularly enjoying. Since I work on mostly my own projects it’s
hard to define. I’d say I’m in front of a computer for about ten hours
a day, however, but I’m often just learning things or browsing. When
necessary, I keep myself productive by just getting on and doing
things without procrastinating – it sounds simple but you can learn
this stuff by adopting Getting Things Done methodologies and listening
to some of the Tony Robbins tapes on developing strategies for your
I basically have a desk, two monitors, a Mac Pro, and a pencil/pen and
paper nearby at all times. I have portable computers too but I rarely
use them for work as I like to work at a desk mostly (though I
sometimes have a switch for a week or two). Surrounding my desk I have
many shelves covered in books – mostly nonfiction. I read a lot of
books as it’s the best way to learn.
How do recommend becoming a successful and profitable programmer?
I don’t really consider myself a “successful programmer.” I have built
sites I have sold for good money that required me to program, but I
think the business and marketing knowledge I have helped a lot more
with those.. I could have paid someone to do the development.
That said, I know a lot of successful (and sometimes wealthy)
programmers and I’d say the wealthiest ones are those who started
agencies/development shops (or even hosting companies) and have the
sales skills to get major development contracts with well known
companies. It’s not the most fun stuff in the world but it’s
particularly profitable. Contracting can also be very profitable in
certain niches (especially Java).
What should every programmer know?
Business stuff. Productivity stuff. How to produce the most suitable
thing with the least amount of effort. How to stop working on
something when any extra work is not significantly adding to what you