 Thank you. Nice to be here. I'm Rick Arendt, I'm the CTO of AJAX.org and as AJAX.org we've been working since 2005 on open-source UI technology in the browser, JavaScript UI frameworks. And that stuff looked something like this. It's really UI framework with trees and buttons and all that kind of stuff. So what we did was in the beginning of 2010, we pivoted the company and we focused everything on the next step in tooling, putting the entire development environment in the browser. We're a team of 15 people, dedicated developers. Everybody's now working hard on Cloud9 and Ace, the editor. And to show you a little bit, so many tabs. Everything you see from Cloud9 and the editor you can get from GitHub, so AJAX.org slash Cloud9. It's a local version that you can pull in and play with. We currently support Node.js development, so that's what you can use it for right now. The online version is what we're working on now. We're in closed beta. It looks like this, run.cloud9.ide.com and it has a very tight Git integration. You have a Git project. You want to edit it online or work on it in your browser. You can go to this URL, put your Git URL in the box and it'll fork the project to our servers. I have two already forked here. I'm going to show you the Node Chat demo, which is a very basic demo that Ryan made for Node and do a little Hello World here. So if you click on the project, it essentially opens up the IDE. It's very familiar looking. You have a file tree on the side, code editor, console, menus. It looks very much like the IDE that you might use or might not use. And I think one of the most important parts here is the editor. This is a full DOM-based editor with really, really good performance. So let's see. I can open a file here probably. I can show you how fast it works by just copying some text. You can see that it can quite readily deal with thousands of lines of code in your browser. This is, of course, very important if you want to have a good experience. The editor is a separate component. It's called ACE. It has its own website as well, ace.ajax.org. The ACE project is now the successor of Skyrider and Bestpin. And we've joined with Mozilla to create the coolest and best code editor on the web. This project is really taking off. A lot of people are adding syntax highlighting, debugging, all sorts of little language tweaks to it. Or, ironically, here is doing VIM support so that everybody who is used to VIM will not trip over their fingers and happily use it. So all that stuff is really cool. But it's also essential if you're a developer and you want to get the proper feedback from your IDE and have a fast environment. Now, I'm not sure everybody here is aware of Node.js. Node.js is actually a very simple concept. It's asynchronous IO based on V8 JavaScript engine. So this is, for instance, the Node.js Hello World. It's very, very simple. It shows you, it creates an HTTP server, waits for a request, and then throws back a message. Now, in Cloud9, you can run and debug Node.js code. So I'm now going to start the debug session on this project. As you can see, in the console, we have the console output that is running on the server. So this is a JavaScript process that's now running on the server. And I can open the application, which says Hello World. Now, let's put a break point here and see if we can refresh this. All right, so it's not refreshing. Just hit the break point. The debugging support in Cloud9 currently does server-side Node.js, but a lot of people are working on Ruby support, looking at Java, Python, and also debugging the browser itself, which is, for Chrome, currently, fairly easy because it has the same debugging protocol as V8. But for the others, there's still a bit of bridge work to do. So now, I hit a break point, and I can do stuff like I can execute in-context code just like you're used to from, if you're using Visual Studio, probably here not, but you can do in-context code. So here is the message variable. It says Hello World. I can assign something. Hello, what's them to it? All right. So now you would actually expect that if I press play that my browser here would have changed state. So this shows that you can debug a Node.js server with full state in Cloud9. So this is only step one, great code editor, debugging of Node. And we've only been in beta a couple of weeks. I already have more than 3,000 people signed up, so it's going really quickly. And there's a lot of good feedback coming from the community and people adding stuff to this ID because this is not, you know, we love to work in it. We make Cloud9 in Cloud9, but in the end it's a developer tool that should be your own. It's written in JavaScript, so you can modify it in JavaScript. This is something that is a very basic premise, but it's very powerful. For instance, I don't have this in this demo. It's not on, it's not in Cloud9 yet, but I've seen that they've added real-time JavaScript checking using Uglify.js and Narcissus running in a background worker. So you can have as you type nice colored flags that tell you, hey, you're missing a, well, thank you. You're missing, you're missing semicolons or, you know, you're missing curlies or if you turn on the settings too high, it will whine about anything, but it helps you type dynamic languages, dynamic code because these are not compiled, so your compiler will not complain about something missing or something being wrong, so I think the next step for dynamic languages is that the tooling comes forward and assists you as developers in pointing out errors a lot earlier in the development process. So those are things that we're working on. Of course, there's the debugger. Here you can also peek into Node itself. Node.js has almost all of the stack written in JavaScript with only a couple of hooks in C for the lower-level access. So as you can see, as we end up in here in our code, there's actually a whole stack of JavaScript already running in Node.js. And the nice thing about the V8 debug protocol is that you can peer into all the code that's running even though these JavaScript files are not even on a file system. They're compiled into Node.js itself, which is really nice. So, yeah, here's our console because it is a Git project. The most basic way of interacting with Git is on the command line. I can now run Git commands here on my workspace. Actually, it's a small Unix process. You can just move around. But this is an essential part of Cloud9 as well, so you can interact with your files. Also, a really cool addition from Mozilla is the command processor, which will also arrive in Cloud9 soon. And that's actually a type-based command autocomplete. So if I type Git, then I get a nice, well, I can see that. Let's see. Git is not in the list, but it will show a very nice type system so you can navigate your commands very quickly. I didn't exactly time this, so I think I'm almost through. So all this stuff is open source and you can play with it. You can apply for the beta on run.cloud9id.com and play around with it online. Or you can work on the editor component, which is ACE, which has a different repo also here. And I invite everybody to join, play with it, and see what you want it to be and join in the process. Thank you. Thank you.