27 9 / 2010
JSConf.eu Megaroundup
JSConf EU was last weekend, and there was a lot of incredible presentations and projects to come out of it. Although I wasn’t actually there, I followed the updates of people who were and compiled a list of a few of the most exciting projects to share with you here.
App Packagers
There were two cloud based app packaging technologies to be presented at JSConf this year. Neither tool is actually available yet, but they are both announced and coming soon! The first was from the Phonegap guys, and is called build.phonegap.com.
The PhoneGap Build service takes the pain out of compiling mobile apps for multiple platforms. Say goodbye to SDKs, compilers and hardware. Simply write your app using HTML, CSS or JavaScript, upload it to the PhoneGap Build service and get back app-store ready apps for iPhone, Google Android, Palm, Symbian, BlackBerry and more.
The other tool, which looks to be quite similar is from the ninjas at uxebu, and is called apparat.io. Their website also mentioned that the tool would also simplify the signing process for the various app platforms that they target. Both tools look excellent and will help simplify the process of building and distributing web applications to the cacophony of app stores that appear every day! Look for both of them in the coming months.
The JS1K Winners
We wrote about the JS1K competition here when it was announced, but the winners were announced at JSConf.eu. There were hundreds of incredible entries that showed the power of JavaScript through a very small amount of code. The top five winners are:
- The grand prize goes to Marijn Haverbeke with Legend Of The Bouncing Beholder. You can check out a description of the entry including how the code works over here.
- Second place goes to Oscar Toledo for Tiny Chess.
- Third place is for Sjoerd Visscher for Tetris With Sound in 1K.
- Mathieu Henri with Wolf1k and the rainbow characters
- Alexey Malyshev with a tweetable Binary Clock.
The other winners are listed on the JS1K website!
Node.js Hosting On Joyent!
Joyent has now joined Heroku to be the second hosting company to provide generic node.js hosting. This makes sense as Node’s project leader Ryan Dahl is employed and sponsored by Joyent. You can check out the public beta of the Node.js smartmachines at no.de. The hosting was used by many projects during the Node Knockout competition very successfully! It also has an API, so we might see some third party management tools pop up sometime in the near future!
Unify
The Unify project is another cross platform mobile framework similar to such projects as Sencha Touch and jQuery Mobile, and was created by Deutsche Telekom. It combines qooxdoo, PhoneGap, Sass, and Adobe Air to produce a unified programming model with such features as local storage, geolocation and components for building your UI. As evidenced by the Adobe Air component, the framework can also be used for building desktop applications, although it seems to be more focused on mobile at this point! Here is a demo video that was released, showing off some of its features.
You can check out Unify on Github here.
Cross Browser HTML5 Polyfills and Feature Detection
The awesome Modernizr team started a wiki page collecting all of the cross browser shims available to support HTML5 features in browsers that don’t support them. It is quite a list and a great resource, so check it out when working on your next project!
Additionally, Alex Sexton of the YayQuery Podcast released yepnope.js, which looks to be a nice way to load in only the code necessary for the features supported by a given browser at runtime. It uses Modernizr to test for feature support and LabJS to asynchronously load in only the files needed by a particular browser, saving bandwidth and increasing the performance of the page load. With the list of polyfills mentioned above, you can see how you can load in the shims for only the features not supported by the current browser. Here is an example of the library in use:
yepnope([
{
test : Modernizr.indexeddb,
yep : ['/js/indexeddb-wrapper.js', '/css/coolbrowser.css'],
nope : ['/js/polyfills/lawnchair.js', '/js/cookies.js', '/css/oldbrowser.css']
}
]);
Another approach to a similar problem was presented by the uxebu team, and is called embed.js. This is a packaging tool that creates specialized builds of your application instead of at runtime, and also allows you to simplify your API by removing the portions not needed on a particular device. This allows you to create the smallest, most efficient version of your application for each device. You can check out the short slideshow below to get more of a feel of the solution. I don’t think it is out quite yet, but be sure to be on the lookout for when it does!
Vapor.js
Thomas Fuchs of Scriptaculous fame announced Scripty2 beta with hardware accelerated animation at JSConf.eu. He also announced vapor.js, the worlds fastest and smallest JavaScript library. The entire source code for the library is below (lol)!
PromoteJS
Chris Williams ended JSConf with (I’m told) a riveting speech about JavaScript documentation, and how when you search on Google for advice the first few results for just about any JS term will lead you to W3Schools or other such crap. Obviously, these resources are helpful and very easy to understand for beginners, but they do not provide the high quality documentation necessary for web developers today. The Promote JS campaign announced at JSConf.eu will help promote better JavaScript documentation in search results, but only with your help!
This is your call to action to help bring down bad documentation and promote proper JS documentation and tutorials! Join now by copying the provided HTML code and paste it into your website, your blog, your friend’s blog, and be sure to tell your friends why you are doing it. You will get a unique promote code each time you visit, based on metrics and targets, so just refresh if you want to help promote something different (Function, Array, Object, oh my).
By pasting a link to the wonderful JavaScript documentation from Mozilla to your website, you can help raise awareness and promote better documentation in search results. Add the badge to your site today (we already did)!
Slides from the Presentations
Ryan Corradini has compiled a list of slides from each JSConf presentation for both Day 1, and Day 2. Be sure to check them out!
Conclusion
JSConf.eu seems to have been a great event and I wish I could have been there! I’m sure I missed some awesome new project, so fill me in in the comments.