This type of approach is probably good for Python now, at its stage of
its development. I’d argue that Ruby is not ready yet for this type
of pitch.
Eric Sink does a great job of explaining the life cycle of a technical
product, such as a programming language.
http://software.ericsink.com/Act_Your_Age.html
The key here is to recognise where the product currently is in its
life cycle.
In this model there are 4 groups: The early adopter, the pragmatist,
the conservatives and the laggards. Each group require a different
strategy.
To attract the early adopter you say ‘Look, shiny new language. Brand
new, all the latest, coolest stuff.’ The early adopter says ‘Great,
there isn’t a library for accessing databases yet. I can’t wait to
write one.’
Ruby has succeeded here by being a truly object oriented, yet
practical, scripting language. Take two paradigms into the project
with me, no chance. Ruby does it all in one.
To get the pragmatists on side, you have to solve problems. You have
to say, this is new but it works. You have a problem and this is a
neat solution. The payoff is worth the risk and effort of using a new
language. The pragmatist says ‘Oh, there isn’t a database library in
the basic package. I need one of those, so I’ll need to google for
it.’
I think this is the market that Ruby is now appealing to, and I think
the home page is pitched right. Clean and easy to navigate. All the
information I need to get going is accessible. Pragmatists (not just
the Pragmatic Programmers) are picking up on Ruby. This can be seen
by its use in “Code Generation in Action”. Herrington bascially says
"we are using Ruby because it is the best tool for the job."
Python is now moving into the corporate world, and I home page like
this is going to reflect that. It looks like a corparate home page,
like Sun’s. The corporate decision maker isn’t necessarily
technically minded. He want’s to know what the language will do for
him. What difference will it make to the bottom line?
If he were to read about Ruby in some trade paper, he might think it
looks good and then force it upon one of his techies. “Use this on
your next project” he demands. “I can’t” responds his harrassed
programmer, “I’d doesn’t seem to have a database library.” “What”,
sneers our manager, “type of micky mouse language is this!”
A few weeks later he is at the golf course and one of his friends
mentions he is considering using Ruby in his next project.
Thankfully, he is warned before any valuable time is wasted.
You only get on shot with the Conservatives, so you need to make sure
that your ready before you pitch your product to them.
Another interesting article is Joel Spolsky’s " Good Software Takes
Ten Years. Get Used To it.
"