2013-06-21

Free "Lisp Hackers" Ebook

More than a year passed since I had started to publish a series of
interviews with Lisp hackers. It was a great project, but I'm going to
finalize it for now. All of the interviews are collected in a free
ebook that is available
through leanpub. You should share
it with your friends and on the interwebs! ;)

Below is a few observations on the whole series that I think are interesting.

The Road to Lisp

There was a famous survey on the Association of Lisp Users site called
"The Road to Lisp". I have somewhat replicated it in the interview and
some of the answers where quite surprising, as far as I'm concerned.

First of all, people came to Lisp through friends, who gave them a
copy of SICP or showed some
fascinating Lisp programs. There's also a mention of online forums
(usenet, irc, etc.)

Two interesting things get notable mentions as leading to Lisp:
computer graphics and Caml-light (for the French guys).

And receiving it as legacy from the dad is somewhat priceless!

I'd also like to add my experience here: the 2 things which brought me
to Lisp were Eric S. Raymond's
"How to Become a Hacker"
which mentioned that you need to learn Lisp to become a better
programmer, and Peter Seibel's great
"Practical Common Lisp", which came out
after all the interviewed hackers were already into Lisp, so they
couldn't have been influenced by it.

Dislikes

This was an interesting question, because it made most of the persons
go out of their comfort zone a little: after all, most of them are
fond of Common Lisp. And the answers are interesting, although
expected.

Basically, it boils down to 3 things:

the arrogance of the community and/or outsiders prejudice against it

lack of static typing and other ways to express constraints on the program

disdain for the platform it lives on, which includes problems with
embedding into other systems, no good way to write one-liners, etc.

Also noted were:

necessity to struggle to achieve high performance

the unspecified corners, but this problem is becoming less and less acute

A Lisp project

This was a question, proposed by Zach Beane: what Lisp project would
you do if you weren't constrained in resources and other stuff. For
the sake of completeness, I've also followed up with him, and here's
his answer:

Right now I'd love to spend more time polishing Quicklisp. I'd love
to make a good system for discovering the functionality you need
(it's not easy to make the connection from "I need to fetch web
pages" to "drakma"). I'd like to make interfaces for accepting user
feedback and reviews. I'd like to make it easy to make connections
from a project to its website, bug tracker, mailing list,
documentation, etc. I'd like to publish my build tools and build
logs. I'd like to make EVERYTHING a lot better, to make the system
not just better than what CL had before but better than what other
language ecosystems offer, too. It's all a lot of work.

As a fantasy project, I'd love to make a system for interesting
visualization of complex data, something where it's easy to splat
something quick and dirty on the screen/page, but which can grow in
capability as the need arises. Or maybe just some tool for making
audiovisual toys, with cool pictures and noises coming out.

The other interesting answers were:

another take on reflection

an OS, based on Linear Lisp, bootstrapped from Racket or Maru

Lisp bridges to other runtime systems

a Common Lisp object database

a Go-playing program

and, surely, an own Lisp dialect or even a separate programming language :)

Lisp companies

It's one of the popular myths that it's impossible to find a Lisp job.
Well, it's definitely harder than to find a Java one, but
speaking about the job's quality YMMV. Some of the Lisp companies were
mentioned in the interviews:

ITA Software that employed up to 50 Lisp developers in its Boston
office and was bought by Google for almost $1B

Franz in the Silicon Valley

Teclo Networks in Switzerland

MSI in Japan

Novasparks which operates from Boston and Paris

But a lot more weren't mentioned. To name a few:

probably, the biggest Lisp company in the world — the Portuguese
SISCOG with 70+ Lisp developers

Clozure Associates band of Lisp gurus from the US East Coast

Copyleft from Norway

RavenPack from Spain

Australia's division of Accenture

Agri-Esprit from France

I would say, that most of them work in pretty interesting domains and with challenging problems. There are also many more one- or two-man Lisp shops scattered around the
world. So, yes, Lisp companies are rare, but there's nothing wrong
with relying on Lisp in a company: it doesn't fail you and may even bring
some outstanding results. Not to mention the fun of the process itself...