Live data from Hacker News

How knowing Lisp destroyed my programming career (2006)

coding.derkeiler.com

101–110 of 433 posts

Re: How knowing Lisp destroyed my programming career (2006)

#101
Horses for courses, surely? I've never coded in Lisp except for one undergrad assignment in the early 90s... but I know it's good for functional, heavily recursive, algorithmic type problems.

But the world is far messier than that and if, like me, you come from a systems or real-time programming background then Lisp basically did not exist and you were using C-based languages (or even assembler) that were close to the metal so you could code interrupt handlers, asynchronous I/O drivers and the like. Obviously trying to tackle those kinds of problems from a Lisp-centric viewpoint would seem slightly crazy, so why bother?

Re: How knowing Lisp destroyed my programming career (2006)

#102
post #90
post #81

Earlier quoted context omitted.

I'd put it differently. Software development severely lacks any objective metrics of performance and quality. We just haven't invented any(at least any practical enough to become mainstream). As a result, we quite often misjudge our(and others') skill and make bad decisions. It's the goal of software to provide more and more features. The problem is, we usually achieve those features by abusing abstractions we are us…

> we are fundamentally unable to reuse already written code on scale Actually I disagree - it's just that when something does become reusable it immediately vanishes from people's consciousness. You can see this both in things that become standard library features, and open source components that end up ubiquitous. The list of "incorporates software from" in licenses gets ever longer as people embed copies of SQLite,…

Good point. I would like to point out however that all of your examples appear to do well in abstracting mostly technical problems, not business problems. Technical problems are problems common across our field and natural areas of interests of those '10 %'. Business code is something written by majority of us(or at least I would expect it to be so) and it doesn't appear to scale and grow so nicely.

Re: How knowing Lisp destroyed my programming career (2006)

#103
post #22

Using any language for twenty years straight is going to make you complacent - but goodness, how many languages would have given you that luxury?

The APL / J / K family of languages seems to be very strong with this effect. If it fits your problem domain, it's (apparently) so powerful that using anything else feels like a frustrating waste of time.

Conway's game of life in one line of APL: http://www.youtube.com/watch?gl=GB&hl=en-GB&v=a9xAKttWgP4&fm...

HN discussion(2010) : https://news.ycombinator.com/item?id=1041500

Re: How knowing Lisp destroyed my programming career (2006)

#104
post #40

For a while now I've had a feeling that all the comments about lack of engineers(especially in software) are vastly underestimated. Probably around 10% of us is capable of doing actual software development. The rest writes plumbing and can handle the project for only as long as abstractions available through libraries can hold the complexity. If we assume most of us don't really know what we're doing, that totally ex…

As someone not even worthy of the status of a plumber, I quite agree. But the wonder of it all is that we can attend on the shoulders of giants so easily.

Re: How knowing Lisp destroyed my programming career (2006)

#105
post #72
post #34

Earlier quoted context omitted.

I think of those C and Perl fit the most. You can't write C++ or Java like you did 20 years ago (of course, you could but you shouldn't ). Both languages and their whole ecosystems have evolved tremendously in 2 decades. The C and Perl style OTOH has changed less. A programmer of those language from 20 years ago that is transported to the present day will have much less problems fitting in than a programmer of C++ an…

This depends on your target platform. Mine: > cl.exe Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved.

Haha. I know that many embedded programmers have to put up with gruesome outdated and awkwardly custom patched compilers, but yours takes the prize of the oldest.

I hope they pay you enough for the pain and suffering of using it. :-)

Re: How knowing Lisp destroyed my programming career (2006)

#106
post #47

Honestly curious why Lisp has so much admiration and praise on HN. I played around with Scheme some long time ago, read SICP, learned a lot. And I know Lisp inspired many programmers like the founder of Ruby. But I would not think of Lisp when it comes to solving day to day problems. I rather pick Python because it helps me solve all kinds of problems. There are many more solutions I can think of (Ruby, Node, Go, eve…

> Honestly curious why Lisp has so much admiration and praise on HN.

Paul Graham and Robert Tappan Morris, two of the founders of YCombinator, love Lisp/Scheme. They got rich by selling their company Viaweb to Yahoo. You guessed it: Viaweb was written in LISP and Paul Graham believes that this was their secret weapon:

> http://www.paulgraham.com/avg.html

Also the software that drives Hacker News is written in Arc, a Lisp dialect that was invented by Paul Graham.

So Hacker News and YCombinator are indeed at least historically very attached to Lisp/Scheme.

Re: How knowing Lisp destroyed my programming career (2006)

#107
post #77

Earlier quoted context omitted.

> "actual software development" and "plumbing" is elitist, Perhaps, but you are the person who prepended 'mere' in front of plumbing.

I'll take it out again if people are going to argue by string matching rather than reading the tone of the original post.

It might be best.

Re: How knowing Lisp destroyed my programming career (2006)

#108
post #40

For a while now I've had a feeling that all the comments about lack of engineers(especially in software) are vastly underestimated. Probably around 10% of us is capable of doing actual software development. The rest writes plumbing and can handle the project for only as long as abstractions available through libraries can hold the complexity. If we assume most of us don't really know what we're doing, that totally ex…

Your post resonates, but let's be fair: the business of a lot of the money in software now - users downloading deploys that change daily or more frequently, on multiple devices, with expectations to interoperate with so much other software - has really changed the incentives of what to focus on.

Re: How knowing Lisp destroyed my programming career (2006)

#109
post #16

> knowing Lisp made me all too keenly aware of Java's shortcomings, and I had a very hard time not being angry at how stupid it was that I was being forced to use it. I would take this as a the thing to remember from this. When you are too angry at something, you cant learn it. I have seen the emotional refusal to learn new inferior thing (or read comments that amounted to the same) many times already. It is somethin…

I'm interested in knowing your secret to finding inferior new things interesting.

Often times it is inferior, because you are acutely missing things it does not have, but did not yet learned to use things it does have effectively.

So, the secret is to be alone in a room, so you can swear freely. Walk around when angry and complain to yourself. But always go back and continue using it and eventually, that phase will pass. After that you will build new set of habits that work around disadvantages and use advantages.

Re: How knowing Lisp destroyed my programming career (2006)

#110
post #93

I came to Lisp (Scheme/Racket) from that another side (C++, Java, Perl) and it was an enlightening experience. Now I use Lisp nearly everywhere in a form of a small .NET runtime module. Lisp is excellent at templating tasks. Just for comparison: StringTemplate for .NET is a whooping 400 kB of compiled binary code while my implementation of Lisp is just 35 kB (!). Sure enough, Lisp does the very same thing as StringTe…

Although that approach to string creation tends to fall apart quickly in non-English languages: adjectival agreement, plural rules etc.

No, no, it doesn't fall apart! Lisp is Turing-complete. You can do (in English):

  "David has %n% apple%(when (> n 1) "s")%."
You can move that rule to function etc. You can tweak that for the language you use in an endless number of ways.
Post reply on HN