The dynamic duo of Dion Almaer and Ben Galbraith of Ajaxian.com fame has done it again. This time with a new Web-based code editor called Bespin from Mozilla.
The team who joined forces to form the Mozilla Developer Tools Lab last year struck with their first new solution out of the group.
"Ben and I are excited to be releasing the first concept out of the Mozilla Developer Lab," Almaer said in a blog post on the duo's Ajaxian.com site. "As you know, we are big believers in the Open Web. Chris Wilson [group program manager for Internet Explorer at Microsoft] mentioned that many people are still building Web applications on top of browser technology from yester year. What if we built on more leading edge browser technology? As a challenge, we wanted to take on an interesting project that you would normally think of as a desktop application, and see if it would fly on the Web."
Indeed, as Almaer said: "As we strive to evolve the Open Web as a robust platform for application development, we believe in the potential for Web-based code editors to increase developer productivity, enable compelling user experiences, and promote the use of open standards. ... Today we're launching Bespin as a project within our Developer Tools Lab to focus on this exploration."
Added Dion: "Just as Mozilla enables massive innovation by making Firefox open on many levels, we hope to do the same with Bespin by developing an extensible framework for Open Web development. We're particularly excited by the prospect of empowering Web developers to hack on the editor itself and make it their own."
The Bespin team said they based their work on discussions with hundreds of developers in addition to the team's experience to develop a full set of features and goals, including:
Ease of Use-The editor experience should not be intimidating and should facilitate quickly getting straight into the code.
Real-Time Collaboration-Sharing live coding sessions with colleagues should be easy, and collaboratively coding with one or more partners should just work.
Integrated Command Line-Tools such as vi and Emacs have demonstrated the power of integrating command lines into editors; Bespin needs one, too.
Extensible and Self-Hosted-The interface and capabilities of Bespin should be highly extensible and easily accessible to users through Ubiquity-like commands or via the plug-in API.
Wicked Fast-The editor is just a toy unless it stays smooth and responsive editing files of very large sizes.
Accessible from Anywhere-The code editor should work from anywhere, and from any device, using any modern standards-compliant browser.
"Being developers, why not develop something that we know and use every day: Our code editor," Almaer said in a Mozilla blog post. "There are great editors out there, and we are partial to many-from Vi and Emacs, to Textmate and IntelliJ IDEA."
Said Galbraith: "It has been a lot of fun building the tool. A light bulb went off when you see the power of having a tool written in the platform that you write code in all day. You can easily extend and tweak it to your whim. Extensibility has been a core guideline for us. The command line gives us an easy way to add functionality (Ubiquity showed us the way here). Bespin commands look like Ubiquity commands, and we want to fully integrate them. We also made a big use out of custom events as a way to loosely couple code to functionality."
To check out Bespin, users need to launch a browser that supports Canvas and the text rendering portion of Canvas, Galbraith said.
Developers can access the Bespin source code at http://hg.mozilla.org/labs/bespin/.