The Spirit of LtU

This page contains quotes taken from various discussion threads on LtU, which may help to convey something of the spirit of LtU, and why we care so much about maintaining a high quality of discussion here.



The following is a wonderful list of quotes from the thread Happy Birthday, dear Lambda, on the occasion of LtU's fifth birthday on July 27, 2005. Thanks to everyone who took the time to post these messages, which remind us of why it's worth expending time and effort to keep LtU running smoothly!
I guess this thread is probably long enough already... But I just wanted to say that I, like so many others, consider LtU one of my very favorite web sites and discussion groups.

I very casually follow blogs and web sites focussed on a number of other disciplines, and I consistently see people from other fields trying to figure out how to foster a really in-depth and ongoing dialog including both academics and interested laypeople, or how to encourage the research community to follow and discuss one another's work in a fruitful way. In almost every case, it seems like what they want is something like LtU.

Why this is so rare, I don't know... I'm not sure whether there's just something unique about the PL community, or what. But the fact that researchers can reasonably hope that an in-depth discussion will follow the publication of an interesting paper or book is apparently pretty rare and special.

I know we devolve into ugly bickering from time to time, but over the years, I think we've actually made some real progress understanding and framing (and re-framing...) some of the fundamental questions that divide us, and honestly, that's a pretty big deal.

This really is a special web site, and an ongoing example of what so many other communities are still sorely lacking. Thanks to all of you who continue to make it happen...
— Matt Hellige
I'd just like to second Matt's comments. I have yet to come across an online community similar to LtU's in any other academic discipline that I've spent time looking into. The closest I've seen is a few discipline specific mailing lists - but even those either have a very poor signal-to-noise ratio compared to LtU, or they have devolved into being just a series of calls-for-papers.

LtU really is a special place. I stumbled across it purely by accident several months ago. But since then I've visited regularly, and have found that my interest in PLT has increased exponentially over that time. So thanks to everyone for making this place as informative and interesting as it is.
— Allan McInnes
I found LtU in its first days and got seriously impressed with the quality of the discussions. At the time almost everything went over my head, but I kept reading.

And I believe the site has something to do with my career changes, because it was here (following discussions and links to papers) that I first realized how beautiful the theory of programming languages really is. And that's why I read regularly, though rarely taking part in discussion.

So, congratulations to everyone that makes this site so good, and here's to more years of high SNR ratios :)
— Andrei Formiga
I have to say this has become one of the sites I make it a point to visit. Everytime I visit I always learn something new.

I personally, started visiting about a year or so ago, maybe longer. I forget how I found out about it. But I'm in the processing of trying to learn functional programming and it's techniques and unlearn some of the programming that has been drilled into me since high school.

— toshiblue
5 years ago my son had just been born, and I'd started as a temp doing clerical work in a bank (before that I was a full-time student, trying and failing to complete a PhD in Eng Lit).

Now I'm a full-time programmer (which I'll absolve LtU of responsibility for, seeing as I started out coding in VB6...) and a fledgling PL theory geek, for which LtU is very considerably responsible. If it weren't for this site and its contributors, it's unlikely that I would have persevered with learning Haskell, read all those tutorials and papers on recursion and folds and fixpoints and monads, or even heard of CTM or TaPL - sorry, TaPL - let alone got to the point where I could read my way through either. (It's early chapters still with TaPL, but it's good stuff).

Smarter people than me think LtU is full of smarter people than them; and yet it's also accessible to the newbie and the wannabe, and provides opportunities for both to participate in a learning community that's managed to maintain high levels of intellectual curiosity and professional courtesy. That's cool. Long may it continue.
— Dominic Fox

Discussion Quality

The following is a collection of quotes from various LtU threads, on the subject of the quality and spirit of discussion at LtU. Many of these comments were used in the development of our Site Policies.

LtU has large and vibrant community, with diverse interests and skills. The main thing uniting us is our interest in programming languages. If your interests are sincere, you belong here. As you become part of the community, you naturally have a larger impact on the topics under discussion... Sincerity is key.
— Ehud Lamm, LtU Etiquette
The intent of the forum owners (both the admin and those of us who feel like defacto owners) is not to create a debating forum for advocacy, posturing, attacks, vendettas or advertising.

There is a difference between the concept of a debate versus the concept of exchanging ideas. Exchanging ideas may result in arguments (some of which can be passionate), but that is still very much different than the purpose of a debate. An exchange of ideas involves two or more people that are sharing their thoughts to either communicate their ideas, or to discern what another has to say. A debate involves at least three parties: the two advocates and a target audience (judge, jury, popular opinion). The two advocates talk past each other - and indeed have hostile intent and are more than willing to subvert their opponent. (Crush the weak is the motto of most debaters).
— Chris Rathman, LtU Style & Focus
Note that from the perspective of LtU the expressiveness of the language constructs is the main thing, implementing them as efficiently as possible comes second: efficient implementation should be possible, but might still not exist in the marketplace.

Thus, it is more fruitful to discuss the advantages (or lack thereof) of the language constructs, and move the discussions about the speed of hardware threads elsewhere (note that seening these as mutually exclusive is certainly not the only option).
— Ehud Lamm, Ruby vs. Python
LtU has many readers and quite a few contributors. Each has his own experience, and tastes. Some love Haskell, some prefer Scheme. Some work with C, others with Java and yet others with C++. Naturally the list goes on.

The nice thing is that we usually manage to discuss things without starting holy wars about which language is better, by focusing on specific uses of specific language features.
— Ehud Lamm, Why do they program in C++?
[...] Postings seem more collegial and when posted with less anonymity. [...] Most of us here post with our real, full names as a sign that we are prepared to stand behind our opinions.
— Marc Hamann, Why do they program in C++?
[Raising objections] in a collegial manner tends to have better effects both on the discourse and on the interlocuters.

When discussing PL preferences, there is always more than a pinch of "de gustibus non est disputandum".

[It is common habit] to over-generalize one's experience as typical of all programming environments and problems.

When someone says that they find a particular language better suited to "serious problems", they usually mean the serious problems that THEY routinely run into, which may be quite different in their requirements from mine, even nominally in the same field of effort.

[We should] try not to get too worked up about such things, [and instead focus on e.g. whether] any substantive features of PL design demonstrably contribute to particular suitabilities.
— Marc Hamman, Why do they program in C++?
LtU is for high quality information and discussion of programming language design and research. Use academic or professional standards of civility, clarity, and commitment to learning. There are people here who know much more than you do. You are welcome, and welcome to contribute, but please observe our purpose and the social context. This is not a loud hand-waving hallway discussion at an ACM conference. This is certainly not a "everyone has something worth saying" user group. A comment rated 5 on Slashdot may or may not be appropriate here. Few comp.lang.misc threads are. Picture yourself as standing in a quiet room with 50 people. There is a high-power core, including people who have created major languages. Most of everyone's time is spent listening. When someone clears their throat and offers up a comment or question, it is clear time and effort went into the thought and its clear expression. Thoughts are regularly set aside for days to gel. The signal to noise ratio is very high. This is our objective. Please exercise discretion in your decisions on when, whether, and how you post. With the explosive growth in LtU guests, it requires everyones' efforts to maintain quality and clip excursions. Thank you, and welcome.
— Mitchell N Charity, LtU: blog not forum!
LtU depends heavily on links to papers or articles. It is much easier to evaluate and respond to someone's position given a link to a carefully thought-out description of that position.

Not every programming problem is similar to the ones you work on.

When discussing programming languages, we can't just restrict ourselves to one kind of application, or one approach to writing code — we have to acknowledge that there's a bigger picture, even if it may not be of interest to us personally.

One huge benefit of PL and CS theory is that it allows us to understand issues that we might never have personally encountered.

Bear in mind that many, perhaps most LtU readers have an interest in ways to improve the state of the art in programming languages; indeed, that's one of the purposes of LtU. Arguing for the status quo in languages like C and C++ is not usually very interesting. It might be, if there really were a case for saying that there's absolutely no benefit to competing approaches. However, both the practical evidence and the theory is against that being the case.
— Anton van Straaten, Ruby vs. Python
Thinking that you're going to design a good language ex nihilo is a shocking conceit, a hubris of Greek mythic proportions.
— Paul Snively, Why only 'minimal' languages
I'm sure many, many LtU readers have, or have had, similar feelings... about the various shortcomings of programming languages. I think we can take it as a given that we all understand and perhaps empathize with those kind of feelings. However, it's one thing to recognize that situation, and quite another to claim that you've found the problem, or see a way to a solution. If you're going to make such a claim, then it should meet a higher standard than usual, in terms of explaining the thesis clearly, and as concretely as possible, and demonstrating a good understanding of the existing PL landscape. Otherwise, as Chris said, all you have is "a discussion about nothing in particular", at best.
— Anton van Straaten, Why only 'minimal' languages