[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Java GOOD -- Fire BAD



At 03:34 PM 8/20/2003 -0400, you wrote:

>"Joe Marshall" <jrm@ccs.neu.edu> writes:
> > I've used Lisp on the job for years.
> > Any idiot supervisor who does not let his programmers use
> > the appropriate tools for the job deserves *exactly* the calibre
> > of programmers he will get.
>
>I prefer to think of it the way Paul Graham does: if you use lisp, you
>have a competitive advantage.

"I prefer to think of it" -- the very definition of wishful thinking :-)

Hey, I'd prefer to think of it the way Paul Graham does too--and, if I had 
his bank account, I could afford to  :-)

But since I still need to get a job so I can pay my bills, and since the 
overwhelming majority of jobs
are for organizations that do not use 
Lisp/Prolog/Smalltalk/ML/insert-your-favorite-spiffy-language-here,
I'm thinking about Java certification.

Because, if you can't do Java or C++ or the like, you have a competitive 
DIS-advantage.

>  Smart bosses will let you do it and the
>stupid ones will fail to survive in the long run, or at least will get
>fewer resources to play with.


What you have to remember is that Paul's own experience is that of a 
startup. And he writes in one of the articles on his website that if you 
are a startup, using Lisp gives you a competitive advantage. If you can 
call the shots and don't have to answer to anyone else, why not use the 
best tool for the job? Makes sense. And there are/were startups that 
thought this way--I remember a few B2B companies that were using Lisp for 
this reason--don't think they survived, though (not a fault of Lisp 
necessarily, just the way the chips fell).

But in companies? They aren't necessarily interested in the best 
language--again, Paul writes about this--they are optimizing for being able 
to make programmers relatively cheap and replaceable. They're optimizing 
for predictability not productivity, etc. And also they use conventional 
technology since there are all sorts of third party add-ons and tools 
available since these languages are popular. And there are no runtime fees, 
the tools are cheaper, etc. etc. etc.

And: even if you find a company where you can work in Lisp/Prolog/etc., the 
perennial pattern (anti-pattern?) is that a working prototype or product is 
built in Lisp/Prolog/etc. and then, despite the fact that the software 
works, management decides that it needs to be re-written in C/C++/whatever. 
Even Paul Graham had this happen to him--Yahoo recently decided to port 
Yahoo store to C++ despite the fact that this would lead to a downgrade in 
functionality. Years ago I remember a Prolog project on Wall Street where 
the prototype was good enough to be put into production (not uncommon when 
working in these kinds of languages) and then management decided to rewrite 
it in C++. The effort foundered. But the Prolog version in production was 
making enough money that it covered the cost of the failed C++ rewrite. 
I'll bet someone could fill a book or three with stories like this.

So, to use (abuse?) some terminology I picked up last night from Michael 
Jackson's "Problem Frames" book (which we are now reading in LA's Java 
reading group),  "I prefer to think of it like Paul Graham" is "optative", 
not "indicative" :-)
___
DC

P.S. BTW, no offense, Paul G.--"On Lisp" is wonderful, I am happy for your 
past successes and hope you go from strength to strength.