Ajax archive

File I/O in widgets and the browser

2008-05-07 20:28

Ok, so I had a somewhat mystically titled presentation at XTech, titled Going full circle: Giving Web Applications and Widgets access to device and user data. The slides are here (Should work reasonably well in Firefox, WebKit and Opera — does not work in IE. Navigate with PageUp/PageDown or the mouse wheel)

What the presentation was actually about was File I/O in the context of the browser, or more specifically, in widgets. We produced an input paper to be picked up for standardization.

Further, we will release builds on labs.opera.com shortly, so you can get to play with it shortly, and hopefully also with some example code, so you can get your heads wrapped around this.

Edit: There are now public builds for you to play with here — have fun

Opera 9.20 beta 1

2007-03-28 15:49

Opera 9.20 is out. Here’s stuff for you to read:

So, what’s new?

  • There’s now a menu item in Tools -> Advanced that brings you to a landing page for developer tools. The developer console really is quite nifty
  • Speed Dial, a default blank page which allows you to keep up to nine URLs handy, with thumbnails and instant keyboard shortcuts (Ctrl-1 to Ctrl-9 accesses your speed dial sites directly). If you’d just prefer the regular plain old blank page, go to opera:config#UserPrefs|SpeedDialState and set the value to ‘3’ to turn it off. The allowed values are:
    • 0: Folded
    • 1: Shown
    • 2: Read only, and always show speed dial
    • 3: Disable speed dial
  • Multiple other fixes, for rendering, stability and security. Too much to list, read the changelogs if you need the details.

You know you want it, so go get it!

Mobile Opera Bits

2006-11-28 15:34

Ok, two pieces of news for you today.

Opera Mini 3.0

Opera Mini 3.0 is out. Go get it. Opera Mini is a truly fantastic piece of software, and the 3.0 version features some real improvements:

  • Feed Reader: I’ve let this replace the native feed reader I have on my phone. The UI is better than what the Sony Ericsson M600i offers, and it actually supports a multitude of formats, including Atom 1.0
  • Photo upload. My phone has no camera, but here it is, direct photo upload from within Opera Mini.
  • Support for secure connections: You can finally use secure services and stay safe all the way.
  • Since most web authors have no regard for mobile usability (and no, dotmobi won’t help), Opera Mini 3.0 has content folding, where long navigation lists and other filler fluff is collapsed so you don’t have to scroll past 323 pages to get to your actual content.

If you want to give Opera Mini a try before you download, check out the Opera Mini Simulator

The Ajax Phone

Over at Jan’s blog I found a video of Aida:

Would you like to get personalized and always updated newsfeed directly on the idle-screen of your mobile phone? How about location based traffic information or a map service similar to Google Maps? This is what Opera, Telenor and FAST set out to test in a R&D study named ‘Aida’ earlier this year. The solution was tested on a large number of end users over many months and was very well received among the testers.

Aida is a terrific project that shows what Ajax applications on the phone really are capable of. I just wish every phone had this;

  • Newsfeeds.
  • Real-time location-based traffic information — buses, trams and subways. What are the nearest stops, and when does your transportation leave.
  • Map services and location-aware search.
  • Device integration. Search phone directories and add the contacts directly to your device contact list.

There’s more. Spend a few minutes watching the video. This is the future of Ajax:

Event Streaming in Web Browsers

2006-09-01 17:29

Yeah, I’m going to talk about Opera 9 again, and about “secret” features. Since Opera 9, we’ve had support for Server-Sent Events from the Web Applications 1.0 spec. Quoting the entry we just published in the Opera Web Applications blog

One cool feature we added to Opera 9 is Server-Sent Events from the WHATWG Web Applications 1.0 specification. Using SSE you can push DOM events continously from your web server to the visitor’s browser. This creates a lot of exciting opportunities for web application authors.

As an approach for building Ajax applications wanting near realtime data from the server, this approach is superior: No ugly hacks in the client-side code, just DOM events. After having added an <event-source> element to your markup, you simply set up an event listener on the element:

document.getElementsByTagName("event-source")[0]
        .addEventListener("server-time", eventHandler, false);

function eventHandler(event)
{
    // Alert time sent by the server
    alert(event.data);
}

Easy, simple and clean. Which is the same on the server. We have built a neat little demo IRC-like chat client that is open for testing. The server is built on Twisted, an event-driven networking framework written in Python. During initial testing we tried to put the server through pure, unadulterated load abuse, but were unable to bring it down, which says something about the advantages for this approach on the server as well.

What applications do you see becoming a reality with SSE?

Opera 9

2006-06-20 10:26

Yeah. Opera 9 is out. Among the new features are BitTorrent, content blocker, customizable search engines, site-specific preferences and more. More importantly, there are numerous improvements for web authors. Read on

Web 3.1415: Ajax, Ook! and Brainfuck

2006-04-02 17:08 – One comment

A library to assist in authoring Ook! and Brainfuck files for use on the Web 3.1415. Because authoring Web 2.0 apps has become all to easy.

Cross-document messaging in Opera

2005-12-01 14:49 – Eight comments

One of the more unknown features of Opera is that it has an implementation of the DocumentMessaging interface from the Web Applications 1.0 specification. This interface allows authors to post messages between documents residing on different domains, without being suspectible to regular Cross Site Scripting vulnerabilities. This is a quick explanation and example of how cross-document messaging works.

Opera Platform SDK - Not your momma's Ajax

2005-11-15 09:00 – Seven comments

It's time to introduce to the world what I, and the team I'm working with are doing at Opera: The Opera Platform SDK, an advanced web application framework for mobile devices.