Webkit talk at #fosdem

Interestingly, the presentation makes use of WebKit instead of Powerpoint, Impress, or whatever presentation desktop software. The talk's going to be about "Discovering the WebKit world". Hard to understand what the guy says... A bit stressed out.(update: like a diesel, he turned off to be quite fine, but has to learn how to be less stressed and more confident - hey, dude, gimme a call). Key point: we do a web engine. All right, now, ... so what?

A bit of history

KHTML is what started it all in 1998-1999 but the project took off with Apple taking care and relased Safari based on WebKit. Apple opened WebKit in 2005. Then we see ports to Qt and GTK, followed up by a port to Chromium in 2008. Now, you can consider that WebKit is now truly open.

What kind of apps are using WebKit?

Safari, Chromium, Google Earth, iTunes, AppStore, Spotify, Netflix, Adobe Air, Steam / Valve. But these guys aren't so cool since they do not contribute a lot back. But http://www.webkit.org is more friendly.

Showcase time

(note: next time, ready your code editor, it sucks waiting like that...)

Let's have a Qt demo.

view.load(QUrl("http://www.webkit.org"); viw.show(); app.run(); Tada! A web page rendered! That's so easy that there a lot of so-called browsers popping up all over the place. But it is not so easy to do a good browser. So, tons of crap...

Next, a HTML5 Canvas-based app showing off how WebKit rulez.

Indeed, it does. Lovely. I wonder how I can embed WebKit in Squeak. Should be easy. I'll ask after the talk so that I can have fun with a Squeak plugin.

WebKit supports CSS animations and transitions

Instead of messing with timers and Javascript headaches, let's go transitions! A litte inspector opens on the slides, and tada, a bit of CSS3 transform on the elements to align on the right. wekbit-transitions: -webkit-transform: 3s Ah ah, good! A much welcome thing to basic animations. A ton of crappyscript just got thrown into the garbage can. Bonus with CSS: speed, seamless integration, removal of silly transiiton code from useful app-centric code.

Offline access with WebKit: yet another complaint about HTML apps goes out of the window

  1. WebStorage
  2. IndexDB
  3. Application cache: just mark some resources as available on line, and there they are
  4. (Web SQL): deemed to be a mistake

On webstorage: a object local storage (key, object) pairs. Supereasy and cool storage thing.

Hybrid applications: mix C++ and HTML: Yikes!

Spotify and Netflix do just that.

That's power meets easy UI.

Interesting concept, but one that opens a lot of headaches when it comes to portability IMHO. Well, people use it, so there is a market..

(some pictures to come, but I am now in the room, this will be for later.)

The key takeaway is that you can use the C++ controller from the JavaScript context, and back. So, in an application, it is great. In fact, I do love that.

This would bring together my C++ skills together with my web skills. Woot!

+ animations And there you get a CoolIris lookalike. So, no OpenGL, no shaders, ... All with basic HTML and transoformations. All that letting you use the inspector to make changes here and there on the UI: One word: COOL. AWESOME also comes to mind. And there is a WeKit is the people part

WebKit vision: in brief: Hackability meets standards.

Platform layer+V8 Javascript engine+WebCore+WebKit(2-research)+upper layers for showing off on the user screen.

Infrastructure

http://webkit.org : main website http://build.webkit.org - The QA Buildbot space http://wiki.webkit.org - Where to go for details On #IRC: #webkit channel There are also blogs and bugtrackers.

Conclusion

WebKit has a lot of power and is easy to embed. This opens a lot of new roads to travel and enjoy creating great applications for users.

The talk wasn't digging on the details but provided me with a great overview of what was possible with WebKit.

Horizon

WebKit2 is still research but we are going to get multiprocess.

The point is to beat Chrome. Let's see what it gives.

Thanks for reading chaps!

(update - pictures)

Modeling interactions – 1

Here are some basics you may be interested in if you'd like to model interactions between parts:

Smalltalk Squeak 4.2 is available

Nice image, lots of things back in (albeit no Omnibrowser but it is easy to get it inside). Also, there is the comeback of the ST-80 classes. Morphic has a good set of elements, and the look and feel is really great. Mouse buttons got changed, now the right click brings up the halos. Much easier. Very promising thing. I'll test drive it in the coming days/weeks for my project about trigonometry with morphs. Check out this screenshot (done from inside Squeak from the new screenshot option in the World menu): As you notice, this is fullscreen. There is a toggle switch in the Squeak top menu. Very nice. No more hint of any underlying OS. Squeak *is* the OS!

Squeak 4.2 with some windows open.

Pick the image here: http://ftp.squeak.org/4.2/Squeak4.2-10950.zip

Literacy 2.0 – Break the straightjacket for learning

Drastic changes required! Watch and feel the juices flow! The power of youth to take charge when given opportunity. Of course, the teachers will have to STEP UP!!!

Sort out the mess with the PBS

When things are unclear on the macro level on a software project, you may want to create a PBS to help out. Check it out:

Is IT a relationship business?

In this podcast episode, Dr Mike Drayton from Opus Performance interviews me on "Is IT a relationship business?" We talk about the IT-Business relationship, about Apple, about how to convey ideas and how to get things done in that field. 15 minutes that can bring interesting clues on the subject.  

Download Episode