Cheers,
Obie Fernandez
CEO & Founder | Hashrocket
904.435.1671 office
404.934.9201 mobile
Hashrocket, Inc.
320 N 1st Street
Suite 712
Jacksonville Beach, FL 32250
Robert,
Valid question. It's all relative. What makes a great Ruby on Rails
shop? The team itself and what they contribute to open source? The
team that delivers great products to their clients/customers? The best
value for their clients? The team that launched their own product?
(would 37signals fit into this?)
Without more understanding of the metrics, it's kind of a weird
question to ask in a group that mostly consists of people that run
their own Rails shops. :-)
Perhaps Obie can chime in and help clarify his question a bit.. :-)
Robby
- performance and reputation (tied to delivery capabilities)
- honesty and transparency
- happiness and sense of humor
- process discipline, stability and risk mitigation
- contributions back to the community / open-source
- business consulting and agile coaching
What do you guys think of as "best"?
On Wed, Feb 11, 2009 at 10:24 PM, Christopher Redinger
<redi...@gmail.com> wrote:
> Hashrocket
> ENTP
> Relevance
> InfoEther <-- not a Rails consultancy, right?
> OGC
> Terralien
> 37Signals <-- not a Rails consultancy
> Thoughtbot
> Planet Argon
> Edge Case
Sorry I guess I was being vague by saying simply "rails shop" -- I
meant companies that build Rails applications for clients
Speaking of values, I've been half-assedly considering building an
industry association (Obie will remember my blatherings on this from
two railsconfs ago).
Basically, the plan is we'd build up a charter of values and call it
"certified rails development agency" or something like that. Really
just a way of differentiating the "Good agencies" from the bad ones,
and having some form of reputation metric (aka booting people out)
What do you think? I thought "oscert" was a great name since the cert
is collaboratively developed.
Courtenay
(ENTP)
How would you validate the agencies? I'm an agency of one so you'd
have to take my word for it wouldn't you? Not that I'm a bad one, but
how would you know if I was and just decided to lie about it? Which
is probably if I'm a bad one :)
If you do this, I'd personally love to see a list of "designers we've
worked with that are great and have an understanding of rails" that
could be tapped into. I'm sure they would probably appreciate a
reciprocal list. Something like programmermeetdesigner.com, but
minus the job/project aspect and more just reference based.
-philip
An industry association with some guiding principles that everyone
agrees to follow is a somewhat different idea. But I'd counsel you not
to call it "certified" anything. That will just put you into the wrong
mental bucket for too many people.
Mike
Yes yes industry association. That's what I meant.
You just keep a list of members, the values we all hold, and if
there's a complaint against someone you investigate and kick them out
:)
It's like getting professional insurance. You answer the
questionnaire, and they give you the coverage. If you lie and shit
hits the fan, it's pretty obvious that you lied, and you get denied
compensation. If you're one of the bad ones, you may get in
initially, but your peeved customers will quickly find a place to air
their complaints.
Courtenay
These are valid questions. Obviously there'd have to be buy-in from
the big guys.
There would also have to be a benefit from being a member, and the
association would also have to have teeth.
Also, we're often dealing with fallout from small consultancies
ditching clients. So.. maybe that's a good thing. If the aim as an
industry association is to say, "hey, we're reliable and also
excellent" then a one-man shop probably isn't going to be THAT
reliable. Just sayin'.
I know you don't mean it that way, but there's no reason a one-man
shop isn't just as reliable as larger shop. I'm a one man shop and
have every incentive to serve my customers as well as you do. More so
since I can't say "well, our developer Joe Bob went AWOL. We've fired
him, and now all is well".
Case in point... 9 years ago my wife's company did a 6-figure deal
with one of the largest web shops in the Seattle area. Why they did
it we will never understand. It was horrific. The delivered product
was unusable. I personally fixed it in about 8 hours of serious perl
hacking over several hundred files. Who was more reliable? Of
course, did her company bring their next web project to my small web
firm? No. So maybe that's a bad example :-)
-philip
Of course, but that's the point. Say you have two people, and the one
other developer gets ill, or quits, who will replace them on the job?
Wait, it's just you. You either double your workload (not possible)
or .. what? You're probably fairly screwed.
Courtenay
Perhaps. Or the client understands folks get sick and doesn't sweat
the lost couple of days :) I see where you're coming from, but I've
also seen the other side. For 6 years I ran a 5 person web firm.
Probably 70% of our work was from clients we'd bid on, lost "because
we were too small" and then 3 months later got a call from cause
things hadn't worked out well with the big firm they picked.
My real concern is that I can safely say I'd never join an association
where there was a reliability ranking based on the size of the
company. I just don't think it's that accurate and certainly not
advantageous to me! :) So if you don't have any of the one person,
two person, or <5 people shops... who's left to make the association
legitimate?
Although honestly, if it exists and only the big folks join it, that
still benefits everyone since as they get overloaded they can sub it
out to the smaller shops :)
-philip
http://www.fahimilyas.com/blog/2009/02/the-only-valid-measurement-of-code-quality/
:-)
+1. Or -1 I guess. I too have multiple certifications, that I don't
bother advertising any more. My impression is that in the Java world,
certifications became a way for the headhunters to shop devs around,
rather than any indication of anything useful, like coding ability.
--
Christopher Redinger
http://www.agiledisciple.com
Gah, no, forget the size thing. For small shops, I'd say for this very
reason ("you're too small") it's important to have some form of
industry association.. you know, to show that despite being small you
have a good reputation / standards.
You know how many development shops don't even unit test? It's a big
number. You want to stand out from those guys?
Regardless of the justified cert hate, I find asking "Do you write
tests?" a great way to separate the good devs from the bad ones.
Better than any cert.
The association/certification idea is an interesting one. However, I'd
suspect that most of our past clients could care less whether we
belong to an association organized by other development firms. (can
only speak from my experience)
How do our new clients evaluate us? We give potential clients the
names and phone numbers of our past clients and invite them to give
them a call. Works great.
Robby
Unit testing is an important part of the cycle... but how would you go
about evaluating whether a developer or development team is good at
communicating and collaborating with their clients or colleagues? I'd
argue that this is the most critical thing and not something a
committee could ever really assess.
In my opinion, the biggest crime I've seen in our industry is all too
often, development firms/freelancers give their clients what they
want... not what they need.
My two cents,
Robby
Ask the clients? Examine client communications and score based on
common criteria?
> argue that this is the most critical thing and not something a
> committee could ever really assess.
Hmm. Maybe not a committee, but an independent auditor operating under
NDA could probably make pretty good judgment calls.
> In my opinion, the biggest crime I've seen in our industry is all too
> often, development firms/freelancers give their clients what they
> want... not what they need.
Do you mean doing too much work? Not enough? We're constantly
operating under circumstances of the client wanting a lot more than
what they can afford to pay us to build, so narrowing of scope (aka
"getting real") is a constant challenge.
I've had the unfortunate experience of having an engineer answer
positively to that question, and then decline to write any tests for
his code once actually hired. Amongst the reasons why he didn't write
tests: because they cause the build to be broken whenever he changes
any code.
Will.
I've interviewed a number of people who know the answers to all the
software koans and yet are not enlightened.
It is, however, not impossible (and, in my limited experience, not
even overly difficult) to recognize the Tao when confronted with it --
so to say.
That is, whether in the interview, or during a trial period, it's
usually very easy to tell someone who knows how to create good
software -- but such clarity from initial doubt is not going to arise
merely from asking for discourse on questions.
The unfortunate state of affairs is that it's often tricky to find
*anyone* who can at all create such software.
For the exceptional positive cases, the answer is often clear before
even conducting the interview. Surely there's some value in the
interview anyway (even if it's the chance to spend an hour with
someone of like mind), so we hold them nonetheless.
Do we then choose to settle for those who cannot, hoping to train
them, or do we continue to search for those who can? That question is
more personal.
Best,
Rick
> Speaking of values, I've been half-assedly considering building an
> industry association.
The whole concept does not appeal to me at all.
But if you do move forward, remember that you likely won't be able to
use "Rails" in the name of your organization unless David signs off on
it.
Colin
Colin A. Bartlett
Kinetic Web Solutions
http://blog.kineticweb.com
Wait, what? Pivotal only contributes to the community for *branding*
purposes? Isn't that a bit cynical?
We don't "invest our time" and expect a ROI on open source. It's a way of life.
Courtenay
> We don't "invest our time" and expect a ROI on open source. It's a way of life.
I hear a lot about the ROI of contributing, about contributing for
branding etc. What the heck, those people do not understand this
thing. As the zen saying goes you're confusing the finger that points
to the moon with the moon.
You contribute because you believe in the fundamentals of what you're
building your fucking business upon.
Oh please. Contributions to the community repay you in many ways, and
a strong brand is just one of those. Some companies make
contributions explicitly to help their brand, some do it for other
reasons. Pivotal does it for many reasons, and branding is (in my own
assessment) one of the lower priorities, but it's still one of the
reasons we do it. Many open source developers have created their own
personal brands through making contributions, many people on this list
included. It's how we get jobs, make friends, and get access to cool
new technology before the noobs, as well as improving the ecosystem
where we thrive. That is an investment, whatever you want to call
it. If it's good enough for us as individuals, why is it somehow a
sin for a company to do the same?
And it's not totally selfish to want to develop your brand. If you
think you have something valuable to contribute, you need for people
to notice you so that they'll take what you're offering.
We could have a lot of conversations about open source and why people
contribute, but this thread is about reputation (see the subject
line), and a brand is just a managed reputation. Now can I try and
ask my completely valid and relevant question again?