[Ocaml-biz] IDEs

Brian Hurt bhurt at spnz.org
Fri Sep 10 11:44:39 PDT 2004


On Fri, 10 Sep 2004, Brandon J. Van Every wrote:

> Brian Hurt wrote:
> > Brandon J. Van Every wrote:
> >
> > > I must say, getting Visual Studio users to move to any of
> > > Emacs, XEmacs, or Vim is an awfully hard sell.
> >
> > Now you know *exactly* how I feel when asked to switch.
> > Congratulations-
> > we've just created another hurdle for people trying to adopt
> > Ocaml, they
> > have to learn a new editor/build environment to do so.  I
> > know I for one wouldn't have bothered if that was the case.
> 
> There are different ways to ask people to switch, however, and different
> factors involved.  For instance, to fulfil my strategic objectives I
> need OCaml much more than I need the best editor in the world.  I had
> already decided upon OCaml due to many other value propositions.  I will
> swallow GNU Emacs eventually under sheer duress if I have to.  That
> doesn't seem to be the case with you, if you were willing to allow a
> mere editor to stand in the way of you and OCaml.  Did you just try it
> out and like it one day?

Which, vi or ocaml?

I picked up vi after struggling with vs for a couple of months.

I picked up Ocaml because I was designing my own language.  I decided I
really needed to know a functional programming language in order to
explain why functional programming was bad, or at least wasn't worth it.  
I picked Ocaml because of the shootout.  So I picked up a book on it and
started beating my head against it.  It was as difficult as learning C++
from Strousup was, but the lack of a good book on Ocaml made it harder
than it needed to be.  Of course, once I learned Ocaml, I realized it was
a better language than the one I had been designing was going to be, and
that I really really liked functional programming.

> 
> A webpage that actually markets the use of a GNU Emacs toolchain for
> OCaml, and demonstrates how it really isn't all that bad, and packages
> things up so you're ready to go right away, and shows how there's far
> fewer steps for getting started than you'd think, would go a long way to
> getting someone like me to move over.  But currently that website does
> not exist, or cannot easily be found.

This is a good idea.

I do think that, despite it's Java centrism, Eclipse might be even a 
better target for this than Emacs.

There is a difference between making it easy/easier to install and use one 
editor, and making it impossible/disallowed to use another one.  If you 
want to use vi, you'll need to spend some time futzing.  Fine, I'm cool 
with that.

> It is about selling the initial experience.  This is ocaml-biz, so we
> talk about how to market to people.

Yep.  And remember that there are more people out there to market to than 
just Corporate Windows Developers.

> 
> > time_to_learn + (num_times_used * avg_time_per_use)
> 
> The reason you will never have this culture shift, is because your
> projected time savings in the future is a leap of faith.  There is no
> way to know that OCaml will actually save you work, for having gone
> through the pain of getting started with it.  Businesses understand this
> risk, that's why they assess and manage their risk.  Usually this means
> making exceedingly conservative decisons about what platform to use.

Yep.  And that's where other people succeeding comes into the picture.  
Both in the choice of editors and in the choice of languages.  There will 
be a small number of people who will invest the time for non-productivity 
reasons (like me).  Which is why new languages can get adopted at all.

> Another important point is that the line worker doesn't count.  The
> manager or Decisionmaker is what counts.  They have the power to impose
> an editor upon a lot of people.  That is usually how people are actually
> made to switch: kicking, screaming, and clawing.

The managers often beleive this, too.

Calling programmers 'line workers' is a whacked idea.  Programmers are 
less like assembly line workers than they are lawyers, doctors, or 
engineers.  We're hired because we know things.  How to best do our jobs, 
for one.

There are good reasons to standardize of development environments.  In 
this case, however, generally who won't have to work too hard to get 
buy-in from the programmers.  They'll generally be looking to get buy in 
from you in these cases.

If you try to enforce a pointless standard, the programmers will fight you 
on it- or just ignore you and route around.  The story of Linux in the 
data center is a wonderful example of this.  Linux was getting put into 
data centers long before it was popular to admit that it was.  Admins- the 
line workers- were doing it, replacing Windows NT with Linux/Samba, often 
in direct disobedience of "Windows only" orders.

-- 
"Usenet is like a herd of performing elephants with diarrhea -- massive,
difficult to redirect, awe-inspiring, entertaining, and a source of
mind-boggling amounts of excrement when you least expect it."
                                - Gene Spafford 
Brian




More information about the Ocaml-biz mailing list