Ajax and RIA News

Canto.js: An Improved Canvas API
Javascript author extraordinaire David Flanagan released Canto.js recently, a lightweight wrapper API for canvas, introduced here and documented at the top of the source code. Example: PLAIN TEXT JAVASCRIPT: canto("canvas_id").moveTo(100,100).lineTo(200,200,100,200).closePath().stroke();   Notice three things: canto() returns an abstraction of the canvas - a "Canto" object. As with jQuery and similar libraries, there's method chaining; each method called on a Canto [...] ajaxian.com | 7/29/10 5:10 AM
YUI 3.2.0 preview release 1 – touch events support, transitions and browser-specific loading
Over at the the YUI blog the team just announced the preview release of YUI 3.2.0. YUI3 now has some interesting new features that the team wants you to try and tell them if they work out for you. The changes to the already very powerful library are quite ambitious: Touch event support for mobile interfaces [...] ajaxian.com | 7/27/10 7:34 PM
Canvas Color Cycling
Interest in Canvas, as well as mobile apps, has led to a renaissance of old-school 8-bit graphics. Joe Huckaby of Effect Games has been playing around with color cycling, leading to some stunning effects. Anyone remember Color cycling from the 90s? This was a technology often used in 8-bit video games of the era, to [...] ajaxian.com | 7/27/10 1:21 AM
Amazon’s Push for the Enterprise
This also seems to be a natural adjacent market for Amazon (the IaaS company – not the online retailer). If they already successfully host web startups and are the most well-known compute platform for tasks such video transcoding or text recognition – why not use that same expertise and infrastructure to sell it to enterprises? Enterprise IT is a huge market with great margins, and as corporate CIOs are looking for ways to use the cloud to cut costs and/or become more agile – Amazon has the brand recognition to be their number one choice. This seems to be a high priority effort for the company considering that they have their CTO attending and delivering his keynote at events like the one in LA. And it should be if Amazon does not want to be squeezed between enterprise vendors like Microsoft and VMware getting the higher margin enterprise cloud segment, while initiatives like OpenStack commoditizing lower end cloud compute services.

read more

ajax.sys-con.com | 7/26/10 1:00 PM
Looking at JS emulator core for GameBoy
JavaScript as a general-purpose “Turing-complete language” is illustrated – the example discussed in the first part of a series:  How a CPU can be emulated through JS, and how one might start building an emulation core for the GameBoy console. Looking forward:  How a game image can be loaded into the emulator over the Web. [...] ajaxian.com | 7/25/10 4:29 AM
Best Practices on JavaScript and AJAX Performance
JavaScript can save your day or it can cause you nightmares. JavaScript and XHR (XmlHttpRequest) enable what the industry considers to be Web 2.0 – meaning highly interactive web sites where some application logic is pushed down to the client into the browsers JavaScript engine. As with any application code – regardless of the language and runtime environment – it is easy to not follow Best Practices which ultimately negatively impact the end-user experience with the site.

read more

ajax.sys-con.com | 7/22/10 7:44 PM
Dojo 1.5 is Out and it’s Feature Packed!
The Dojo project continues to pump out goodness announcing version 1.5 of the Dojo Toolkit with a number of new and exciting features. Dylan Schiemann had this to say about the release: The JavaScript world is evolving at an intense pace. We’re very pleased with this release of Dojo, which offers the stability needed for existing [...] ajaxian.com | 7/22/10 7:06 PM
A Little PIE with that CSS3?
Everyone's chomping at the bit to leverage new HTML5 and CSS3 features but with some older browsers not supporting them, hacks are still needed to make things work in a cross-browser fashion. We've seen libs that make things easier such as Remy Sharp's html5shiv and Modernizr and now we can add another one. Jason Johnston's new [...] ajaxian.com | 7/19/10 4:51 PM
It’s Friday. Take the time to learn the Web with a splash of French, German, and Irish
The week has been long. Much code has been written. There is much more to do, but Friday is for relaxing a little. Take some time, sit back and watch, as three fantastic videos are available for you: French: Paul Rouget of Mozilla, shows you the future Paul builds the best demos. ever. At the Mozilla Summit [...] ajaxian.com | 7/16/10 6:34 PM
Synthetic Event Library Syn Aims to Make Testing Easier
The team at Jupiter IT have release Syn, a library which allows you to create synthetic events for use in testing. This standalone library is meant to assist in testing complex UI behavior by simulating user actions such as typing, clicking, dragging the mouse. Testing rich, dynamic web applications sucks. At Jupiter, we've tried almost every [...] ajaxian.com | 7/14/10 5:54 PM
An alternative way to addEventListener
I can't believe none of us knew DOM2 This is how a tweet from @SubtleGradient, re-tweeted by @jdalton, has been able to steal my rest tonight ... and this post is the consequence ... What's new in a nutshell There is a W3C Recommendation about addEventListener behavior, which clearly specify the second argument as an EventListener. The new part [...] ajaxian.com | 7/13/10 2:00 PM
Quilt: Stitching Your JavaScript Modules Together
It floors me what young, talented developers are building these days. Kit Goncharov, who only recently turned 17, just cranked out Quilt, a JavaScript preprocessor written in JavaScript. Quilt is very similar to the Sprockets JS preprocessor in that it allows you to improve code organization by logically separating your code into multiple modules within [...] ajaxian.com | 7/13/10 1:00 PM
Strobe; A hot new HTML5-touch startup founded by Charles Jolley
Charles Jolley: “I started working in SproutCore almost 5 years ago because I believe the future of software development lies in native-style apps in the web browser. It is the platform of the future and when that shift change happens, I want to be there with the technology. Now, I believe that time is almost [...] ajaxian.com | 7/12/10 1:03 PM
Ben and Dion Step Down as Editors of Ajaxian.com
In the spring of 2005, the two of us gave our first Ajax talk together. The subject of the talk was DHTML, but Jesse James Garrett had just coined “Ajax” a few days previous, so we sprinkled the term throughout the slide deck. We needed a place to put some source code that accompanied the [...] ajaxian.com | 7/7/10 9:48 PM
EC Wants to Legislate Interoperability
Having forced a dominant player like Microsoft to open up some of its interfaces in the name of interoperability, the European Commission is now proposing to force any “significant” player like, oh, say, Apple and Adobe or RIM and Nokia to open up their proprietary interfaces so it can create a brave new kumbayah level playing field. It forced Microsoft to do it by dint of antitrust prosecution and heavy fines but now it’s proposing to legislate the licensing of interfaces and data formats outside of antitrust considerations by 2012. According to EC’s new digital agenda commissioner Neelie Kroes, who’s proving to be a very dangerous woman, “Any kind of IT product should be able to communicate with any type of service in the future.”

read more

ajax.sys-con.com | 7/4/10 4:00 PM
text-rendering: optimizeLegibility; //Can you read me now?
text-rendering: optimizeLegibility;. Awesome. ajaxian.com | 7/2/10 12:27 PM
Firefox 4 with lots of speed improvements and inline SVG
Mozilla went to London, England yesterday night to give a workshop about Mozilla Add-Ons and show some of the cool new stuff coming in Firefox 4. Probably the most impressive thing (next to the new Add-Ons Builder based on Bespin) was the upcoming Features of Firefox 4: HTML5 Video display Painting with Canvas Image manipulation with Canvas [...] ajaxian.com | 7/1/10 4:26 PM
Keep your vows; Keeping wed to Node
Vows can be a beautiful thing. Alexis Sellier of LESS fame, is becoming an open source star. This time around he brings us Vows an asynchronous-friendly behavior driven development framework for Node.js. Write you BBD specs like this: PLAIN TEXT JAVASCRIPT: // division-by-zero-test.js var vows = require('vows'),     assert = require('assert'); // Create a Test Suite vows.describe('Division by Zero').addBatch({     'when dividing [...] ajaxian.com | 7/1/10 12:14 PM
The Dichotomy of AJAX and RESTful API's
Had an interesting conversation the other day with Adam, our lead interface developer at Enomaly. He's been our key AJAX and API developer on the Enomaly ECP platform for several years. During our random afternoon chat he basically said that AJAX is quite possibly the worst way to consume a RESTful API. He pointed out the purpose of a RESTful approach to API development & implementation is in its similarities to HTTP and more generally uri/urls -- each of which is easily viewable both programmatic as well as visually. The problem is AJAX is kind of the opposite. Most of the things that make the web great, such as urls, hyperlinks and bookmarking are not easily done or seen in a AJAX application. All the benefits to a RESTful architecture are hidden by the AJAX itself making development longer, more difficult to debug and often harder to scale.

read more

ajax.sys-con.com | 7/1/10 4:03 AM
The death of the pixel as we know it; The new DPI web
The Web used to be so simple. Browser request goes to server, where you do some work, and return some HTML. Then we got Ajax and finally web apps could have some semblance of UI responsiveness. Now we have richer HTML5 technologies to change expectations of our users once again. The Web is getting some new [...] ajaxian.com | 6/30/10 5:17 PM
jQuery.fn.webkitTransform: bananas on the skew-whiff
Franz Enzenhofer has created a nice new webkitTransform plugin that helps you manage transforms and state. Franz tells us more: With jQuery.css you can't easily change the webkitTransform CSS because webkitTransform is not your average CSS. If in one step you add .css('-webkit-transform', "rotate(20deg)") and in the next step .css('-webkit-transform', "scale(2.0)") the rotate value gets reset, as you [...] ajaxian.com | 6/30/10 1:01 PM
HTML5 Video; YouTube Perspective
The YouTube API blog put their point of view on HTML5 video on the table. I would love to know why they felt like this was the right time, and what their angle is. I find myself often confused with the Google strategy. On one hand they are doing amazing things for the Open Web [...] ajaxian.com | 6/30/10 12:16 PM
The Top 250 Players in the Cloud Computing Ecosystem
In the run-up to the next Cloud Expo, 7th Cloud Expo (November 1-4, 2010) at the Santa Clara Convention Center in Silicon Valley, it's time to give my earlier list a complete overhaul. Here, accordingly, is an expanded list of the most active players in the Cloud Ecosystem.

read more

ajax.sys-con.com | 6/30/10 11:00 AM
IE9 gets a Web Timing API to measure performance
Web site performance is a very important topic. We should not let our end users wait for our sites and optimizing them for load time and rendering can save us thousands of dollars in traffic. There is a lot of great content out there on performance (spearheaded by Yahoo a few years back). When it [...] ajaxian.com | 6/30/10 9:15 AM
ChromeKit: Some folk love putting windows in browsers
The awesome Guillermo Rauch and Nathan White have taken one of the Web code katas and played with it. Before the Web we had [wW]indows. Maybe that is why developers are keen to implement windows within the Web page, mainly to see if it can be done. We had the great Emil and Erik building [...] ajaxian.com | 6/29/10 12:10 PM
IE9: Big leap forward, and how we can help the Microsoft inertia
Microsoft continues to impress with its developer preview releases for IE9. They went from a laggard in both performance and Web standards, to regrouping and doing some fantastic work in both regards. The honourable PPK has detailed the leap forward with CSS (in between watching his Dutch team do well in the World Cup. Not that [...] ajaxian.com | 6/28/10 10:35 PM
Made In CSS; iOS icons and more
Do you enjoy the "looks at me build something cool in pure CSS"-meme? It is kinda fun. On the one hand is shows what amazing things people can build, and on the other.... it reminds us that we need some tools to help make life easier. At least the platform is here, and tools can [...] ajaxian.com | 6/28/10 12:14 PM
Swiss Post Abandons U.S. Market to Settle RPost Suit
It was a rout. The Swiss Post’s fancy lawyers looked at RPost’s patents and told their client to throw in the towel – and so, without going to court, Swiss Post and its Swiss Post Solutions subsidiary have agreed to abandon the American registered e-mail market to RPost after RPost sued Swiss Post for infringing its patents and treading on its “Registered E-Mail” trademark. The whole process didn’t take very long. RPost only lodged suit three months ago. It remarked at the time that “a suit against a foreign government agency for infringing a U.S. patent is a legal first.” So, therefore, is a victory.

read more

ajax.sys-con.com | 6/27/10 1:30 PM
How Custom Events Will Save Us All
I am a big fan of both Andrew Dupont, and custom events. In his presentation he goes through some very nice use cases. Some are cross cutting (e.g. the fact that you can unit test, or debug, or ... so much easier) and some are specific such as: Scripty2 animation heartbeat PLAIN TEXT JAVASCRIPT: // keep the heartbeat going setTimeout(function() {   [...] ajaxian.com | 6/25/10 12:02 PM
ExtensionFM: A case study on a sexy app, turn extension
Editor’s note: Dan Kantor is the CEO behind the awesome ExtensionFM project. It really pushes the boundaries on what the Web can do, so I asked Dan to give us a mini case study on the project. What follows is his words on the matter. Thanks for taking the time Dan! Dion recently posted about the [...] ajaxian.com | 6/24/10 12:07 PM
IE9 supports Canvas…. hardware accelerated!
Huge news. My canvas crusade is done. IE9 is supporting canvas, and it is hardware accelerated, in the third preview release: With the third platform preview, we introduce support for the HTML5 Canvas element. As you know our approach for standards support is informed both by developer feedback and real word usage patterns today, along with [...] ajaxian.com | 6/23/10 10:54 PM
Firefox joins Chrome in plugin crash protection
Yesterday Mozilla released a new Firefox 3.6 point release including regular stability fixes and a plugin crash protection system that was originally planned for Firefox 3.7. The crash protection isolates plugins in their own process, meaning that a plugin will not bring down the entire browser when it crashes or freezes. Mozilla states that one of [...] ajaxian.com | 6/23/10 5:47 PM
Share the work! Opera comes with SharedWorker support
Rick Waldron has detailed the SharedWorker support that Opera has added in 10.6 beta (and has been available in Safari 5 and Chrome 5). Web Workers are fantastically simple. Simple message passing. No thread locks and semaphores and craziness. However, not being able to share a thing as a constraint is painful, and a nice addition [...] ajaxian.com | 6/23/10 12:10 PM
HTML5Rocks.com: Google DevRel shares the love
The Chrome and HTML DevRel team at Google have released a new portal, HTML5 Rocks, that packages together some of the great resources available on HTML5 and the renaissance of browsers. Whether it be references on what you can do, to readiness to shims to get use features now. Beyond the resources, there is the killer HTML5 [...] ajaxian.com | 6/22/10 9:14 PM
Drag and drop is a gateway drug with DragDealer
DragDealer is a fine new JavaScript component that abstracts both touch and point interfaces. It makes life easy to do sliders and the like: PLAIN TEXT HTML: <div id="my-slider" class="dragdealer">         <div class="red-bar handle">drag me</div> </div> <script> new Dragdealer('simple-slider'); </script>   But, it can do so much more. Most of the power comes from tying functions into the drag movements. A good example [...] ajaxian.com | 6/22/10 12:12 PM
RichFaces 4 Alpha 2 is now available, project template
The RichFaces team has made a major step toward RichFaces 4 by releasing Alpha 2 version. I’m hoping to see GA in September. Keep in mind that not all components have been migrated to version 4 yet. The components that are available right now are listed below. Some highlights in RichFaces 4 Alpha 2: Redesigned and [...]

read more

ajax.sys-con.com | 6/21/10 7:56 PM
From zero-install to instant-install
Aaron has a nice editorial piece on going from zero-install to instant-install in which he discusses the notion of web apps: Bringing back a lightweight notion of installation offers an interesting way out of Web constraints. If an author uses APIs like window.open() and desktop notifications in an annoying way, his app will be uninstalled. The [...] ajaxian.com | 6/21/10 11:44 AM
Studying perceived performance of Firefox and Chrome
“A man’s got to do what a man’s got to do.” said the cowboy John Wayne. Mozilla’s new intern with the same name knows that Mozilla needs to do… and it needs to do performance. It isn’t just about JavaScript performance though, the battle for the hearts and minds is perceived performance. This is a [...] ajaxian.com | 6/21/10 11:21 AM
FTC to Investigate Apple’s Business Practices
The Federal Trade Commission is going to investigate Apple for anti-competitive practices because it’s shut Adobe Flash out its mobile ecosystem and is now trying to keep Google ads off of IPad and iPhone applications. Bloomberg says the Justice Department and the FTC have been debating which one should take the case for weeks. Apparently the FTC won the coin toss though the DOJ is already investigating Apple and other Silicon Valley types over a possible illegal agreement not to poach each others’ employees. The Wall Street Journal says the DOJ has also started looking at Apple’s practices in its dominant music business.

read more

ajax.sys-con.com | 6/20/10 5:00 PM
Do LESS with Less.js
Dmitry Fadeyev has a great writeup of less.js, the implementation of the LESS styling language in JavaScript itself. Traditionally you would write a less file such as: PLAIN TEXT CSS: @brand-color: #3879BD; .rounded(@radius: 3px) {     -webkit-border-radius: @radius;     -moz-border-radius: @radius;     border-radius: @radius; } #header {     .rounded(5px);     a {         color: @brand-color;         &:hover {   [...] ajaxian.com | 6/20/10 1:02 PM
Microsoft Arms for Cloud Fight
According to CRN Microsoft has added 300–500 direct sales people to pitch its cloud strategy to both end users and partners starting July 1, the beginning of the company’s new fiscal year. Microsoft general manager, partner strategy for the US Public Sector Vince Menzione said at a conference Monday, “All of our salespeople will be leading with cloud.” Microsoft will have new partner and pricing models around cloud services next month. “We are breaking glass within Microsoft,” Menzione reportedly said. The cloud “is changing our business models, processes and product portfolio.” The stops-out effort is supposed to be akin to the fight it waged against Netscape.

read more

ajax.sys-con.com | 6/19/10 3:45 PM
Scaling UI controls appropriately on the mobile Web
Using the mobile Web with modern devices that give you the “full Web” and allow you to zoom in and out on the page (if zooming hasn’t been turned off of course). Sam Stephenson (of Prototype and 37Signals fame) has taken on the problem of the sizing of controls. If you zoom out, normally, controls are [...] ajaxian.com | 6/18/10 12:04 PM
Inline content assist for text fields and areas
Sergey Chikuyonok has created a really nice, easy to use, and good looking content assist library for input text fields and text areas: It calculates precise position of characters in or tag and places completion proposals popup under it. You can explicitly call popup window to assist/replace word (depends on caret position) with Ctrl+Space (buggy [...] ajaxian.com | 6/18/10 11:12 AM
The march to a more client-centric Web; Will the mobile Web, HTML5, and Chrome Web Apps be the tipping point?
Progressive enhancement. Disconnected offline applications. There is a tension brewing in how we deliver applications on the Web. This isn’t a new tension. It has been around ever since we started to do more than just throw HTML down the pipe for the hypertext document runtime to render. With the Ajax revolution we talked a lot about “Web [...] ajaxian.com | 6/17/10 9:25 PM
Selenium Tests for Automated JavaScript/AJAX Performance Analysis
With more than 3 million downloads, Selenium is the world’s most popular functional testing framework. It allows web developers and QA professionals to automatically test how an application functions on multiple browsers, such as Firefox, Internet Explorer and Chrome and across operating systems, such as different versions of Windows and Mac OS. The FREE dynaTrace AJAX Edition on the other side is probably the best web site performance analysis tool for Internet Explorer 6, 7 and 8. Here is what John Resig, Creator of jQuery has to say about it: “I’m very impressed with dynaTrace AJAX Edition’s ability ...

read more

ajax.sys-con.com | 6/17/10 7:27 PM
Sencha Touch: The end of native; A new touch framework for the Web
As I walked around Moscone last week, I saw some prophets speaking of a future that isn’t all Native. A future where the Web is the platform. Others saw it too: I pondered who would be behind the act and smiled as I had a good idea. The group behind this all is the newly named [...] ajaxian.com | 6/17/10 2:00 PM