So, most IDE's are pretty much the same. Other apps get better and change paradigm, but with the IDE, it's more of an evolution rather than a revolution.
Chris Granger came up with a new concept, and created a
decently successful kickstarter campaign around it. It sort of morphed during the process - he actually got real investors in addition to using crowd funding (
though he was quite open about it). But the concept still remains, and even though my language of choice is still C#, I have been looking with interest at Clojure for a while, and the concepts that he's putting forward are really cool and hopefully imply that there's still some level of innovation out there in IDE development.
Light table is based on a few guiding principles:
- You should never have to look for documentation
- Files are not the best representation of code, just a convenient serialization.
- Editors can be anywhere and show you anything - not just text.
- Trying is encouraged - changes produce instantaneous results
- We can shine some light on related bits of code
There's more on the kickstarter, and he has a playground on his site that you can download and play with. But I really like the promises of what he's trying to deliver.
And one last quote - the one that really got me on board:
We built drafting tables for a reason
Towards the end of my time on the Visual Studio team, I came to the conclusion that windows aren't a good abstraction for what we do. Other engineers have large tables where they can scatter drawings, tools, and other information around. A drafting table is a much better abstraction for us. We shouldn't need to limit ourselves to a world where the smallest moveable unit is a file - our code has much more complex interactions that we can better see when we can organize things conceptually.
Currently, Light Table has plans to support Clojure, JavaScript, and Python, but I'm hoping for much more than that. I think the reason that people keep creating the same thing over and over with iterative improvements is that Granger is right. We're developing in a paradigm that limits us, rather than frees us. At the end of the day, advanced coding/programming/whatever you want to call it is about solving problems. And our tools aren't really geared towards that purpose: no matter how many ways we can split and slice our windows, they just aren't built for what we need. Maybe this can start a revolution in our tools, and make us much more productive.
Also, though this thread was started about Light Room, I welcome other discussion on the topic. I've been quite dissatisfied with IDEs and what's been out there for a while...this just sort of crystallized a lot of what I have been feeling towards the tools that are available.
Thoughts?