Meyer, OO and concurrency

Ulf Wiger ulf@REDACTED
Thu Jul 14 21:40:33 CEST 2005


Den 2005-07-14 19:10:58 skrev todd <todd@REDACTED>:

> No. It's about managing risk. You are asking people to use a language  
> they know nothing about, that uses a completely different paradigm, for  
> which they have no people experienced in the language, for which they  
> have no idea what will happen if things go wrong, and  provides  
> facilities that they know can be done in C++ and does not require  
> duplicate infrastructures.

I don't think that's what they're asked to do.
Most of the time, what we ask people is to at
least _study_ the issue. Quite often, Erlang is dismissed
based on prejudice and, at most, a very cursory glance.

If you're investing millions annually into developing complex
software, why is it unreasonable to put some money into actually
_investigating_ if new implementation techniques might shave off
a portion of that, perhaps getting you to market faster, and
allowing you to save money on maintenance as well? If people keep
claiming that you can actually do this, don't you think it would
be prudent to assign someone to actually look into it, perhaps
with some prototypes?

> And you are asking them to do all this on their most important
> and critical of all projects.

Mike Williams used to say: "if you don't conduct experiments
at the beginning of your project, your whole project will
become an experiment". Obviously, you shouldn't jump head-first
into a technique that you haven't studied and experimented with,
putting your whole company on the line. You experiment, you
build prototypes, you live with the technology for a while and
learn about its pros and cons. THEN, you decide to which extent
you are willing to use it.

> So it's not just about interfacing languages. It's serious business.

So much more reason to be vigilant about researching new ways
to become more efficient!


> It's the fate of a startup for example.

Startups usually have a hard time doing too much experimenting.
Several startups use Erlang, though, because they learned it
at the University or elsewhere, and use it as a competitive
advantage against those who are too set in their ways to
try new techniques. Other startups may use Lisp, Haskell or
what have you. They don't have to live with big company
politics and turf battles -- IMO the most important factor
hindering the spread of niche technologies.


> The fate of a career at least.

No doubt. Many people pushing Erlang or similar technologies
find out the hard way that it can be career-limiting to do so.


> Don't trivialize what is involved.

At some point, many of us have had to choose: keep pushing
or take a step back and quit trying to make people see the
light. This is not trivialising the issue (well, to some extent
it is, but only relatively) -- it's more about protecting your
own mental health. Fighting windmills is no fun, and tends to
wear you down after a while. You pick something you believe in
and run with it. I'd like to think that I can still migrate to
something more exciting than Erlang, when that day comes,
but it's not easy to know when you've become stuck in your
ways.

/Uffe




More information about the erlang-questions mailing list