When I gave my talk on live programming in OOPSLA/Onward! 2007, one of the gang of four (of Design Patterns fame) criticized me on not mentioning smalltalk enough. You know, I think we are all aware of Smalltalk and its ability to reload code on the fly, or the "live" eToys demo Alan Kay was giving in the late 90s/early 00s (I saw it the first time at his ECOOP 2000 banquet speech). But there really is something special in Light Table (and other projects, including my own) that go beyond that; they are working on a practical tool for programmers, they are really focusing on an interactive UX, which to be clear, Smalltalk environments never really had.
Yes, get your history and citation right to avoid being flamed. But no, it didn't end with Smalltalk (or Lisp, or whatever) and we are not just going back to that.
"Yes, get your history and citation right to avoid being flamed."
That's the wrong motivation for understanding the history of computing as it relates to what you are working on. There are things to learn from history. It's not the ability to correctly cite Smalltalk etc. to quiet some older programmers , it's the ability to compare, contrast and learn from what came before. The really debilitating thing about not understanding the history is that you are doomed to repeat the same mistakes; it's better if you can make new mistakes.
For example, you say "But there really is something special in Light Table". Great. What is it?
I've mentioned in a peer post that his design is very well done; they are focusing on awareness and code topology issues that I think is long overdue. Now, do I know exactly what the differences are between smalltalk yet? No, not at all. But I've never seen smalltalk demos like this (the closest would be etoys, which was a not-very-comparable end-user programming experience).
Again, its a blog post and a talk, I don't think we should expect rigor on previous/related work coverage at this point, that will come with time.
Appeals to emotion don't really tell me what makes Light Table innovative. You say there is, "something special," about it. What is it?
It takes either hubris or ignorance to believe your ideas are completely original. Whether Chris is aware of it or not, Light Table is not a new idea. I'm not suggesting it isn't a good one because I believe it is. However the way he worded his post suggests to me that he is probably not aware of the giants upon whose shoulders he now stands.
Nobody just picked up a guitar and invented rock-and-roll. The theory or relativity didn't just come to Einstein one day. No good idea is born in a vacuum.
I only rain on the parade a little in the hopes that his writing will improve and to raise awareness in people who aren't aware that these are good ideas and that there have been many attempts to develop them.
Light Table's layout and association between code and UI is much more direct than Smalltalk's; I would say its even better when you consider morphic. The way they've reified execution is also nicely done (seeing what objects exist as they are created).
There is a lot of innovations here, and yes, they are probably building on 20 years of related work THAT GO WAY BEYOND SMALLTALK. If he goes into a smalltalk credit, why not Lisp machines? Why not VPLs? Why not every little research project that has attempted this in the past (including my own work)? And he is still correct: the vast majority of programmers haven't been influenced by this at all, we failed, and he is trying again hopefully with something that will work! If he was writing a technical paper, then he could discuss everything in a related work section; but it was a strangeloop talk + blog post, what kind of rigor are you expecting?
His blog post made sweeping generalizations about what programming was like twenty years ago that are clearly inaccurate at their worst or at least misleading at best.
He doesn't need to cite anything. He could just make fewer generalizations of the sort in his post. Many programmers from twenty years ago were working on the very kinds of projects he is today. His might be better for many reasons than those early attempts but he does himself and his audience a disservice by not being aware of them.
What does "many" mean? 10? 20? Out of how many programmers who were active back then?
20 years ago most programmers were not using Smalltalk or lisp machines or whatever, even if those things existed they weren't used often, so the author is technically correct about the "state of the art" with the caveat that their were many attempts to go beyond this but nothing got any traction.
Also, you are incorrect about 20 years ago. The first example of liveness and directness in programming was in...1962 with the Sutherland/Sketchpad demo. 50 years ago.
I think 20 years ago would've been a good time to really hardcore market those environments. As a new student with a profitable software company, I would've been interested in this. However I never heard about these technologies until much later; C(++) & Pascal (Modula) and 'rapid' friends Clipper (for business applications) and such were things popular then. Not sure how it was in the US then, but in the EU I didn't see much promotion going on for Smalltalk/Lisp and I didn't know anyone outside uni using those languages. So I think Chris is right there; most programmers will never have seen anything like this in their lives nor do they know it exists, even if they were around in the 80s/90s or earlier when they could've known.
Indeed! The Sketchpad demo. The Mother of All Demos (Englebart who basically conceived of hyper-media and the future of knowledge work). The Symbolics lisp machines.
It's all really cool stuff. I'm really glad that Light Table is making it popular again. Maybe this time we can at least give a nod to where these ideas come from so that more people can be aware. New instead of novel.
> interactive UX, which to be clear, Smalltalk environments never really had
Smalltalk had an interactive UX in 1986 or so when I used it first for some CAD stuff. Or is there a special definition of 'interactive UX' which would rule out what smalltalk offered back then?
You know, people sometimes say Visual C++ is interactive UX because of the freaking form builder. I guess my argument is more about a certain level of interactivity that is missing; its not black and white to be sure.
Yes, get your history and citation right to avoid being flamed. But no, it didn't end with Smalltalk (or Lisp, or whatever) and we are not just going back to that.