I was lucky enough to attend Foo Camp again this year. Like last year, its left my head so full of ideas, interactions, and permutations on themes that it has taken me a week and a half just to work through enough of the ideas to be able to start writing about them. I didn't open my laptop all weekend. Talks like Paul Graham's session on "how to have good ideas" give you a lot to reflect on as you introspect on your own day-to-day activities. Since Foo is the "Switzerland of Tech", there are whole raft of things I can't blog about, and that is as it should be, however there were some fascinating talks and discussions which seem to be dovetailing with more of what I read on a regular basis.
For instance, I stumbled into a series of discussions about broadcast media, societal fragmentation (and unification) and the political and technical enablers for that fragmentation. They seems only mildly related and even more distantly related to the tech parts of tech, but a whole host of ideas I absorbed at Foo funnel into larger debates I have with myself and with friends. I'm finding amazing parallels in those discussions and ideas from Foo with The Authoritarians and with things like this.
I'm becoming more resolute in some of my suspicious about what's currently broken with the way we build things on the web, but for the time being I'm going to practice some of the advice in Paul Graham's article: i pensieri stretti. Oddly, it somehow feels safer to talk about national politics out loud. Maybe I'll start doing more of that. My particular brand of technical heresy isn't going to play well for another half decade, I think.
Ajaxian just linked to a tremendously important post by Brendan Eich. I'm happy about it not only because Brendan is spot-on, but also because he's using the phrase "Open Web". It might be pure semantics, but as the Flash, Flex, WPF/E and even XUL partisans keep attempting to claim that their single-vendor clients are "web technologies", the waters get successively muddier. Now is the time to reclaim a bit of ground for poor-ol HTML and stop apologizing for pushing the web harder.
To that end, it was also refreshing to Ian Hickson lay the smack-down on the XML brain-damage that seems to have infected the web standards community. The web itself should be definitive proof that robust beats brittle. Agreement on how to recover from errors is the right way to deal with badly-formed content on the web. Not accepting errors is suicide, and for too long the web standards community has confused validation and correct markup (things that reduce the number of people who can play in the sandbox) with the value created by agreement on how things should behave (things that increase the number of people who can use things that anyone creates).
At last year's ETech, I closed my tutorial session on Ajax with a long discussion of what I considered to be the Open Web and why the technologies that Brendan identifies aren't it and won't ever be democratizing technologies, and are therefore dangerous. Now that the browsers are moving again, we've got another chance to let the real value of the web as a growing, changing, dirty, and most of all, alive medium re-assert its value. I hope that the phrase "Open Web" can start to encapsulate these newly recycled values of forgiveness in rendering, iterative improvements to the specs, and browser competition.
At the last Dojo Developer Day one of the most awe inspiring things was the first-day lunch where we opened the floor for demos. Without any planning at all, we had easily 10 great demos of everything from real-world uses of
dojo.charting to data binding to live apps like http://www.coloradohomestop.com/. At one point it seemed like awesome demos were going to keep coming out of the woodwork well past the allotted time.
I guess that should lessesn my surprise when great new Dojo-based apps pop up, but when the guys from Kayuda sent me a link today in IRC about their web-based mind-mapping tool, I was floored. I've been using FreeMind to collect my thoughts for projects for about a year now, but not being able to share them has always been a pain. Kayuda looks to address this head-on.
They've got a public alpha, so give it a try and let them know what you think.
Our good friends at The TurboAjax Group have finally released a beta of their new grid component (demo, docs). As with all their components, it lays into your existing Dojo working area and provides great stuff to make your apps better. It's free for non-commercial use and cheap for commercial sites, so give it a look.
As noted on the mailing lists and other places, Dojo is once again an excited and grateful participant in Google's Summer of Code program.
A bit wiser from our experience from last summer, this year's Dojo SoC is under the capable direction of Robert Coup and Neil Roberts. I'm volunteering to mentor again this year, although there will be fewer slots available for students. Last year, we attempted to take on 7(!) projects and as a result we got some great projects done but a very high cost to the project's coherence and overall sanity. Our wa was in real trouble by the end of the summer and given our ambitious project schedule for 0.9 and 1.0, we're being even more selective about the students and projects we take on.
Here's a few tips for students who are serious about getting accepted to Dojo's SoC program this summer:
- Get involved now. Get that CLA filed. Start showing up to the weekly IRC meetings. Subscribe to the mailing lists and start asking and answering questions. File patches and start talking with contributors about the technical aspects of your project idea. Anything you can do to convince us that you are diligent, dedicated, and "get" Open Source and Dojo will be strong marks in your favor
- Got a great project idea? Ask us to get it listed on the projects page.
- Remember that the Dojo Foundation supports projects other than Dojo! You're likely to win some extra whuffie for proposing a strong enhancement to Cometd or Open Record.
- Think hard about whether or not Dojo is where you'd like to do your SoC. Summer employment in college is always a difficult thing to balance, and we know it, but we're expecting you to show up to SoC with a vengeance and start running as soon as it starts. If you know that you're the kind of person who needs strong oversight and direction, an office environment, or suspect that external factors such as family or other commitments may make you unable to treat SoC as a full-time job, it would be in your own best interests to give your SoC application more thought. The first rule about any job is that in order to succeed, you have to show up. We'll be expecting you to show up, file weekly status reports that everyone can see and document your progress in a blog. In return, your mentors will answer questions, support you in whatever way we can, and help you navigate the deep and murky waters of an Open Source community. We've had previous students become full-fledged Dojo committers and even gain employment based on their SoC work. If those sound like "best case scenario" to you too, then get that application polished! We can't wait to work with you.