Skip navigation.

exploreopera

| Help

Sign up | Help

Eclectic Brain Salad

Chris Mills' thoughts on the web, music, life, and more

Stop using Ajax ... and start using Opera Kestrel beta 2!

, , , ...

Hi folks, hope you are all well, and not too bored that this next blog post has taken so long. The title is a bit contrived, and is actually an amalgamation of the two things I was going to tell you about. Things have been pretty busy at Opera lately!

First of all, we've got another exciting new beta release of Kestrel, the new Opera desktop browser - beta 2, to be exact. It's got some exciting new additions, such as support for full CSS3 selectors and hsl, support for MathML, further speed optimizations, support for HTML5's getElementsByClassName, and improved synchronization of bookmarks speed dial sites and other settings through Opera Link. Download it and play around.

Next, I've published a very interesting article on dev.opera.com written by the delectable Brothercake, called Stop using Ajax! This article comments on how Ajax can do amazing things, but is often used gratuitously and unnecessarily, at the expense of accessibility. Cake makes a great argument here, and I think this should act as a wake up call to any developer to just think about what they are doing a bit more carefully, and take care that their application functionality doesn't end up locking out significant parts of their target audience.


The Highland Fling 2008

, , , ...

This was an exciting conference for me - not only was it held in Edinburgh, one of my favourite cities, but it was also the first real proper conference I have ever spoken at! I would like to say a big thank you from the heart to Alan, Dave, Roan, and everyone else who helped pull this together, for looking after us so well. It was a really great conference, and I think the discussions were very useful and rewarding. I would also like to say a big thanks to the other speakers - Paul, Norm, Christian, Gareth, Aral and Simon - for being such lovely people and giving me encouragement and support (well, Christian mainly mocked me and told bad jokes, but I know he means well ;-)

Wednesday April 4th

After getting some work done and dropping our son off at his grandparents house for few days, we (we being the delectable Kirsty and I) made our way up to Edinburgh on the train. I fortunately managed to find a seat with a power socket, so I could do some more work on my presentation. It is amazing how many mistakes there are to fix and tweaks there are to make, even after going through the presentation material several times!

After getting to Edinburgh, we got a taxi over to the wonderful luxury apartment (bigger than our whole house...) that we shared with Simon, and Aral and Stephanie for the duration. After saying hi and stopping for a brew, we made our way over to a really nice curry house for the speakers dinner, where we ate an enormous amount of spicy food with the organizers and the other speakers. Yum.

Thursday April 5th

The big day! We got there with a few minutes to spare, got settled in, listened to Alan introduce the day, and then it was time for our compère, Mr Paul Boag, to take the stage. He explained the format for the day, which really worked in my opinion - I'd like to see it used more at future conferences. Basically, each talk lasted for about 40 minutes. During this time, Paul wrote down some of his own thoughts and questions, and also collected questions from the audience via paper, text, and Twitter. At the end of the sessions, he interviewed each speaker using those questions. It made for some really nice discussions, and also cut out that horrible thing you normally get at conferences where someone will stand up and ask a painfully specific long winded question that is not of much interest to anyone else except them, and lasts half as long as the whole talk itself!

The first speaker up was Norm.

Mark Norman Francis - The browser and before

Norm gave a very interesting account of the history of the web, leading up to the present day. It was a very fitting first talk for the day, which set the scene nicely. He went through the really early days of the Internet, including ARPANET, early work by Joseph Lechleider, Tim Berners Lee and his work at CERN, early clients such as Gopher and NCSA Mosaic, and how Netscape and MS started and finished the browser wars. He also looked at more recent developments, including Firefox, Ajax, and frameworks and libraries. A very interesting statement that he rounded off his talk with is "The Web IS change" - referring to developer knowledge and skillsets. One very amusing piece of information that I never knew before is that Joseph Lechleider's original name for what became the Internet was "The Intergalactic Computer Network" - this guy certainly aimed high ;-)

Christian Heilmann - Sharing the joy; building badges for distribution

Christian always managed to deliver a good talk; today was certainly no exception. His talk mostly centered on how we can improve distribution of data through badges and APIs. The success of a lot of modern web apps is down to how you can distribute your data on to other sites by use of badges, eg Flickr and Youtube. The modern web is a web of data, and people want to be free to distribute their data. He talked about how we can use this data better, and how we should think about allowing people more power to do this more easily, if we are actually involved in creating APIs.

Gareth Rushgrove - Being a first class web citizen

Gareth's talk was a very interesting step through how to take advantage of some of the lesser known features of the Web, as well as some good tips for maximising efficiency of APIs. He started by stating that some people browse the Web using a web browser, but somme people don't - they use code. Some people aren't even people - they are robots (either physical robots, or automated programs such as web spiders) or even rabbits (the Nabaztag, anyone?) So what is a designer to do?

The answer - Understand APIs, to make it as easy as possible for you to manipulate the web of data we now deal with. "The API is the product."

First of all, make better use of HTTP. There are the GET and POST methods that everyone knows, but what about HEAD, PUT, TRACE, DELETE and OPTIONS? These could do some work for you (eg authentication) that you'd otherwise have to put on a higher layer of the stack. Why do this work twice?

Next, understand status codes better. Everyone knows 404 and 500, but what about the 200 success code, or the 503 service unavailable code?

Next he covered understanding URLs, and the fact that URL design is becoming more important. URLs are an important part of the UI of your application - they are the entry point to a site for a visitor, and are also a logical navigation tool if done right.

Lastly, he gave some rules for APIS. They should be:

  1. Proddable - eg you can use Curl to query APIs, to find out things about the data they carry, etc.
  2. Hackable - eg can you replace parts of the URL to get to different pages?
  3. Multilingual - some you can convert between different data types etc
  4. Open
  5. Transparent
  6. Obvious - document your APIs! Don't make people guess how to use them.

Lunch

Lunch was fairly uneventful, and it gave me some time to gather up some courage for my talk, which was coming next!

Me! - The mobile perspective

I think my talk went fairly well, especially for my first conference speaking engagement, and a few people said they though it went great afterwards. Everyone laughed at my jokes, and I didn't seem to stumble on my words, or forget anything. Plus it was entertaining freaking Paul out during the interview section, by lounging on the sofa in a kind of pseudo-porn star pose ;-)

I went through the basics of how the mobile web development landscape differs from "normal" web development, and what extra considerations you need to make, then I looked at device constraints and advantages, and some techniques for optimizing mobile sites. It gave me lots of good opportunities to plug Opera products, and the Web standards curriculum. And the interview section afterwards was useful, with some good discussion going about how to sell the mobile web to clients.

If you want a copy of my slides, e-mail me at cmills [at] opera [dot] com. Also check out my Think Vitamin article on mobile web development.

Aral Balkan - Barenaked Flash: Dispelling myths and building bridges

As always, Aral proved to be a very entertaining speaker, full of charisma and insight. I've seen him speak many times, and never seen him give a bad talk. Aral shares my interest in trying to get the Flash and standards communities to work more closely together, and that was the basic gist of this talk - he showed what is available in the Flash world these days, and debunked a load of myths, for example Flash being inaccessible (there are steps you can take these days to make Flash more accessible) and Flash being proprietary/closed (it start off like that, but with the amount of open source tools available these days, it is anything but - the actual Flash player is the only thing Adobe strictly controls.) He ended with a nice comment about how to teach Flashers better practices learned from the standards world - don't just stand around and moan at them - engage and educate them, and hopefully they can do the same to you.

Simon Willison - Comet: Moving towards a real time web

To round off the day, Simon presented on Comet which is a blanket term for any technique that involves the server pushing events on to connected browsers. Examples you can see today include Google Mail, the Google Chat browser window, and Google Spreadsheets (try opening two instances of a Google spreadsheet on different computers and making some updates, and you'll see the updates occur on both instances in real time.)

There was early Comet style functionality as far back as Netscape 1.1, in the form of client pull and server push, but achieving Comet across the Web wasn't really explored until later on. Simon explained that achieving it really was a grim, harsh battle between the developers and the browser - to illustrate this, he used a hilarious movie poster of "Zeppelin versus Pterodactyls"!

There were a series of problems in winning the battle:

  1. The first major issue is IE not making xhr:responseText available until after the page has finished loading. This was overcome using a hidden iFrame.
  2. The next two problems were the throbber (ie the graphic that pulses while a request is loading - this never seems to stop if you are you are doing Comet-style activity) and the click (ie the click that happens after a request loads.) These were overcome using a COMPLETELY undocumented ActiveX extendsion called htmlfile. Not sure how - I was a bit lost by this point in the presentation!
  3. Next problem - proxies/firewalls stopping the flow of the requests. This is overcome using the long polling technique, which keeps pinging the server, and then intermittantly closing and reopening the connection, to keep the data flowing.
  4. Lastly, there is a problem caused by the 2 connection limit inherent in IE (IE8 apparently will have a 6 connection limit, making this problem go away.)

And this is just on the client-side. The server-side problems are much worse! Standard servers such as IIS and Apache are just not set up to handle thousands of requests at once, but there are solutions available to this in various languages, such as Twisted in Python. And there are also standard protocols created for Comet, such as Bayeux and cometd. The future is looking bright for Comet too, with built in support for it in HTML5 - <event-source src="/comet">

Simon rounded off the talk by showing a demo of how you can build up a Comet application in under 5 minutes. Great talk.

Media query example

, , , ...

This is a modified version of a media query example I originally posted along with my mobile Think Vitamin article. I'm currently doing some debugging, trying to get it to work across devices a bit better, as currently there is some confusion as to how the max-width and max-device-width properties are interpreted by various browsers.

The test code is here.

WATCH THIS SPACE - THE CSS IS CURRENTLY NOT UPLOADED - I'M AIMING TO FINISH THIS EXPERIMENT SOON, WHEN I GET TIME.

The SXSWi 2008 finale - Monday to Wednesday

, ,

Monday

On Monday I managed to get to another session, before going off to the booth to do some more schmoozin'.

Social networking and your brand
Norm, Jina Bolton, Steve Smith, Steve Ganz, Paul Boag

This talk was great fun, although it was another one of these talks that entertained but didn't have much in the way of content - not necessarily a bad thing. Norm rather brilliantly played devil's advocate, asking questions such as "who the hell are you, and why should we care", and "Isn't social networking and branding pointless"? I think he's even more cynical than me about social networking!

Paul Boag then called Norm our by saying his brand is "drunkard" (try searching for king of the britons on flickr.) Paul showed a load of images of Norm looking drunk, and said "would you want to employ this man?" ;-)

Around this time, I also had a really nice conversation with Leslie Jensen about education at universities, and saw Shaun Inman too, and Craig and few others.

When I got back to the booth, I saw Cheryl Wise and Ross Harmes, two of my authors while I was at Apress - nice meeting you both! I went to lunch for some nice Texas BarBQ with Cheryl and Tristan from Opera, then tried to race back to see the browser wars panel that Chaals was speaking on...it was so packed that I couldn't get in!

On getting back to the exhibition hall, I talked to a load more great people, like my ex-colleagues from Apress/foED - Pete, Ben and Julie - and Dylan Schiemann from Dojo, who has some great ideas about Dojo support in Opera, and how to make browsers run JS toolkits more efficiently by introducing some kind of silent toolkit versioning control system.

Monday night was the night of our Rock Opera party, and I was really looking forward to seeing how it would go down! The bands played were great, Ben and Erin modelled the clothes for the fashion show really well, and a few light ales were consumed....ok, a lot! I think that if we keep putting on great rock and roll parties like this, we can eventually give Media Temple a run for their money! Well, maybe, maybe not ;-)

Tuesday

Tuesday was, shall we say, another fairly challenging day. I didn't get up to anything amazing in the day time, except for talking to a couple of guys about Microformats and browser integration, doing some more developer outreach, and getting a couple of choice bits of schwag.

We had a nice chilled out Opera team dinner at a lovely steakhouse, and then sidled on down to the Media Temple closing party, where I talked to so many different people that it's pretty much a blur. I only had about 2 drinks, because I was mindful about getting my flight the morning after, but it was a pleasant, if rather subdued, affair (surprising for Media temple!)

It was fabulous to talk to people like Lena, Stephany Sullivan and Greg Rewis, the Opera possee, Jon Hicks, Norm and a lot of the other Britpack guys, Paul Duncan...Denise, loads of Yahoo folk...the list goes on and on!

Wednesday

After getting less sleep than I'd hoped for, because of the international house of pancakes expedition team invading my room for a moment at about 3am, and someone trying to call me at about 4.30am, I got up, enjoyed a quiet breakfast, and got a taxi to the airport.

What a great SXSWi - the best one get, imo! I made lots of new friends and useful contacts, rocked out, and escaped with my dignity intact...well, pretty much!

SXSWi 2008 Saturday and Sunday: Of beer, education, bowling, and sleep deprivation

, , , ...

Saturday and Sunday proved to be just as much of a blast as the first couple of days. I actually managed to make a couple of sessions on Sunday.

Jon Gruber and Michael Lopp - Blood, Sweat and Fear; Good Design Hurts.

This was a fantastic presentation; Michael Lopp indulged in lots of swearing, but lots of good commentary on design, and fear of blue and ponies, and how Apple do things. Jon Gruber then took over, talking about design, and how great design has got to be risky, and sometimes maligned...you need these things to evolve, and innovate.

Andy Olio - Worst. Website. ever.

This was one of the funniest talks I've ever seen. A web designer and a VC introducing various speakers to come up on stage to talk about their web site ideas - the worst, most inane/amoral/derivative ideas they could come up with.

Andy first listed some of the biggest web site failures in history.

* kozmo.com - $280 million burned through in 3 years
* pets.com $130 million
* boo.com 188 million in 6 months

He then listed the categories the sites would be judged by, and gave examples:

* inane ideas
- digiscents - savor the world - web pages that send you smells
- 3D mailbox - makes your inbox look like miami beach. ludicrous.

* derivative ideas
- look at techcrunch for a week, eg facebook for senior citizens

* just plain evil
- goto.com - let people bid for top search results, text ad links
- Jigsaw - buy and trade business cards

Some of my favorite ideas presented:

* babiesandpuppiesforrent.com - the only people that wanted to rent the children are people who should never be allowed access to children, and puppies think children are delicious
* thinkwidow.com - dating site for newly widowed people
* Image search for the blind - providing voice overs to describe images on the web...for the blind people.
* Mommerce. The future of the future of commerce. MMOs. Take world of warcraft and add e-commerce shops to it, to ensure that players never have to stop playing. Ever. Turn bricks and mortar into clicks and mordor

In the evening, I popped over to Ms Jen's wine and cheese party, talked to Rob Weychert, Jon Hicks, saw the new generation of flathicks, and then went over to the Austin Barcamp with my Opera cohorts Phillip, David and Lawrence, to present a talk on Opera technologies and future standards, which went down pretty well. Phillip then did the first ever presentation ever in the USA, of the upcoming Opera 9.5 release. Stay tuned! The talks were made infinitely more fun by free beer, and a senior W3C guy playing blues guitar while we spoke.

After speaking, we watched the live band at the Barcamp for a while, drank more free beer, and then met up with the rest of the Opera possee. After driving around for ages trying to find a party, I got bored and led us over to a different bar. I had a "couple more light ales", and remember talking to a whole load of lovely people, including John Resig, Glenn Jones, Tristan Turpin, and PPK...after that, it got a bit hazy... ;-)

Sunday was hard work.

I got up, manned the Opera booth for a while, talking to some really nice people, then I had lunch with Phillip and David in a sleazy dive bar with blacked out windows and Van Halen on the stereo. The food was beautiful!

I then headed over to the booth again for a while, then went over to the Fire Eagle party. It was nice to talk to Tom Coates and the other guys about how Opera can do cool things with Fire Eagle...I then started to feel very tired, and went back to the hotel for a 39 minute power nap, before bowling started.

Our bowling team sucked, but hey, it was fun! Norm, Alun Rowe, Ben Ward, Lloydi, Aslan and Myself didn't win. We didn't get close to winning ;-)

We did have fun though. My team mates managed to enrage me enough to do better by plastering me with IE7 and Silverlight stickers ;-)

I also had some wonderful conversations with people about my web standards curriculum, including WaSP EduTF folk like Steph, Gareth and Aaron. We're taking web standards education to the masses! If anyone knows a university, or any other institution or company that needs some web standards education material, get in touch! I'm creating the definitive web standards training course, and it's getting some backing from big hitters! Mail us if you want more info, and keep checking http://dev.opera.com for more updates.

After the bowling fun was over, I went to bed for 9 hours. Hot damn I needed that!

SXSWi - the Texas Rodeo, Ester's follies, and beer... and geeking

, , , ...

Hello from SXSWi!

It has been awesome so far. I've indulged in a very large number of cool things already, met some good friends, drunk some great beer, and had a lot of interesting conversations. And this is only the first real day of the conference!

Upon getting to the airport on wednesday night, I was met by my good friend Carl Camera, who drove me to his house and gave me a bed to sleep in for the night. I got a whole bunch of work done on Thursday, and still got time to talk to his lovely wife Theresa, play NERF and Star Wars lego with his boys, and head over to San Antonio to check out the Alamo and eat good mexican food, along with Stuart and Cyrill from Yahoo, and Tristan (ex-Yahoo, now Opera!)

Upon getting to Austin on Thursday night, we went to see a hilarious variety act/satirical comedy show/magic show/chaotic stage masterpiece called Esters' Follies. It was delightfully raunchy, offensive and hilarious, so I'd recommend anyone who spends any time in Austin to go and see it.

After that we found a Margarita happy hour, then ended up heading over to Buffalo Billiards where I drank several glasses of a Belgian beer called Lucifer, talked to a lot of interesting people about Opera and standards education, and ended up doing a karaoke rendition of both "Jeremy" by Pearl Jam, and "Girls Girls Girls" by Motley Crue ;-)

Most of Friday was spent editing articles, getting my conference badge, seeing lots of wonderful people (such as Lena, Ms Jen, Andy and the other Britpackers, Dustin Diaz, Anton Peck, Steph Troeth, Steph Sullivan, and so many more.)

I also got the chance to head on over and experience the Texas Rodeo - wow! ;-) I've not experienced anything that surreal for a long time. A cowboy monkey riding a dog, 6 year old kids riding sheep, lots of lovely BarBQ and Margaritas, the start of a tornado in the sky near to us, and lots of cowboys. Whoa.

So far Saturday has been work, work, work. I'd better sign off now, as I'm speaking at the Austin Bar Camp in about 4 hours time, and have a bunch of editing to do before then!

Oh, before I go, check out the new Dev.opera.com article I've published, written by Gareth Rushgrove, which covers using JSONP and Microformats to import data across domains. Fantastic stuff!

SXSWi 2008 is almost upon us!

, ,

It's almost that time again kids. Tomorrow I'll be jet setting off to Texas to attend the SXSWi festival, and do some serious geeking. If you're gonna be there, let me know - it'd be cool to meet up and say hi. There will be an Opera booth in the exhibition hall, and an Opera rock and roll tour bus outside the convention centre, with lots of cool mobile and console technologies demonstrated (on mobiles and Nintendo Wiis!)

In addition, we're hosting a kick ass party on Monday March 10th, with a fashion show, lots of live bands, and DJs! Check out the Rock Opera page for more.

Come and see us Opera vikings.

Slides - MMU talk - February 29 2008

, , ,

I did a talk on Opera, future web standards and how to get hired in the web industry at Manchester Metropolitan University on Friday Feruary 29th 2008. I was fairly pleased with how it went, considering that it was my first ever talk to an external crowd (ie outside Opera!) and everything that could have gone wrong did so, pretty much! The projector unit would not recognise my Mac at all, for no apparent reason, and the default computer attached to the projector wouldn't let me install any files on it or download Opera. In the end I had to put my slides up on my blog and show them using IE - oh the irony! And of course they looked crappy because my Opera Show format wouldn't work on IE, and IE wouldn't run any of the examples hardly, being that they were CSS3, SVG, and other interesting stuff.

Anyhow this is making me sound horribly bitter and ungrateful, so I'd like to say that it still seemed to go down fairly well, and give a big thankyou to everyone who attended, especially Martin Stanton, who organized the do.

E-mail me if you'd like a copy of the slides - cmills [at] opera [dot] com.

FiTC Amsterdam 2008

, , ,

This is my account of FiTC Amsterdam, which gave me much joy earlier this week - it was awesome to see all of my friends in the Flash community again, play another rocking Phlash5 gig, meet some more great people, get some good work done, learn some things, and ... enjoy a few light ales (as us English beer connoisseurs like to say.)

Read more...

Vote for Opera in the 2008 Webware 100 awards!

, , ,

Voting for the 2008 Webware 100 awards by Cnet is now open, and Opera has been nominated in a few categories, including browser. If you like Opera, show your support for us by voting for us! Go here to vote.