<div dir="ltr">Hi all,<div><br></div><div style>Re: a native build.</div><div style><br></div><div style>I have a new Windows 7 VM, installed the MinGW tools, and started a build, but forgot Python. I will try and make more progress this weekend. If anyone has a 64-bit Linux around, and can help Rick with his build question, that would be great, otherwise, I'll try and set that up, too, but this is a bad time of the term.</div>
<div style><br></div><div style>Re: a web-based editor</div><div style><br></div><div style>I have a web-based editor that has the following features:</div><div style><br></div><div style>1. It has real-time collaborative editing, much like Etherpad or Google Docs. I've currently embedded the Firepad editor (<a href="http://www.firepad.io/">http://www.firepad.io/</a>); other solutions are possible. So far, I've written code with myself in different browsers, but I expect it will "just work."</div>
<div style><br></div><div style>2. It has the ability to load and save files from the local filesystem, Dropbox, Google Docs, Github, and several other services. It does this with <a href="http://filepicker.io/">http://filepicker.io/</a>.</div>
<div style><br></div><div style>It is possible to replace #1 with a solution that is completely free and open. It is more difficult to address #2, but it is obviously possible. That said, both were easy to integrate and provide a lot of power, so I'm hoping I can exist in the free tier for a while.</div>
<div style><br></div><div style>3. A toy (remote) server that compiles code for the Arduino, binhexes it, and sends it back to the client.</div><div style><br></div><div style>4. A proof-of-concept (local) server/library that can drive AVRdude and send that code to an attached Arduino. (I developed that last summer, and used it successfully in the classroom.)</div>
<div style><br></div><div style>#1/#2 need more work, but can be brought to a good, usable state without too much difficulty. (This is largely because I'm standing on the shoulders of giants here.) #3 and #4 are in Scheme, because I can compile it to a binary on all platforms trivially; only #4 is needed on a user's machine.</div>
<div style><br></div><div style>What I would like to do:</div><div style><br></div><div style>1. I would like to set up a chroot jail on concurrency.cc, if that is OK with everyone.</div><div style><br></div><div style>2. Install the toolchain there, under the jail.</div>
<div style><br></div><div style>3. Rewrite the server side in Python, using web.py or some other simple framework. (All it does is catch one or two URLs, compile things, and send it back.) This turns a stand-alone server process into a CGI-based process, which I think is good.</div>
<div style><br></div><div style>4. Clean up the client-side component, and bundle it for distribution.</div><div style><br></div><div style>At this point, I think I'd have an environment that lets you write occam-pi programs for the Arduino collaboratively with friends. All you'd need to install would be a small, stand-alone server that runs on your local machine, and invokes avrdude appropriately. This would eliminate the need for a native Windows or Mac build of the entire toolchain, and make it easier to update firmwares, libraries, and other code, as it would be centralized on the server. (I don't need a .deb/.rpm package, or PPA, or whatever, either.)</div>
<div style><br></div><div style>Not ideal, but I'm trying to figure out how to support people doing parallel programming on the Arduino sooner rather than later, and this seems to be the path of least resistance.</div>
<div style><br></div><div style>1. Anyone willing to help set up the jail on the server?</div><div style><br></div><div style>2. Christian: if I send you a new SSH key, could you give me access to the server again. :)</div>
<div style><br></div><div style>3. If you're excited about Javascript and the like, help finishing the webapp side is welcome, too. </div><div style><br></div><div style>Any help on this as it moves forward is, of course, welcome. I'm trying to get my students programming o-pi on the AVR as quickly as possible, without rebuilding all of our installers. This would also work for members of our community, I think, as it would eliminate some of the platform issues we've seen in the past (eg. Java weirdness on new versions of Windows, avrdude problems, etc.)</div>
<div style><br></div><div style>Thoughts? Offers to do stuffs?</div><div style><br></div><div style>Currently living at </div><div style><br></div><div style><a href="https://github.com/jadudm/jupiter">https://github.com/jadudm/jupiter</a><br>
</div><div style><br></div><div style>but I can move it to our team github account, too. And, I need to put a license on things. And make sure I'm not violating any licenses...</div><div style><br></div><div style>Cheers,</div>
<div style>Matt</div></div>