
Beyond Light Table - dahjelle
http://www.chris-granger.com/2014/10/01/beyond-light-table/
======
scrollaway
The "And Light Table" section leaves a lot to be desired. I get that it's not
abandoned but development.. used to be active on it and now?

I mean Light Table is a great IDE but it just needs so much done. It feels
like 95% complete in every corner. The vim keybindings are buggy, Python
plugin lacks proper virtualenv/custom python support, performance is not quite
there either... I forget all the issues I encountered back when I used it but
there has been very few releases since and it's super concerning to just see
what was once an extremely active project slowly go in maintenance mode.

Please, quell my fears. You guys put together an amazing Kickstarter and used
to put out so much in terms of updates and feature updates; I don't see that
anymore.

With all that said, best of luck with Eve, sounds awesome.

... Edit: I think these graphs are pretty telling.
[https://github.com/LightTable/LightTable/graphs/code-
frequen...](https://github.com/LightTable/LightTable/graphs/code-frequency)

~~~
ibdknox
As just a plain editor, it's hard to compete with vim/emacs/sublime. The
interesting things LT offered were around connecting to running pieces of
software and the truth is that we just ran against a wall in what we can do
with our current languages. That's why Apple's effort with Swift is so
important: they're designing the language to be tooled. We didn't have that
benefit and along the way we learned that it actually wouldn't help that much
anyways.

Any single tool is going to be an incremental improvement (at best) on
programming, because the source of the issues is really the model itself. My
suspicion is that programming is going to change substantially over the next
decade, because while we've been worried about machine learning, rails, and
hadoop, the notion of the machine changed out from under us. We're already
starting to hit a wall as a result of that - reasoning about highly concurrent
systems with the programming models we have now is nearly impossible. If we
continue pushing LT for that way of thinking, it's unlikely to make much of a
difference. Instead, there's an opportunity to embrace that change and take
the ideas of LT to their logical conclusion: what would a stack built for
today's machine that is meant to be used by humans look like? We stumbled on a
solution as we did more and more user testing of LT and in the interest of
self preservation we ran with it.

More practically, though, incremental improvements are hard to sell - not just
to VCistan, but to programmers as well. Hell, even orders of magnitude
improvements are hard to sell to programmers. We'd have no way of sustaining
ourselves if we couldn't find some avenue to eventually turn this into a
business - we looked and couldn't really find a reasonably quick way to do
that. Matching the millions of man hours that have been poured into vim/emacs
and so on is just not in the cards for a couple of guys with not much funding.
Plus it seems programmers are increasingly less interested in paying for
anything in general, so that didn't make our prospects all that attractive.
With Eve there's a much clearer path towards creating a sustainable business
that is able to continue towards the ridiculous goal we set out with from the
beginning: to empower the world's creators.

We use LT every day. Lots of other people do too. It fills an important part
of the ecosystem and we hope it continues to infect other tools and
organizations who have significantly greater resources than a couple of guys
in SF. But either way we will do our best to make sure that it continues.
Unfortunately, though, it just can't be our primary focus - both because I
think that would be focusing on the wrong part of the problem and because at
the end of the day we have to pay ourselves and there's just no way for us to
do that.

~~~
yogthos
The fact that you're moving on from Light Table is perfectly fine. The problem
is that you're not bothering to provide any sort of handover strategy.

A lot of people are interested in the project, would like to contribute to it,
and would be happy to take over where you left off. However, this is difficult
to do due to lack of documentation and any support from yourself.

You can read the experiences of one person trying to contribute here
([https://groups.google.com/forum/#!topic/light-table-
discussi...](https://groups.google.com/forum/#!topic/light-table-
discussion/Y74UH64eiS0)) and here ([https://github.com/JonyEpsilon/gorilla-
repl/issues/132](https://github.com/JonyEpsilon/gorilla-repl/issues/132)).

Since you're not going to be actively working on the project, why not involve
the community find individuals or an organization that would continue
developing and maintaining it.

Surely, this is not too much to ask and it would be a responsible way to
transition from the project.

~~~
ibdknox
I have stated from the beginning that I'm more than happy to get people more
involved. When it has come up before I've said I'd gladly give people commit
rights. There are only a couple of people who have contributed with any degree
of frequency where that would make sense - Josh Cole and Mike Innes come to
mind, for example.

I will certainly not stand in the way of the community and we're more than
happy to help maintain.

~~~
yogthos
My point was that the community needs more support from you in order to be
able to contribute meaningfully. This involves actively finding people who
would be willing to take over the project and working with them to help them
get started.

Simply dropping the code on GitHub and saying that you're glad for people to
get involved is not a sufficient level of support at this point. This might've
worked when the project was younger and smaller, but it's just too big for
people to be able to dive into now. The links I provided are a prime example
of the problem.

Since you found the time to make a blog post about Eve, surely you could also
make a post stating that you're looking to hand over Light Table and you'd
like to help facilitate the transition.

~~~
ibdknox
That's fair. I'll get on it.

------
dragonwriter
> Imagine a world where everyone has access to computation without having to
> become a professional programmer - where a scientist doesn’t have to rely on
> the one person in the lab who knows python, where a child could come up with
> an idea for a game and build it in a couple of weekends, where your computer
> can help you organize and plan your wedding/vacation/business.

This seems to misunderstand fundamentally what it means to be a professional
programmer. Knowing some programming language isn't it, its a mode of thinking
and analysis. I think that with programming things get confused in people's
minds because there is less of a clear _professional_ distinction between
construction and design than in physical engineering, but learning languages
and syntax is the _trivial_ part of programming already. Eliminating the
_hard_ part of the requirement to become a professional programmer is an AI
complete problem, because it means you are getting the computer to do your
thinking for you.

Many people who try to make programming better starts out with tools like IDEs
or analysis tools, maybe proceeds to actual new languages, and ends up tilting
at the windmill of transforming programming by replacing it with something
that eliminates the need for professional programmers entirely -- and while we
tend to get useful tools out of the other step, that last one is pretty
consistently a place where we get vague hopes and pretty demos and, if
anything of lasting use, salvaged pieces that end up as analysis, etc., tools
for professional programmers.

I'm not saying this isn't interesting or that I don't want to see where it
goes, but the description provided of both the goal and how the people
promising they can deliver it have "found the way" by "studying the past and
revisiting some of the foundational ideas in computing" is something I've
heard from some group or another every few years for the last several decades.
What I don't see is why this time is different.

~~~
rictic
And yet, people do get useful work done with spreadsheets. They build computer
programs that solve problems for them. There are many programs that aren't
feasible to write in a spreadsheet, but there are many useful ones that are.

I think success for this project looks more like a supercharged spreadsheet
than a simplified programming language. There will be many programs that won't
be feasible to write in it, but I think they could carve out an area wherein
there are many useful programs that can be. If that area is large enough, that
would be a big deal.

~~~
slantedview
Doing powerful things with spreadsheets involves a similar amount of
difficulty/learning as hacking some Python.

~~~
jamii
But doing simple things with spreadsheets is a hell of a lot easier than doing
simple things with python. Learning curves are important because most people
will never get to the powerful things if they get frustrated and give up on
the simple things.

~~~
p1esk
Actually, for me, doing simple things with Python is more intuitive than doing
simple things with Excel.

~~~
joshdance
You and I read hacker news. We are not normal. :)

~~~
p1esk
Maybe, but try adding 2 numbers. In Python, I can just type 3 + 4 and hit
Enter, in Excel, it's significantly less intuitive.

~~~
marvy
You type =3+4 instead. Surely an extra equal sign is not a big deal?

------
EvanMiller
The vision here is noble, and I applaud what Chris has done with Light Table,
but based on the discussion here, I think the Eve team is setting themselves
up for disappointment.

1\. By bringing investors on board, and promising Hacker News they're going to
change the world, they're basically asking to be stressed out all the time.
This is not conducive to innovation.

2\. There's a fundamental tension between creating something usable by Joe in
accounting and something that is cutting-edge from a technical perspective
(highly concurrent etc). 90% of line-of-business programs use less than 10% of
CPU, and approximately 0% need high concurrency. Joe in accounting is not
going to build the next WhatsApp, and every moment you spend figuring out
multi-core whatever, you're not thinking about how to help Joe make his Cash
Flow Prediction Tool look slick.

3\. From a marketing perspective, creating a new category of software is an
enormously difficult undertaking. There are two related problems here:

A. You have to find potential customers. Because nothing like Eve exists, the
market does not exist. I.e. the world's "creators" don't all go to the same
conferences, visit the same websites, and hang out in the same IRC channels.
Light Table at least was addressing an existing market, i.e. "programmers who
use X/Y/Z", so you could actually _find_ customers, and they could tell their
programmer friends about it.

B. After you find potential customers, you have to educate them, i.e. explain
the potential benefits and teach them how to use the darn thing. This requires
a major investment from both you and from your interested customers. It is
much, much easier to sell something that relieves the customer's pain than
something that promises him "superpowers". 95% of "creators" have only vague
and incorrect notions about programming, so you'll have a hell of a time
explaining the product. Let's say you want to target Joe in accounting: What
will the advertisement actually say? "Do you miss VB6?"

4\. The fact that the LT team is giving up on Light Table when it's still the
proverbial "couple of guys" is not a good sign. From a marketing perspective,
Light Table had every advantage in the world: tons of publicity / viral
videos, a clearly defined market, and an exciting product that got people
talking. The fact that they're throwing in the towel tells me, well, they quit
too early, and they'll quit on Eve when the going gets tough.

To be more specific, I think Chris's fears about the market for Light Table
are totally unfounded. To wit:

* "The competition has millions of man-hours invested". Who cares? On a day-to-day basis I execute maybe 3% of the code paths in my editor. In my view, Light Table is a classic opportunity to offer 10% of the functionality of the bloated competition but really knock that 10% out of the park. Look at e.g. Pixelmator versus Photoshop or [toot toot] Wizard versus SPSS.

* "Programmers don't pay for software". I'm sorry, but this is a poor excuse, and if I were your drill sergeant, and this were an 80s movie, I'd be screaming in your face right now. Programmers are a wealthy and growing segment. They'll pay for stuff if it helps them get their job done (GitHub, TextMate, books, conferences, heck Visual Studio). Not only that, with the product's positioning, you have a great opportunity to sell to people who want to be programmers, the "ski pants" market, if you will. If you read the comments in this thread, you'll notice that your users are complaining about the Light Table's lack of polish and they clearly recognize the need to pay someone to provide that polish.

In sum, I think the LT team should have worked themselves into a crying,
bleeding, starving mess to make Light Table a commercial success, and then
pursued bigger ideas once they had the business experience under their belt.
Even if it took a few years, they'd be in a much better position both
financially and psychologically to tackle a Grand New World-Changing Product
once they had the routine down from their Small Life-Changing Editor.

As an indie-app-developer-whatever myself, I would kill for the kind of
publicity and market opportunity that Light Table had. I wish Chris & Co. all
the best with Eve, and I truly hope they succeed. But based on what I'm
reading, I don't think they don't deserve to.

~~~
ibdknox
Hey Evan, I have immense respect for your work, but this is surprisingly
armchair quarterbackish.

> "The competition has millions of man-hours invested". Who cares? On a day-
> to-day basis I execute maybe 3% of the code paths in my editor

This is the Microsoft Office argument and the problem is that no one uses the
same 3%. If they did, sure it'd be "dead simple", by that of course I mean
take many, many years of work. Sublime which attempts to do far less than we
wanted to took 5 years to get to today and I'm not sure it really is a
commercial success capable of supporting 3+ people.

> "Programmers don't pay for software". I'm sorry, but this is a poor excuse

It's far from an excuse, it's the truth. It doesn't matter if developers as a
class have a lot of money. They don't actually spend it. I don't know a single
person who has ever personally paid for Visual Studio. Github is a service and
the vast majority of their money comes from companies not individuals. How
many people run stuff only on the heroku free tier?

Or here's a direct example: when we launched the kickstarter people \
_freaked\_ out about us pricing it at $50. We had to drop it all the way to
$15 and folks still complained endlessly about it. It is well known that short
of a service targeted at companies, it is near impossible to sell developer
tools. After all, it's a group of people who look at a piece of software and
say "I can build that".

If there's some secret, we're missing it. There's an entire organization [0]
that has grown up around trying to help dev focused companies figure this
stuff out. It's led by James Lindenbaum (co-founder of Heroku, invested in
us), he knows his stuff and he couldn't figure out a way to make this work out
either.

[0]: [http://heavybit.com/](http://heavybit.com/)

~~~
dubcanada
You need to understand that people like to complain about stuff. If they
complained about the $50 and then you dropped it to $15. They got exactly what
they wanted. Why would they not just keep complaining to get it down another
$5?

People pay for stuff that is useful to them, the problem with light table is
people don't understand why it is useful to them until they think about
it/look at it. You should have completely ignored every complaint related too
money.

VS costs hundreds of dollars (going into the thousands for MSDN). And it is
used by hundreds of thousands of programmers.

If product A results in a increase in productivity people will pay for it.

~~~
ibdknox
Microsoft is an irrational actor: they will sink billions of dollars into VS
without regard for direct return in order to secure Windows as a platform.
Using them as an example is useless. Moreover, VS is "purchased" almost
exclusively as part of the entire Microsoft stack. When I was there a tiny,
tiny fraction of revenue came from anyone actually just buying VS.

~~~
dubcanada
Okay then sublime text. Hundreds of thousands of people have paid for that.

~~~
ibdknox
Out of curiosity, do you have real numbers there? I'd be quite surprised if it
was really hundreds of thousands.

~~~
dubcanada
Why? It's probably one of the most popular editors for
PHP/HTML/CSS/Javascript/Ruby/Python.

According to
[https://sublime.wbond.net/stats](https://sublime.wbond.net/stats) there are
roughly 2.5M sublime text users. If even 10% of them paid for it, that would
be 250,000. Assuming 10% is a little high, let's do 1% would would be 25,000.

Even if those numbers are wrong (which they may be I have no idea how he gets
those numbers, and if everyone is using Package Control) there can very easily
be hundreds of thousands of paid licenses.

------
josephwegner
The description of Eve seems pretty vague, which I'm sure is intentional, but
it'd be nice to get a bit of clarification.

It sounds like Eve will essentially be a visual programming language, similar
to the many others that have come across Hacker News.

Chris - is Eve a visual programming language? If so, what makes it better than
all the others that have tried and failed?

~~~
ibdknox
It depends on how you use the term "visual programming language", which
unfortunately has a lot of baggage around it. It is not sticking lego blocks
together like Scratch or LEGO Mindstorms, nor is it the boxes with arrows
pointing at eachother like Max MSP/Lab View/Blueprint/noflo, but it's also not
strictly textual. The closest analog really is Excel or Access, but with the
ability to describe how you translate one sheet/table to another one. Your
main interface is a grid of data and a list of output tables. On top of that
sits a set of domain editors though, to make drawing UI, for example, not an
exercise in writing a bunch of rows out into a table. Instead you use a
photoshop-like tool to just draw your UI. Same with doing math or string
operations or flying drones or working with music and so on. We of course
can't cover every domain, but what's interesting is that the editor is itself
kind of like an editor of editors and it'll make it fairly trivial for you to
build your own manipulable representations.

~~~
mwcampbell
Trying to reduce UI design to something like Photoshop seems quite problematic
to me. It encourages the designer to think that what you see is all there is.
What about the things that aren't immediately evident in a WYSIWYG
environment, like accessibility for users with disabilities (I'm thinking
especially of blind users)? And if the WYSIWYG environment uses absolute
positioning, as Photoshop does, then how will the UI adjust itself to
different screen sizes? An advantage of representing a UI in a human-editable
format like HTML, XAML, or Android's XML layout system is that _all_ the
properties of the UI elements are equally visible and editable, not just the
things that are visible in the on-screen rendering. Also, I think that reading
and editing the UI definition in a textual format forces the designer to think
of the UI at a more abstract level than just dragging and dropping elements
onto the screen and tweaking the things that are visible in that environment.
And for the UI definition to actually be human editable, one is forced to
leave absolute layout to the computer, making it more flexible.

~~~
seanmcdirmid
Photoshop isn't even used much for visual design these days: it's all pretty
much Illustrator. Vectors make dealing with resolution much easier, but
redlining is still needed when rasterizing to lower resolutions.

Most of the designers (outside of web to be sure, since I don't live in
silicon valley) I know don't use textual formats, that is for developers. Much
of the content is too dynamic to work with textually without substantial
programming.

------
ibdknox
We've been waiting to announce the news for a while now. Can't tell you how
happy we are to finally get it out.

We're tremendously excited about the potential we have with Eve and everyone
we've talked to about it so far leaves with their head reeling. There's been
an undercurrent brewing in the programming community that we're approaching a
sort of transformational point in the way software ends up built. We hope to
be part of that transformation.

I don't talk about it a ton in the post, but Eve isn't just about giving the
Excel generation a seat at the table, but it's also explicitly designed to get
us back to what we do best: solving problems. There are some pretty amazing
properties that fall out of simplifying things as much as we have: concurrent
by default, a real shot at auto-parallelization, a debugger that can tell you
when, why, and how a value came to be, diffs not of code but of the output,
the chance for true real-time collaboration on software, introspection into
_every_ part of the system, and so on. We'll be talking more about how it
works over the next couple of months, but I can promise you now: there's some
exciting stuff coming for all of us.

As always, in the interest of sharing with the community who helped us get
here, I'm happy to answer any questions!

~~~
smrtinsert
I've always felt that the tuple oriented view of the world of database was
closer to what we should be doing instead of objects (or more lately
functions?), although fp definitely gets you closer.

My one comment is to please make eve keyboard oriented from the start. I
really don't want to use a mouse. I should be able to navigate every entity
logically with a keyboard. For example, I should be able to hit a key to
select available link endpoints and another to connect them.

I like visual, but I love keyboard oriented a lot more. Dragging and scrolling
are way too overused ui interactions.

~~~
ibdknox
haha it's funny, this is almost always the first worry programmers have after
we talk about Eve.

Don't worry, we'll make sure it works whether you use the mouse, a keyboard,
maybe even a touch screen or voice. :)

~~~
taciturntom
Suggestion: if you want this to succeed, constrain your scope. Say No to
touch-screen & voice! (IMO they are crippled interfaces compared to the
keyboard)

Just say 'NO'. & best luck :)

~~~
aeden
If they want to reach a billion people then they're going to have to live in a
world of touch screen (and maybe voice).

At NDC Oslo this year there was a keynote by Luke Wroblewski on user
experience on the web. There's a video on Vimeo:
[http://vimeo.com/97305189](http://vimeo.com/97305189)

The key takeaway was that a significant percentage of people are using their
smart phones with either only their thumb or their forefinger. Many people
don't even have a computing device with a traditional keyboard and full-size
screen. That talk got me thinking about this question: what would programming
look like if you only use your thumb?

I don't think you can write off these interfaces, rather I think we may need
to start to really think about separating creation of core components of
software and then orchestrating the interaction of these components as a
different aspect to developing software.

~~~
bengillies
If they want to reach a billion people then starting off by targeting all 1
billion is probably the wrong way of going about it.

------
fitchb
Chris: I've been following your work since I backed LightTable on Kickstarter.
I just want to say congratulations and keep on truckin'.

I've been programming professionally for about three years. When I got my
first job, I spent _days_ setting up ruby/rails/zsh/vim/git. I was seriously
dumbfounded. I could not believe that programmers (in 2011) actually worked
this way. And I was even more perplexed that the main tools for reasoning
about my code were print statements, browser reloading, and unit tests (so, so
many unit tests). This is "the pain we forgot", except it's recent enough that
I've never forgotten it.

Thanks for your work. I'm looking forward to a better programming for my kids.
And hope to support any way I can.

~~~
jdewald
I prefer not to think of unit tests as a write to reason about the code you're
writing now, but to let the system confirm that your current reasoning doesn't
contradict with your previous reasoning (about other parts of the code).

------
karmajunkie
I really do hope these guys are able to accomplish their goal, but I remain
skeptical. We've seen efforts from folks like Google and MIT down to small
companies trying to solve this "problem", when it seems to me that the
underlying reality is simply that software is hard. Layer abstractions over it
if you must, but at the end of the day those will only get the layperson over
the hump of trivial problems, leaving one disillusioned when the tool is
unable to realize loftier goals.

~~~
kylecordes
I agree, there is a considerable risk they have traded in a less interesting
problem they could solve very well (IDE), for more interesting challenge that
they will end up not getting to market with (programming tools for "the rest
of us"). I think this is the nature of VC investment, though. The money is
there to chase risky things.

------
manifestsilence
As a fairly new (4 years) programmer with an avid interest in comparative
language features and tooling, this looks like the direction that every cool
new thing I've read about or attempted to create myself seems to be going. The
LISPers have always been there, preaching freedom from syntax and a focus on
semantics, but it has never made it into a readable form for your average new
aspiring programmer.

I keep thinking what we need is for the structure of programs to be something
saner than the one-dimensional byte stream that we keep pretending programs
aren't by splitting them into lines, functions, classes, and files. Tables
aren't fundamentally different than those other constructs, in the same sense
that programming languages aren't fundamentally different from each other - BF
is Turing complete and all that. But usability and learning curve, as someone
said on here, really matter, and tables have a far more clean and rigid
structure than a mess of braces.

The most difficult problems in programming aren't the low level algorithms,
they're the social problems along the lines of how do you involve large
numbers of new programmers in a project without ruining it, or how do you
empower users to create their own features without starting over and building
a custom rules engine?

------
KobaQ
I'll be excited when I see it.

Light Table was announced to change the way we're writing code, too. But the
execution didn't quite match the vision.

------
todd8
There is a temptation to think that programming isn't that hard, that somehow
we just need lighter shoes and we'll run a four minute mile. I look forward to
a better spreadsheet, but I don't think it will revolutionize programming.
Just tackling the spreadsheet though is a big enough, worthy enough, and
valuable enough goal, I hope they succeed.

In the continuum of programming tasks, tasks best for spreadsheets are pretty
far down the scale. But these tasks are very common and an improved tool could
have a very big impact.

After grad school I did real time process control programming for
semiconductor manufacturing. Complex machines, which couldn't be slowed down,
were programmed in assembly language and had many simultaneously moving parts,
all under the control of software. Programming, done in assembly language, was
a mess. It was hard, very hard, we had to build all of our own tools,
including the operating system that ran on the minicomputer running our
software. The mechanical engineers were very talented and built amazing
machines, but they thought that the understood the "hardware" so they should
be the ones to write the software to run it. Of course, this didn't work out
at all. It's easy to believe that programming shouldn't be that hard.

Computation can be intrinsically difficult in ways that new tools don't help.
Consider a simple problem like suffling a deck of cards. Having a tool that
makes a shuffle easy to code doesn't make it a fair or efficient shuffle. On
the otherhand, most students of Computer Science would know the pitfalls of
shuffling by the time they got through a couple of years of grad school. One
can't expect that even intelligent people will understand that the a fair
shuffle has to pick one of the exactly N! possible shuffles with uniform
probability and that the following loop doesn't do it (for a number of
reasons):

    
    
            (* Randomly rearrange each card *)
            for ctr := 1 to 52 do begin
                random_number := random(51)+1;
                tmp := card[random_number];
                card[random_number] := card[ctr];
                card[ctr] := tmp;
            end;

~~~
dragonwriter
> I look forward to a better spreadsheet, but I don't think it will
> revolutionize programming.

If you look at the research papers they cite, its not so much that they are
aiming at a better spreadsheet which will , as a side effect, revolutionize
programming, but a better programming model than those currently deployed
which will, as a side effect, revolutionize spreadsheets.

My initial post was highly skeptical, and I still think that there's an uphill
battle here. But I think that they have a good foundation to build a tool that
both eases and empowers "casual programming" (including the kind of things
that would be done in spreadsheets and that people don't and won't think of
_as_ programming) and empowers professional programmers to focus on the hard
part of professional programming.

That said, its far from the _first_ improvement of this general description
that's been tried -- even with a good foundation -- and while I think its by
far the best foundation I've seen for it, most of the key application domain
areas have "good enough" solutions that its going to be hard to get people out
of. (I am increasingly convinced that the initial casual-programmer web app
focus makes sense, though, because while there's lots of established
incumbents in that space, there's no dominant player to displace, so while it
will may take a lot of polish to get decent uptake there, its an easier fight
than going straight for Excel out the gate, and better reach than focussing on
pro programmers as the initial focal market.)

------
jmagoon
It seems like the hard part of programming is and always will be the problem
solving part, and not the syntax memorization / environment setup. Business
leaders, at least where I work, are not programming due to the fact that they
just don't think computationally, not that they have to fiddle around with a
DB connector.

I'm curious about the target audience and the drive to make programming
"easier". Sure--the tools can help, but it doesn't necessarily help a user
solve the problem correctly. Is the audience programmers? Is it for replacing
programmers with software power users? Or am I totally missing the point, that
this is a totally new way of solving problems in a language agnostic way?

~~~
sdegutis
The goal of getting programming into everyone's hands seems totally misguided.
Not everyone is cut out for computer programming. Just like not everyone is
cut out to be a doctor or a pilot or a farmer.

~~~
mwcampbell
Sure, not everyone is cut out for programming. But there's still a fair amount
of incidential complexity we can eliminate, which will make programming more
approachable to more of the people who would be good at it.

~~~
jamii
Lockharts Lament
([https://www.maa.org/external_archive/devlin/LockhartsLament....](https://www.maa.org/external_archive/devlin/LockhartsLament.pdf))
applies equally well to programming. People in general are smarter and more
adaptable than HN seems to believe. The real obstacles to more widespread
programming are a) showing people that it can make their lives easier and b)
smoothing the learning curve so that it provides rewards before their patience
runs out. We know this because many people do build amazingly complex systems
with Excel and Access and VB6. They are clearly capable of computational
thinking. They just don't have the time or inclination to invest thousands of
hours into learning bash/emacs/python/js/html/css before seeing any results.

------
jcarden
One can imagine a tremendous number of useful applications something like EVE
would enable. Working in a top notch cancer research lab, I can think of
several instances where an exceptionally talented lab biologist needs some
computational work done but doesn't have the slightest idea of how to get
started. Hopefully, EVE will bring down some of those barriers and change
this. This is exciting.

------
michaelsbradley
Chris, so you found some of Prof. Harel's work interesting?

[https://news.ycombinator.com/item?id=7489865](https://news.ycombinator.com/item?id=7489865)

Or did you arrive at a use case for temporal logic from another avenue?

Congratulations, by the way, eve sounds exciting!

------
serve_yay
At some point, somebody will succeed in some real fashion with a tool that
allows non-programmers to make software (for real, not baby software). And
after that I'll just go live in the woods, I guess. The cost of my labor will
go from a lot to basically zero.

Still, even though their goal (and the goal of similar projects) is my
obsolescence, I wish them luck. It will probably be a massive overall good.
But it's also a reason why I think all the current frenetic activity about
teaching more people to program will end up being the wrong thing.

~~~
robrenaud
> somebody will succeed in some real fashion with a tool that allows non-
> programmers to make software (for real, not baby software)

I'll bet this won't happen. If you can get non-programmers to produce what we
think of as real software now, I am sure whatever insight you made will make
programmers create much better, more complicated software.

See also,
[http://en.wikipedia.org/wiki/Jevons_paradox](http://en.wikipedia.org/wiki/Jevons_paradox)

~~~
serve_yay
I am not totally sure it can or will really happen. I'm just a garden-variety
pessimist.

------
GuiA
Interesting move. I've just read Peter Thiel's startup notes, and one point
he's adamant about is to build your product as a monopoly for a small market
(this is in no way new advice, but since I just finished his book his
formulation is the most recent one in my head). E.g. Facebook and Harvard
students, AirBnB and housing for conferences, etc. If you can't get to mass
adoption in a small niche, how are you going to scale it up? Additionally,
your product has to be at least an order of magnitude better than what the
niche already uses (e.g. Facebook was an order of magnitude better than
Harvard's static face book).

I have a hard time seeing what small niche Eve will dominate, and how it's at
least 10x better than any existing solution. Looking at the examples they
give:

 _> a scientist doesn’t have to rely on the one person in the lab who knows
python_

Scientist these days pretty much have to pick up a programming language
(Python, R, Matlab, etc.) throughout their undergrad/early grad studies. If
you're going to target that niche, not only are you fighting against the huge
investment professors and labs have made in existing tools (along with the
small libraries/frameworks they built themselves), but you also have to
provide an equivalent quality ecosystem for the weird data formats some very
specific niches use, for the lab equipment, and so on. If you wanted to
deliver a 10x improvement on the existing state of computation in research
labs, you'd have to spend a lot of time focusing on exclusively that.

 _> a child could come up with an idea for a game and build it in a couple of
weekends_

They already can, using Scratch or the myriad similar tools available which
will probably remain better because they were designed with game design in
mind.

 _> your computer can help you organize and plan your
wedding/vacation/business._

People already use MS Office, Google Docs, etc. for these tasks. Unless Eve
brings a 10x improvement to those tools, how can they ever hope to displace
them? My dad has been using the same version of Excel for the past 10 years, I
have a hard time imagining people like him switching over.

In his lectures, Peter Thiel spends some time talking about all the solar
startups that emerged more or less at the same time in the late 2000s, only to
fail miserably. While the buzz and excitement for solar power companies was
there, in reality they could not deliver on what startups need to deliver to
thrive: a product solving a real problem for a niche market that's at least
10x better than the existing solution in place. I feel like we're in a similar
space with all those "learn to code" and "new programming tools" companies
that have been steadily emerging.

No doubt, the CS academic and HCI researcher that I am is excited by Eve- I'm
sure they've done their research and that it would be a really neat product.
The entrepreneur in me is however extremely doubtful.

~~~
ibdknox
Our first bastion is websites, you can think of it as filling in the gap that
Microsoft left when they killed VB6. 15 or so years ago, someone could open up
VB6 draw out a couple of forms and put together a simple "Line of Business"
app themselves without having spent 10 years of their life becoming a
professional programmer. The modern VB6 would do the same for websites. :)

> Unless Eve brings a 10x improvement to those tools

We know the bar is pretty universally an order of magnitude and so we've
planned accordingly. Our primary target here is selling a super power: you
couldn't do this at all before, and now you can. Joe in accounting doesn't
have the opportunity to build things to support himself (short of studying
programming), but with Eve he could do everything from automate several of his
workflows, to building a dashboard, to building dynamic reports for his
bosses, to creating internal tools to track and measure things.

There is a fairly clear gap in our ecosystem around these kinds of programs
and they represent what I would argue is the vast majority of programs that
_should_ be written, but aren't because of the cost.

There's also the opportunity to just make websites an order of magnitude
easier to build for programmers and we're getting there. I was able to write
an entire editor for this thing in itself in a week for one of our prototypes
- there's some real potential there.

~~~
eweise
I think a tool for the web that is as productive as VB and Powebuilder was
back in the day, would be a big hit.

~~~
strangetimes
ASP.NET Web Forms?

------
MoosePirate
I have high hopes for this area. There are a huge amount of ad-hoc problems
that are today solved most easily by throwing together an Excel file, even for
a very competent programmer. There is currently no faster way to manipulate
and do small scale programming on data. For decision analysis and modeling,
you go straight from excel to a full-blown program, without any other
compelling options.

A product with some interesting ideas in this area is Calca:
[http://calca.io/](http://calca.io/)

------
oillio
I am a bit disappointed about Light Table, though it was obviously coming.

Good luck with Eve. I am sure you have read it already, but the paper "Out Of
The Tar Pit" by Ben Moseley and Peter Marks might be of interest.

[http://shaffner.us/cs/papers/tarpit.pdf](http://shaffner.us/cs/papers/tarpit.pdf)

The first half is pretty dry. Around Section 7 they get into describing a non-
standard way to look at application design. Their language design ideas might
fit well with the goals of Eve.

~~~
ibdknox
A lot of our overarching design is based on things they laid out in Out of the
Tar Pit :)

~~~
oillio
hehe, cool. I thought the separation of concerns sounded familiar.

I expect Eve will have an open architecture? So that those of us that like to
plumb the depths can play too.

Most of these "programming for the masses" projects inadvertently throw up
road blocks to experienced programmers. GUI's where you have to use the mouse
and click 10 times to create a function, complicated formats that don't lend
well to source control, etc.

With what we saw with Light Table, I am hopeful you will easily sidestep these
sorts of issues.

~~~
jamii
> I expect Eve will have an open architecture? So that those of us that like
> to plumb the depths can play too.

See
[https://news.ycombinator.com/item?id=8397747](https://news.ycombinator.com/item?id=8397747)
:)

------
hme
Anything to do with Aurora ?
[https://www.youtube.com/watch?v=L6iUm_Cqx2s](https://www.youtube.com/watch?v=L6iUm_Cqx2s)

~~~
ibdknox
We renamed Aurora to Eve, though it's changed significantly since that video.
We found lots of issues with that way of thinking about the world and so
worked to find a better model. The name Aurora didn't seem to test very well,
but we've found Eve to work rather nicely.

------
bri3d
How does Eve compare and relate to similar, older attempts to use spreadsheets
as a visual programming metaphor, like Forms/3?
ftp://ftp.cs.orst.edu/pub/burnett/ForJFP/JFP.fordistrib.pdf

It seems like the interaction between spreadsheets and programming is an oft-
explored area - it will be interesting to see what this evolution brings.

~~~
jamii
* Collection-oriented rather than cell-oriented. Eve is loosely based on datalog which is closer to SQL or prolog than to a spreadsheet. The relational query model is much more powerful than vlookup. I believe we can make it as approachable.

* Networked / multiuser. Excel deals poorly with concurrent access to data and reacting to events. Most of the users we talk to have problems with sharing spreadsheets and moving data through pipelines. We aim to provide a shared database so that one users computations can easily depend on another users data and can respond to changes or new data.

* Web-native. The web is unfortunately the only distribution platform with any reach. That's one of the things that killed VB6.

* Not ugly. It may be shallow, but people don't like to use ugly software and will perceive it as being harder to use (eg [http://www.ergonomicsclass.com/wp-content/uploads/2011/11/Tr...](http://www.ergonomicsclass.com/wp-content/uploads/2011/11/Tractinsky_2000.pdf))

That said, the forms/3 HCI research is excellent and their recent work on
preventing errors
([http://eusesconsortium.org/wysiwyt.php](http://eusesconsortium.org/wysiwyt.php))
has been especially educational.

~~~
bri3d
Thanks for the response. All of these pain points are definitely true, in my
experience.

I'm working on a database-backed spreadsheet product too, and it sounds like
we have very similar ideas about the weaknesses of the current spreadsheet
model.

Our output product is still 'rich' spreadsheets rather than apps, though, and
while we have a programmable VM and data processing language our language
looks much more Excel than prolog or SQL. We also were really interested in
the forms/3 research during our early development which is what prompted me to
post.

------
Luyt
I can't help reading 'Eve Online' everytime I read 'Eve'. I guess it's a time-
space deformation.

------
sdegutis
Eve's goal is to completely simplify and reshape computer programming at
large? Oh. Well, best of luck to you.

------
Confusion

      Imagine a world where everyone has access to computation 
      without having to become a [..] programmer
    

Imagine a world where everyone has access to basic arithmetic, without having
to know how to use pen and paper to calculate and without having to how to
operate a calculator.

------
aabajian
"...doesn’t have to rely on the one person in the lab who knows python"

I'm a long term Java programmer who recently learned Python. Python is
sensational. We should encourage everyone to know a language like Python, not
pass it off as the domain of "professional programmers".

~~~
idunning
I'm a PhD student, and a big Julia fan (and contributor), and I STILL think
everyone should know Python (or similar). It truly can be the language for
everyone, and I've found it amazingly easy to teach it to people.

------
paymetodream
Admirably. As there is a lot of money in the table I would like to be paid for
dreaming. Nothing is impossible, but at this level pay me beforehand.

------
tolmasky
A story about the initial introduction of computers to the lab my dad worked
at, with no particular concrete conclusion:

My father is a microbiologist. When he started his postdoc at OHSU, they
actually had a information artist _guy_ in the department (apologies, I have
no idea what the profession's name actually is). When you were writing a
paper, you'd go to the graphics office/dept/whatever and give him your data,
which he'd then lay out in some huge post board or something, then take a
picture of it and shrink it down. Clearly much more time consuming than what
Excel can accomplish for you now. I think around that same time they were just
starting to get computers installed everywhere. By the time my dad left OHSU a
few years later, this person was working in the mail room, his profession no
longer existed (or at least wasn't particularly employable anymore). Everyone
was now making their own charts, graphs, visualizations or what-have-you using
their computers.

I, being a programmer, always thought about this as a success story.
Interestingly enough, my dad has a different take on it. His perspective is
that he used to be a scientist, now he's a scientist and a shitty artist. The
way he sees it, its now his responsibility to learn this myriad of tools
(photoshop, illustrator, _Canvas_ hehe), whereas before his sole focus was
more so on "the science". I certainly see it on my end, he's much better at
Photoshop than I am, and at the same time knows a bit of HTML to get by, etc
etc. However the reality isn't that the time to make these graphics has
magically dropped to zero, its just that is become _simple enough_ to not
justify having an entire art department handling it, but hard enough to be
annoying to him. He certainly spends a lot of time being angry at Photoshop
now, which seems to be perfectly acceptable for a professional designer, but a
strange consequence of being a scientist. Another result is that you now have
someone not trained in data visualization trying to express his findings (vs
possibly having someone who has a degree in that making suggestions about how
to best present it).

Its interesting to try to reconcile these results. Its quite possible that
there is no lesson here and its simply a spectrum of trade offs, no perfect
scenario. Certainly everyone agrees Microsoft Word is a clear net positive,
maybe visualization is just less of a win. Or maybe this is just because we
are in an intermediate step, at some point things will be _so easy_ that you
1) don't need a separate department, 2) it takes almost no time and 3) it
inspires you to create really good visualizations without having much
background in that. Who knows.

On the other hand some people would argue that this is actually displaying a
deeper educational problem, where if there was more interdisciplinary
teaching, then every scientist would have some grasp of data visualization and
then its just a matter of having a better Photoshop. As time goes on I become
more and more skeptical of this approach however. It seems strange to
"empower" people when you are actually burdening them with additional
responsibility. Since you _can_ do everything yourself, it now becomes "your
fault" for not being good at everything.

~~~
fiatjaf
Maybe it is more decent for a man to just know how to do everything, and
everything that forces him in that direction is a win.

    
    
        "A human being should be able to change a diaper, plan
         an invasion, butcher a hog, conn a ship, design a
         building, write a sonnet, balance accounts, build a
         wall, set a bone, comfort the dying, take orders, give
         orders, cooperate, act alone, solve equations, analyze
         a new problem, pitch manure, program a computer, cook
         a tasty meal, fight efficiently, die gallantly.
         Specialization is for insects."

~~~
tolmasky
Ok, let's start with you knowing phd level biochemistry ;)

~~~
fiatjaf
I would like to know that :P

------
vannevar
Light Table failed because it was overly ambitious. So the response is to
start a new, vastly more ambitious project?

------
CmonDev
"Light Table will continue to go on strong."

Sure.

------
jryan49
Would you guys be hiring remote workers?

~~~
jamii
I'm afraid not. I worked remotely for a few months before getting my visa and
it was tremendously unproductive. We're dealing with a lot of new and
unfamiliar ideas and it's hard enough communicating about them in person in
front of a whiteboard, let alone over slack.

------
giancarlostoro
Everyone is having all the fun in the other side of the country, and I'm stuck
in Disney World missing out. Sad stuff.

------
throwaway420
I hope Light Table doesn't get essentially abandoned, despite throwing in a
final pity paragraph about it not being so. There haven't been any new Light
Table updates recently and that's disappointing. It's not unusable as is, but
it's lacking that last 20% of refinement and polish and perfect documentation
and other things that makes good software into great software.

~~~
nazgob
Looking at Github activity I don't think that this will be the case. You can
clearly see that guys are busy with Eve now.

