I tend to read a lot. I’m one of those people who has four or five books
in various states of being read at all times. I’m always interested in
what other people are reading, so I thought I’d share the books that I’m
currently reading, or have just finished:
Practices of an Agile
Developer
- I’m about 1/2 way done with this one. I like it so far, but I’ve liked
every book from the Pragmatics that I’ve read. This is a great
introduction to what Agile development looks like from the perspective
of a developer, rather than a manager. Even if you’re not doing Agile
development, it’s a great book on the foundations of being a great
programmer.
The Tipping
Point
- I swear I’m probably the last person to read this. Great read, and
definitely an interesting concept.
Pragmatic Version Control Using
Subversion
- I use Subversion on a daily basis, but this has helped with some of
the advanced features.
Developing the Leader Within
You
- John Maxwell is my favorite author on leadership. I’ve read several of
his books, and I’ve found every one very usefull.
CSS Mastery: Advanced Web Standards
Solutions
- CSS isn’t my strong suit, so this book has helped quite a bit. It’s
not a CSS 101 book, it’s for taking your use of CSS to the next level.
Yes, those are affiliate links. Help feed my addiction.
What books are you reading? Leave a comment and let me know what’s on
your reading list.
Ten Things You Shouldn’t Buy
New
- The usual suspects are here, but there’s some things I hadn’t
considered.
The Complete Running Network - New blog
dedicated to running. I’m trying to get back into running, so this is a
useful resource.
Writing a Typo Sidebar Test
First
- Just what it says, good insight into the process.
Datebocks - Intuitive Date Parsing -
Javascript library that let’s you handle dates like “Tomorrow”, and
“Next Friday”, as well as more traditional date formats. Also available
as a Rails Engine.
Beast: An open source Rails forum in under 500 lines of
code
- New Rails forum software from Rick
Olson. Get the source
here. Even if you have
no need for forum software, it’s a nice example of a small Rails app.
I found an interesting pair of articles recently covering the topic of
salaries. The first article, Why secret salaries are a baaaaaad
idea,
makes the case that all salaries should be public within a company. The
arguments are pretty compelling, especially since I just finished
reading Ricardo Semler’s book
Maverick,
which is an extraordinary book about an extraordinary company in Brazil.
Among other things, employees set their own salaries, which are public.
The argument for doing this is essentially two-fold: 1) It keeps the
employer honest, discouraging inequities in pay, and 2) It keeps the
employee honest as well, as employees that are higher paid will feel
more like they have to work for it, since everyone knows how much they
are making. I see the point in this, and at least conceptually I like
the idea of having an open company, in which most details are known to
all (in the case of Ricardo Semler’s company, profits and expenses are
open to all as well).
This evening however, I found an interesting
article by Eric
Sink (who coincidentally lives only about 45 minutes away from me) that
makes the case for keeping them secret, but acting as if they were
public. His rationale is that people value their privacy, and
communicating everyone’s salaries to the entire company violates that.
He advocates keeping the salary list “clean” though, as if the salaries
were public:
So I think secrecy about compensation is important, but it should be
for the purpose of protecting the privacy of individuals, not for the
purpose of obscuring the fact that management is doing things they
know to be unfair.
All in all, I think this is an interesting topic. I admire companies
that disregard convention and defy traditional rules of business, but on
the other hand I can see the point of the traditionalists with regards
to things like salaries as well.
What are your thoughts? Ever work for an “open” company? What was it
like?
Afterthought: It’s stated above, but I’ll repeat it again. If you
want to read about a company who has open salaries, and why, you need to
check out the Ricardo Semler book Maverick. It’s not just about
salaries, there are lots of other innovative ideas in there as well.
It’s well worth the time to read.
“We should be taught not to wait for inspiration to start a thing.
Action always generates inspiration. Inspiration seldom generates
action.”
Frank Tibolt
“Far better it is to dare mighty things to win glorious triumphs, even
though checkered with failure, than to take rank with those poor spirits
who neither enjoy much nor suffer much, because they live in the gray
twilight that know not victory or defeat.”
Theodore Roosevelt
Via Garret Dimon
I’ve been interviewing people (mostly programmers and management/leads)
for about 7 years. I would guess I’ve interviewed over 100 people (if
you include college recruiting job fair “mini-interviews”). In that
time, I’ve seen and heard some amazing things. I won’t share horror
stories, because that’s not terribly helpful. Instead, I’ve put together
a list of 5 ways to interview well. Without further ado:
1. Show up.
This seems obvious, but let’s elaborate a little bit. Show up on time -
early even. But not too early, as that’s often more annoying than
showing up late. 10 minutes early is fine; 30 minutes is not. You may
want to ask the company you’re interviewing with how early to show up,
as sometimes there might be paperwork to fill out. Be prepared -have
extra resumes, samples of your work, etc. Know something about the
company you’re interviewing with. You shouldn’t have to ask “What does
your company do”, unless it’s one of those super-secret startups that
wants you to sign an NDA to walk in the front door (in which case, run
for the hills).
2. Make a good first impression.
Dress sharp: when unsure, wear a good quality suit that fits well. It’s
perfectly fine to ask the company you’re interviewing with what the
appropriate attire would be; these days, corporate dress codes are all
over the map. You should always strive to be dressed at least one or two
levels above the person you’re interviewing with (unless they’re wearing
a suit - no need to don a tuxedo).
3. Ask questions.
Nothing makes a job candidate seem less enthusiastic than when they ask
no questions. Here’s a tip though, don’t ask too many questions about
money. It can make you appear greedy, and people will start to question
if that’s the only thing that matters.
4. Don’t complain.
If you’re leaving a bad situation (boss is a jerk, company went down the
drain, etc), it’s tempting to complain about your situation. Don’t.
Nobody wants to hire a whiner, which is exactly how you’ll come across.
It’s ok to talk about things you didn’t like, but don’t dwell on it.
Talk about the things you liked about your job as well.
5. Don’t lie
You can recover from just about anything else on this list, but this one
is fatal. If you pad your resume, you will be found out - don’t even
bother. Furthermore, “I don’t know” is an appropriate answer to a
question. If I ask if you’ve done X with ABC database, don’t try and
bluff. Just say “No, I haven’t yet had the opportunity, but I’d like to
learn how”. I can’t emphasize this enough. I’ve passed on several
otherwise qualified candidates because they put some skill on their
resume that they didn’t actually have. Lying never, ever works in the
long run.
Above all, be yourself. Be relaxed, be natural, and be honest. You’ll do
fine.
The various shiny objects that caught my eye lately.
11 Ways of Staying Focused
- Probably my biggest challenge, I need all the help I can get.
Top 14 Stumbling Blocks for New Businesses
- Some of this I’ve seen elsewhere, but there’s soom good points in
here.
What is a Wiki - And How to Use One for Your Project
- I know what a wiki is, but this is a good introduction on how to
leverage them for projects.
The Four-Day Week Challenge - Cutting
back to a four day work week. It’s a great idea, but I don’t think my boss is going to go for that :)
Rails Manual - Just like
http://api.rubyonrails.org, except the interface doesn’t completely suck
eggs.
Rails Tips - The extremely
prolific Peter Cooper (seriously, does
he sleep?) releases something new, Rails
Tips, which although part of the
previously
mentioned
Ruby Inside site, is actually a completely separate site, with a number
of useful tips. Seems similar to his
Snippets site, but limited to Rails
stuff.
The Garden State Effect
Mark Pilgrim’s Essentials 2006. -
Mark just switched to Ubuntu Linux after many years with Macs.
Nice Markets for the Potential ISV
- Ian Landsman’s list of good potential markets. There’s some
interesting thoughts in here, but his reasoning is more interesting.
Rewired Brain Revives Patient After 19 Years
- The title says it all. Amazing.
These are the shiny objects that captured my attention the last couple
of days.
Update: I somehow managed to misspell Relevance’s name. Fixed.
I’m missing RailsConf this year (I have no excuse, I live two hours
away). I’m living vicariously through the other attendees though,
keeping an eye on the blog posts.
One announcement that I just caught was that
Relevance has announced
Streamlined, which is a
framework on top of the Rails framework. Some of the interesting
features include (pulled from Justing Gehtland’s
post):
- Generator for churning out the initial views and configuration
- A declarative DSL for managing views, including relationship
management, field selection, etc.
- Full Ajax-enabled management views with sorting, paging and live
search (with configurable field-inclusion)
- An extensible component system for representing relationships at
runtime * REST-ful web service layer around all models
- Auto user-management and inclusion of declarative role-based
authorization
It looks like this gives you a really good jumpstart on building data
driven applications (as if Rails wasn’t enough of a jumpstart). The
management views in particular sound nice
(Django has this already, really the
only thing Django has over Rails as far as I can tell).
They’re planning on realeasing this at OSCON in July. I’m looking
forward to it.
A few links that caught my eye today:
An introduction to Ruby on Rails for DB2 developers
- Nice article if you’re a DB2 user and want to know what the fuss is
about. Written by Edd Dumbill.
Ruby-Gnome2 Website - Appears to
be a decent GUI toolkit for Ruby. I wish someone would get QT’s Ruby
bindings working on Windows. The thing I miss most about Python is
PyQT.
Sapphire in Steel: The Little Book of Ruby - Nice
introduction to Ruby with plenty of code samples, in PDF form.
Ruby Cookbook -
The Perl Cookbook, ported to Ruby.
Ruby Inside - A great new blog by Peter
Cooper, focused solely on Ruby. The last two items
came from this site. I don’t know how he finds all these cool links.
Configuring Rails Environments - The Cheat Sheet
- Now you can find out what all of those neat settings in
config/environments/* are.