Having successfully completed Kickstarter funding in June this year, IDE Light Table has now been rewritten from the ground up, resulting in a sleeker, more robust foundation on which to build.
According to co-founder Rob Attorri, Light Table was created to address a fundamental disconnect developers have with their creations: "The analogy we used at Y Combinator was that being a developer is like being a painter wearing a blindfold: when you paint a stroke on the canvas, you don't see the result. When writing code, the difference between making a change and seeing the change can be anywhere from a minute or two to many hours, and this disconnect is highly detrimental to understanding the code you've just written."
As a result of this disconnect, Attorri told .net code is often written in large swathes, making bugs hard to find and new ideas difficult to quickly try. Light Table removes the proverbial blindfold by giving real-time feedback to any changes a developer makes to code, showing how data values flow throughout their creation. "It lets the developer modify running programs, test individual functions, try edge cases, and implement new ideas, which grants a far more profound understanding of the software. Other tools don't offer this experience. We thought it was high time that we create a better way to write code."
A better workflow
Attorri's belief is that IDEs are typically cluttered, suffering from unintuitive workflows that prevent developers making use of their powerful capabilities. By contrast, he said, "Light Table was designed from the outset as an elegant, flexible workspace that works the way developers do." He added that almost anything can be embedded in Light Table, from websites to games, and said extensions are trivial to build, making it easily moulded to the shape of your problem with relatively little work: "Just as frameworks or domain-specific tools save time, having an IDE tailored to a specific problem makes the development process far more efficient."
A feature the team is particularly fond of is treating a function as the smallest unit of code, instead of a file. The reasoning was that engineers often work on giant surfaces, with all of their documents in front of them, and that such a workflow could also benefit developers. "Light Table was named after the engineering device that lets you see pictures and blueprints side-by-side, overlapping, and interacting," Attorri said. "Comparably, instead of having many files open in separate windows, Light Table is a surface that provides a holistic workflow, showing all the relevant bits of code, how they interact, and what the end result looks like."