I have a programmer friend whose division is considering a rewrite of their application. It currently uses a B-tree database and involves getting orders from another system, getting results from automated instruments, and packaging those results off to the 1st system. Cost of the language/database vendor is one concern and wanting to move from this 3rd generation, albeit very productive, language into the more modern world of object-oriented programming is another. Currently Java seems to be a/the leading contender.
If you were trying to convince the management to move to LISP, what would you say or do?
It is easy enough to explain to management the many advantages of lisp and to debunk the many myths -- i am guessing your friend knows all that stuff -- but it would also help to take a few weeks of their own time to whip up a rough prototype with as much core functionality as possible. I had the latter in hand when I told the boss we should be using lisp.
sounds like your friend needs to price the tools as well. linux and cmucl would be free, fwiw, but even commercial stuff is not too expensive and management might get a warm fuzzy off a commercial vendor.
Steve Graham wrote: > I have a programmer friend whose division is considering a rewrite of > their application. It currently uses a B-tree database and involves > getting orders from another system, getting results from automated > instruments, and packaging those results off to the 1st system. Cost of > the language/database vendor is one concern and wanting to move from > this 3rd generation, albeit very productive, language into the more > modern world of object-oriented programming is another. Currently Java > seems to be a/the leading contender.
> If you were trying to convince the management to move to LISP, what > would you say or do?
Steve Graham wrote: > I have a programmer friend whose division is considering a rewrite of > their application. It currently uses a B-tree database and involves > getting orders from another system, getting results from automated > instruments, and packaging those results off to the 1st system. Cost of > the language/database vendor is one concern and wanting to move from > this 3rd generation, albeit very productive, language into the more > modern world of object-oriented programming is another. Currently Java > seems to be a/the leading contender.
> If you were trying to convince the management to move to LISP, what > would you say or do?
I think I will post to the same message on comp.lang.smalltak only varying one word...
>>I have a programmer friend whose division is considering a rewrite of >>their application. It currently uses a B-tree database and involves >>getting orders from another system, getting results from automated >>instruments, and packaging those results off to the 1st system. Cost of >>the language/database vendor is one concern and wanting to move from >>this 3rd generation, albeit very productive, language into the more >>modern world of object-oriented programming is another. Currently Java >>seems to be a/the leading contender.
>>If you were trying to convince the management to move to LISP, what
original-content-modification---->>>> ^^^^
>>would you say or do?
> I think I will post to the same message on comp.lang.smalltak only varying > one word...
"My team will be able to program circles around everyone else. They will be able to construct rapidly a language specific to the problem we are solving rather than using a language designed by computer scientists worrying about their place in history and a herd of library writers working in cubicles a thousand miles from our business."
"I will be able to point to various examples where Lisp programmers have written not only 3-5 times faster, but they wrote things other programmers thought were impossible."
"Because Lisp is dead, I'll get better programmers for less money. I'll be able to guarantee 50 more IQ points for the same pay."
"I'll be compatible with everything because it is right now. And if someone throws me a bug, I can code around it in a few minutes."
I agree with most of this, except for Lisp being dead. ;)
ilias wrote: > cr88192 wrote: >> Steve Graham wrote:
>>>I have a programmer friend whose division is considering a rewrite of >>>their application. It currently uses a B-tree database and involves >>>getting orders from another system, getting results from automated >>>instruments, and packaging those results off to the 1st system. Cost of >>>the language/database vendor is one concern and wanting to move from >>>this 3rd generation, albeit very productive, language into the more >>>modern world of object-oriented programming is another. Currently Java >>>seems to be a/the leading contender.
>>>If you were trying to convince the management to move to LISP, what > original-content-modification---->>>> ^^^^ >>>would you say or do?
>> I think I will post to the same message on comp.lang.smalltak only >> varying one word...
> you have copied the message out of c.l.smalltalk.
> you have to declare that.
> you posting is missleading.
> why do you do that?
actually I typed both at roughly the same time, each being a reply to the respective message. if you notice the same variations occure in the quoted versions as in the original messages, as such this was not a repost...
the one word was the usenet group, each pointing to the other. I had figured it would have been funny to someone who reads both groups...
On Sun, 06 Oct 2002 07:12:27 -0700, cr88192 <cr88...@hotmail.nospam.com> said:
*> Vassil Nikolov wrote: >> On Sat, 05 Oct 2002 19:16:53 -0700, cr88192 >> <cr88...@hotmail.nospam.com> said: >> >> > I think I will post to the same message on comp.lang.smalltak only ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >> > varying one word... >> >> It had already been done. But not to any other group---is >> Smalltalk the only competitor to Lisp when it comes to finding a >> non-Java solution? >> *> the original poster had posted nearly identical messages to both groups, I *> had thought if would be funny to do similar as a reply to each version...
I see now. I read the message to which I responded as if it said `I will post the same message...' while in fact it meant `I will ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ respond to the same message...' ^^^^^^^^^^^^^^^^^^^^^^^^^^^
And my question (whether only Lisp and Smalltalk can be considered for a non-Java solution) refers to the fact that the original posts of those nearly identical messages were in just those two newsgroups.
---Vassil.
-- Garbage collection is charged at 0.19e-9 cents a cons. Bulk rates are also available: please contact memory management for details.
>>>>I have a programmer friend whose division is considering a rewrite of >>>>their application. It currently uses a B-tree database and involves >>>>getting orders from another system, getting results from automated >>>>instruments, and packaging those results off to the 1st system. Cost of >>>>the language/database vendor is one concern and wanting to move from >>>>this 3rd generation, albeit very productive, language into the more >>>>modern world of object-oriented programming is another. Currently Java >>>>seems to be a/the leading contender.
>>>>If you were trying to convince the management to move to LISP, what
>> original-content-modification---->>>> ^^^^
>>>>would you say or do?
>>>I think I will post to the same message on comp.lang.smalltak only >>>varying one word...
>>you have copied the message out of c.l.smalltalk.
>>you have to declare that.
>>you posting is missleading.
>>why do you do that?
> actually I typed both at roughly the same time, each being a reply to the > respective message. > if you notice the same variations occure in the quoted versions as in the > original messages, as such this was not a repost...
> the one word was the usenet group, each pointing to the other. > I had figured it would have been funny to someone who reads both groups...
a joke is a joke.
modifying a posting of another person is not a joke.
* Steve Graham | If you were trying to convince the management to move to LISP, what would | you say or do?
I have no experience with convincing management to move to Common Lisp, but as a consultant to companies who already had failure on their hands, or a problem to which they did not know a solution, offering Common Lisp and a significantly better chance to succeed has not been met with much resistance. Now, as a consultant, they may have trusted /me/ rather than my tools and may well have called me in the first place to help them out of their predicament, so what experience I have may not be all that useful to somebody else. However, one thing should be generally applicable:
Size up the problem and spend as little company resources as possible to determine that you can solve the problem. This may involve solving part of it for "free", just to demonstrate how you would do things. This achieves two separate goals. The first is to show your management that you know your stuff and that they should trust you with the problem. The second is to show your management that you are willing to take risks of your own in order to "prove" something to them. Normally, both of these are valued by your management. If not, seek employment elsewhere, as they do not trust you or appreciate your efforts to solve their problems.
To really succeed, tell your management about what you intend to do up front, and show that you can do the preliminary work without involving a lot of people and that you can deliver what you promised on time, then show them what you need in order to finish the task. If you have a track record of delivering on time, that also helps a lot.
Note that this stresses "do" over "say". "Say" alone never cuts it.
-- Erik Naggum, Oslo, Norway
Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.
There has been a lot of talk about my having posted the same message to c.l.l and c.l.smalltalk. I have virtually no experience in OO, but I have followed LISP and Smalltalk with interest, and thought readers of the 2 newsgroups might have some valuable input to the discussion. I chose not to cross-post the message: Who wants to have their newsgroup cluttered up with the traffic from another.
Thanks to all those who have posted their suggestions.
Steve Graham wrote: > I have a programmer friend whose division is considering a rewrite of > their application. It currently uses a B-tree database and involves > getting orders from another system, getting results from automated > instruments, and packaging those results off to the 1st system. Cost > of the language/database vendor is one concern and wanting to move > from this 3rd generation, albeit very productive, language into the > more modern world of object-oriented programming is another. > Currently Java seems to be a/the leading contender.
> If you were trying to convince the management to move to LISP, what > would you say or do?
>>>>> I have a programmer friend whose division is considering a rewrite of >>>>> their application. It currently uses a B-tree database and involves >>>>> getting orders from another system, getting results from automated >>>>> instruments, and packaging those results off to the 1st system. >>>>> Cost of >>>>> the language/database vendor is one concern and wanting to move from >>>>> this 3rd generation, albeit very productive, language into the more >>>>> modern world of object-oriented programming is another. Currently >>>>> Java >>>>> seems to be a/the leading contender.
>>>>> If you were trying to convince the management to move to LISP, what
>>> original-content-modification---->>>> ^^^^
>>>>> would you say or do?
>>>> I think I will post to the same message on comp.lang.smalltak only >>>> varying one word...
>>> you have copied the message out of c.l.smalltalk.
>>> you have to declare that.
>>> you posting is missleading.
>>> why do you do that?
>> actually I typed both at roughly the same time, each being a reply to >> the respective message. >> if you notice the same variations occure in the quoted versions as in >> the original messages, as such this was not a repost...
>> the one word was the usenet group, each pointing to the other. >> I had figured it would have been funny to someone who reads both >> groups...
> a joke is a joke.
> modifying a posting of another person is not a joke.
*sorry*
my fault.
for some reason i don't see the original post of "Steve Graham" in this newsgroups.
so i thought you copy his message, change the word (smalltalk => LISP) an post a reply here.
>>>>>I have a programmer friend whose division is considering a rewrite of >>>>>their application. It currently uses a B-tree database and involves >>>>>getting orders from another system, getting results from automated >>>>>instruments, and packaging those results off to the 1st system. Cost >>>>>of the language/database vendor is one concern and wanting to move from >>>>>this 3rd generation, albeit very productive, language into the more >>>>>modern world of object-oriented programming is another. Currently Java >>>>>seems to be a/the leading contender.
>>>>>If you were trying to convince the management to move to LISP, what
>>> original-content-modification---->>>> ^^^^
>>>>>would you say or do?
>>>>I think I will post to the same message on comp.lang.smalltak only >>>>varying one word...
>>>you have copied the message out of c.l.smalltalk.
>>>you have to declare that.
>>>you posting is missleading.
>>>why do you do that?
>> actually I typed both at roughly the same time, each being a reply to the >> respective message. >> if you notice the same variations occure in the quoted versions as in the >> original messages, as such this was not a repost...
>> the one word was the usenet group, each pointing to the other. >> I had figured it would have been funny to someone who reads both >> groups...
> a joke is a joke.
> modifying a posting of another person is not a joke.
I did not modify the other's message, there were originally 2 nearly identical posts on 2 groups, and I served to write 2 nearly identical replies.
Steve Graham wrote: > There has been a lot of talk about my having posted the same message to > c.l.l and c.l.smalltalk. I have virtually no experience in OO, but I > have followed LISP and Smalltalk with interest, and thought readers of > the 2 newsgroups might have some valuable input to the discussion. I > chose not to cross-post the message: Who wants to have their newsgroup > cluttered up with the traffic from another.
> Thanks to all those who have posted their suggestions.
yes, and my attempt to use the fact as a base for a joke seemed to backfire...
sorry I couldn't really add much useful to the conversation, I am off a bit messing with my own prog lang, which I have not been able to put too much work into recently as I have been quite busy otherwise...
> I have no experience with convincing management to move to Common Lisp, > but as a consultant to companies who already had failure on their hands, > or a problem to which they did not know a solution, offering Common Lisp > and a significantly better chance to succeed has not been met with much > resistance. Now, as a consultant, they may have trusted /me/ rather than > my tools and may well have called me in the first place to help them out > of their predicament, so what experience I have may not be all that useful > to somebody else.
I read this to mean some of these companies calling on you were not using Common Lisp in the first place.
How do they (or you) deal with the Lisp code maintenance issue after you're done?
>>>>> On 8 Oct 2002 02:59:21 GMT, Ng Pheng Siong ("Ng") writes:
Ng> According to Erik Naggum <e...@naggum.no>: >> I have no experience with convincing management to move to Common Lisp, >> but as a consultant to companies who already had failure on their hands, >> or a problem to which they did not know a solution, offering Common Lisp >> and a significantly better chance to succeed has not been met with much >> resistance. Now, as a consultant, they may have trusted /me/ rather than >> my tools and may well have called me in the first place to help them out >> of their predicament, so what experience I have may not be all that useful >> to somebody else.
Ng> I read this to mean some of these companies calling on you were not using Ng> Common Lisp in the first place.
Ng> How do they (or you) deal with the Lisp code maintenance issue Ng> after you're done?
I would assume that they deal with it in the same way as anything else. They either hire the original programmer again, or if they don't want to do that, they hire someone else who has the same skills?
So I suppose I don't understand the question. Umm, is there some other way of doing it?
* Ng Pheng Siong | How do they (or you) deal with the Lisp code maintenance issue after | you're done?
With support contracts. I always ensure that I have people who can take over for me. Sometimes, customers have wanted to rewrite things that work into a more "mainstream" language. These projects have always failed, however. I find that moderately amusing, because no matter how hard you try to blame someone else for your failure, a working system simply and effectively mocks every attempt. People whose purpose it is get their job done, do not desire to rewrite systems because some new manager has been to a Java conference and needs to defend the expenses.
-- Erik Naggum, Oslo, Norway
Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.
> According to Erik Naggum <e...@naggum.no>: > > I have no experience with convincing management to move to Common Lisp, > > but as a consultant to companies who already had failure on their hands, > > or a problem to which they did not know a solution, offering Common Lisp > > and a significantly better chance to succeed has not been met with much > > resistance. Now, as a consultant, they may have trusted /me/ rather than > > my tools and may well have called me in the first place to help them out > > of their predicament, so what experience I have may not be all that useful > > to somebody else.
> I read this to mean some of these companies calling on you were not using > Common Lisp in the first place.
> How do they (or you) deal with the Lisp code maintenance issue after you're > done?
What issue would that be, and how is it different from a Java, Perl, Python, Visual Basic or C++ code maintenance issue?
There are lots of Common Lisp programmers who will gladly bail their C++ or Java job to get paid to work with the intelligent language that they know. If you hire these people, you are not only getting a Lisp programmer, but a C++, Java or whatever programmer in the same package. This individual will be grateful for an opportunity to write software right, and work hard for you.
If you advertize a Lisp job anywhere, it will nicely stand out, because it won't be listed alongside three hundred identical postings, and whereas the stack of applications that you get will probably be substantially smaller than if you advertised a (for instance) C++ or Java development position, it will have a far lower proportion of unqualified applicants.
As a last resort, you could always offer the job to someone who is well qualified, having a track record in design and implementation using some other languages, and who is willing to pick up Lisp. That person will probably make some mistakes, such as choosing poor data representations and approaches, but the result will likely still be superior, and as that individual learns more, Lisp will allow the old design decisions to be refactored with great ease.
Unpopular programming languages do not attract unqualified people in droves. You get the odd moron and a bit of lunatic fringe (consider recent Usenet examples such as of ``ilias'' and ``gnuist007'') but that's it.
Remember, not everyone who claims to be a programmer and know some languages is actually a qualified developer who is fit to maintain your code, regardless of what programming language it is written in. The future of that code depends on on having *something* done to it, but having something *right* done to it.
According to Christopher C. Stacy <cst...@dtpq.com>:
> >>>>> On 8 Oct 2002 02:59:21 GMT, Ng Pheng Siong ("Ng") writes: > Ng> I read this to mean some of these companies calling on you were not using > Ng> Common Lisp in the first place.
> Ng> How do they (or you) deal with the Lisp code maintenance issue > Ng> after you're done?
> I would assume that they deal with it in the same way as anything > else. They either hire the original programmer again, or if they > don't want to do that, they hire someone else who has the same skills?
> So I suppose I don't understand the question. > Umm, is there some other way of doing it?
Putting it the way you do, it does sound like a silly question. ;-)
My question was in the context of a consultant coming into a company without prior Lisp experience and concurrently facing failure in some project, where consultant then delivers some end product in Lisp. Erik has answered that very clearly. (Thanks.)