A while ago I asked about the exact relationship between progressive enhancement and accessiblity. What were the responses?
.
| Book | Content | Donation drive | External publications | Fun | Linkdump | Market share | Mobile | Nederlands | Politics | Society | TV | The Mobile Web Handbook | Theory | WaSP | Web Guidelines |
A while ago I asked about the exact relationship between progressive enhancement and accessiblity. What were the responses?
This article asks a question I don’t know the answer to: What is the exact relationship between progressive enhancement and accessiblity?
21 March 2019
Yesterday the European Commission fined Google for almost €1.5 billion for unfairly favoring some of its online advertising services over those of its rivals — and it appears the EC isn’t done yet.
One of the ongoing antitrust cases is about Android, and more specifically about Google Services, the package of Google apps such as Play, YouTube, and Chrome that Android-using hardware vendors must either adopt completely, or not at all.
Months of planning come to a head, and the cat is out of the bag. Fronteers, the Dutch professional association of front-end developers, is planning to apply for W3C membership and appoint Rachel Andrew as our paid representative. This would solve the problem of front-end developer representation in W3C.
Note that this plan will be submitted to the Fronteers members on 19th of October, and that they can vote it down.
Now that the fascists singularly failed to carry France despite a last-minute attempt at one of those terrifying, democracy-destroying “hacker” jobs against Macron it’s time to call out the hacker and algorithm stories for the bullshit they are.
It was clear from the outset that the Macron leak contained many false documents. What I didn’t find out until today was that many (all?) of those false documents were planted by the Macron campaign itself (scroll down to last paragraphs) in an apparent counter-phishing attempt. That proves the hackers aren’t terribly clever (and didn’t read French).
Everyone who’s ever messed around with dates knows that they are terribly user-hostile — not only for software developers, but also for users. True, users will be able to tell you their date of birth or today’s date without trouble, but ask them to fill them out in a web form and they will encounter problems.
Month first, day first, or year first? And what about slashes, dashes, and other separators? Usually the website engineer has a strong personal preference and enforces it religiously upon unsuspecting users with stern and incomprehensible error messages in a lurid shade of red that are too tiny for anyone over 25 to read.
(This article was originally published on Samsung Internet’s Medium channel. Since I do not believe Medium will survive in the long run I re-publish it here.)
Once more Scientia Mobile sent me their Android WebView stats over the third quarter. I edited them slightly and put them online.
Just now Smashing Magazine published Introducing Samsung Internet, an article I wrote about Samsung’s Chromium 44-based default browser with the fairly unimaginative name. It also contains an interview with Samsung Internet engineer and W3C luminary Jungkee Song about the browser and the ideas behind it.
Once more Scientia Mobile sent me their Android WebView stats over the first quarter. I edited them slightly and put them online.
Yesterday I talked about background-attachment and its confusing mobile compatibility patterns. Today I’ll talk about the ulterior motive I had for this retest: Conditional Rules support, which basically amounts to @supports
.
Recently I spent WAY too much time on background-attachment
. Even though it’s not a tremendously important CSS declaration, I don’t see any reason not to inflict my pain on you as well. Besides, I retested the CSS Backgrounds and Borders module in all browsers, and that should count for something.
There is some news about the UC browser — the important one that nobody but me has ever heard of. (OK, that’s an exaggeration — but not by much.) Astonish your peers by being better informed than them.
Yesterday I retested the resize event on touchscreen devices. Where the 2013 tests mostly showed a chaotic jumble, right now it’s becoming more clear where the resize event is heading.
Last week, after reading this article, I tweeted that Firefox OS is dead. There was some pushback, since despite some important updates the OS will continue to be developed. However, an OS can be functionally dead without development being ceased, and that’s what I meant in my tweet.
The QuirksMode.org DNS entry did not work for about 55 hours, from Sunday 27th around 15:00 to midnight on Wednesday 30th. This is by far the longest time my site has ever been offline since it started (under a different name) in 1998. I’m not happy about it, but the matter was beyond my control.
Last week the news broke that Acadine Technologies, a Hong Kong start-up led and peopled by mostly ex-Mozillians, raised venture capital to create H5OS, a Firefox OS fork. I believe the political motivations behind this move have been underreported.
During my research of modern input types such as email
, date
, and number
I stumbled upon the Hello World
JavaScript detection technique. After fairly extensive testing I concluded that it should be added to the customary type === 'text'
detection, mostly in order to cater to Android WebKit, although it also solves a few other problems.
Yesterday, in reaction to pointer events becoming a W3C recommendation, Tim Kadlec published an important piece about Apple’s huge influence on the mobile web.
I agree with him to the extent of writing this extended Me-Too entry. It is increasingly becoming necessary to do something about Apple, its absolute refusal to talk to anyone, and its dickish way of bending the mobile web to its desires. Personally, I became tired of Safari quite a while ago, and I wouldn’t mind taking Apple down a notch.
So let’s do it.
From last Thursday to earlier today I held a simple one-question poll about which advanced input types such as date
and number
web developers are using.
The results are surprising, while I expected date
and number
to end in first and second place, the most popular type was actually email
.
9 February 2015
Permalink | in Market share
With my recent Chromia research in mind it’s time to study the browser stats for Q3 and Q4 2014, as always according to StatCounter. For the first time I give consolidated browser stats across all devices.
Headlines:
In my Chrome post I bewailed the lack of stats that doesn’t allow me to figure out how important non-Google Chromia are. Today, however, I received 100K Chromium hits from a Dutch mobile ad network. Although these numbers are not representative for the entire world, any data is better than no data, so here it goes.
Just now I published the retests of the CSS Images and replaced content spec, which includes gradients. It was during these tests yesterday that I discovered Android screenshots aren’t always trustworthy, and meanwhile I’ve got enough information for an update.
Many people advised me to take a screenshot of the screenshot. I did, and it shows the original screenshot correctly instead of repeating the problem. So this avenue of research does not lead anywhere.
Another fine day at the QuirksMode test labs, where we test browsers so you don’t have to. Today’s topic is CSS gradients, and the subtle ways in which the various Android devices fuck them up. Also, the not-so-subtle ways in which Android devices fuck up screenshots of said gradients.
Today I published my tests of CSS transitions in the desktop and mobile browsers. I created the test cases ages ago, but interpreting the results turned out to be tricky.
25 September 2014
For at least a year now I’ve held to the theory that the huge uptake in Chrome we’re seeing on the mobile web is mostly due to Samsung using its own version (based on Chromium 28) in its high-end smart devices from the Galaxy S4 on.
Yesterday Krijn started tweeting about mobile stats he had, and it turned out he was willing to share. He gave me data on about 100K mobile and tablet hits in Q2 on a project of his he’s worked on for ages five years. I took the data gratefully and created a table.
Conclusion: Of Chrome users, 25% uses Samsung Chrome — this amounts to about 5% of all mobile visits to the site. On the one hand this proves that Samsung Chrome is a Thing — on the other hand I had expected a much higher percentage. So my theory isn’t right, but Samsung Chrome is still important.
It’s time for some browser stats, as always courtesy of StatCounter.
And here’s the first table updated according to the new IE8-and-up rule. It’s past time I updated the DOM Compatibility tables, even though they’re not as exciting as they were ten years ago.
In February 1999, when my very first salary as a web developer arrived, I bought two things I wanted but so far couldn’t afford: a CD player and a watch. The CD player is still around somewhere in my new house, waiting to be connected. The watch, curiously, stopped working pretty soon after I stopped working for employers. Freelancers don’t need timekeeping, apparently. That was in 2002, and I haven’t worn a watch since.
Now there’s the Apple Watch. (Also a whole slew of Android Wear watches, but guess which type gets most attention?) I don’t really see the use case, but that might be my lack of imagination. Anyway, my job is not to discuss use cases, but browsers — or rather, the lack of them.
And it’s a wrap. Last Thursday, while being in Zürich, I did the absolutely last edits for The Mobile Web Handbook, my new book published by Smashing Magazine. You can order it and get the e-book right now; the printed book will go out in late September.
On Tuesday I delivered the final edits for The Mobile Web Handbook, my new book published by Smashing Magazine. Order it here.
After my Samsung smart TV test of two weeks ago I was interested in another TV test. Last Friday I was at a client that turned out to have an LG smart TV with browser, and I ran some quick tests.
A friend of mine bought a fairly cheap (so probably not-too-new) Samsung smart TV to watch football, then promptly went on holiday with his family and asked me to feed the cat. In return I demanded the remote for the TV, and the manual (which turned out to be useless). So here’s my report of my first ever smart TV browser test.
OK, so Vitaly let the cat out of the bag: I’m writing a new book: The Mobile Web Handbook, and Smashing Magazine is publishing it. It’ll be roughly 250 pages and will be available in June. Pre-ordering is possible right now.
A month ago Nokia announced its Nokia X product line which runs Android as its operating system. This is an interesting development because nobody expected Nokia to turn to Android — especially not now, when it’s about to be taken over by Microsoft after gambling (and losing) its independent existence on Windows Phone.
I have a theory about the Nokia X that I’d like to share with you. It may be nonsense, but it fits the currently available facts and makes sense, so it could be true.
Three weeks ago I wrote about installable web apps. Last weekend I found an interesting case study. It’s not exactly what I wrote about, but it give valuable insight in what site owners (and possibly consumers) currently want.
Yesterday I replied to a tweet by Marcos about “add to home screen,” and that kicked off a long and rather interesting conversation about installable web apps. This post gives my view.
As Bruce explained in his Fronteers 2013 session, bookmarking something in a mobile browser should mean adding an icon to the device’s home screen instead of making an entry in an otherwise undistinguished bookmark file. As soon as Bruce said this I knew he was right.
Just now I published the latest touch action tests. There are no nasty surprises, although IE remains idiosyncratic.
The most common touch action is the single tap. When that action occurs, browsers fire off a whole slew of events, mostly in order to remain backward compatible with older sites that only use mouse events. Although there are quite a few deviations from the “standard” order of these events, they don’t matter much. The average script won’t break because the mouseover event fires before the touchstart event. Still, I documented all deviations. Who knows when this will come in handy?
I also studied the double tap, pinch-zoom, and scroll actions and found that browsers generally fire those events you would expect. The contextmenu event, which could serve as a useful proxy for a touchhold actions, is badly supported.
I also updated the mobile events page with the new information gleaned from these tests.
Enjoy.
It’s time for some browser stats, as always courtesy of StatCounter.
StatCounter has rolled out a major upgrade to its statistics. For the first time, tablets are now clearly separated from desktop. If you haven’t taken a look for a while, do so now.
Today I’m asking you for a donation to keep my mobile browser research up and running. I don’t really like doing this, but I have to if I want to continue my testing programme.
This week I ran an eight-question survey of media query use, responsive web design fundamentals, and one viewport question. 1251 web developers reacted. This entry presents the results.
Most important conclusions:
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat Brazil.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat Egypt.
6 November 2013
I published my research on the orientationchange and resize events on mobile. If you’re expecting plenty of browser incompatibility fun you won’t be disappointed.
5 November 2013
Last week Luke Wroblewski published an important article in which he said that web developers practising responsive design rely too much on a device’s screen size to determine which device it is.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat Mexico.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat the Netherlands.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat the US.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat the UK.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat South Korea.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat Indonesia.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat India.
It’s instructive to take a good look at some local mobile browser market stats, as always by StatCounter. Today we treat Nigeria.
Recently I updated the CSS Text and CSS Selectors tables to my latest mobile browser test array. I found a new Android bug and a moment of sheer brilliance at Sony.
It’s time for the quarterly browser stats according to StatCounter. Also, I present a comparison between StatCounter’s numbers and Akamai’s.
During the past several weeks I’ve been busy writing tests and performing them, and now the result is here: the W3C DOM Core compatibility tables for desktop and mobile browsers. I wrote 185 tests plus a test harness, and performed them in 57 browsers (17 desktop and 40 mobile), for a total of 10,545 tests done.
26 August 2013
After too many months of not doing any testing at all, I’m gearing up towards a major round of compatibility testing. Today, I’d like to ask you if you know DOM Core tests that I need to run.
It’s time for some global browser stats courtesy of StatCounter. On desktop, Chrome is growing mightily. On mobile, Android and Safari increase their lead somewhat, to the detriment of especially Nokia and Opera. Also, Firefox disappears from the mobile radar, and I hadn’t expected that.
Just now I noticed a Twitter discussion on packaged web apps and their purpose. The same question was asked during the Mobilism panel, and I still regret not speaking up and explaining. So here it is.
The point of a packaged web app is to allow for its peer-to-peer transfer from device to device.
A user has a nice web app and proudly shows it off to friends. They also want it, so the user opens a Bluetooth connection (or NFC or whatever) and just sends it to his friends’ devices. They tap it, it installs itself, and they can use the app straight away.
One of the things I’ve been following closely these past few weeks is an initiative for a new kind of journalism here at home. To me it’s not so much about the journalism as it is about the business model, which nicely ties in with other initiatives in the US, and is probably even more succesful right now.
De Correspondent aims to become a blog and news site supported by subscriptions. See also this English article for a summary of what’s happened so far.
A few more Blink-related links. (This article’s title was stolen borrowed from Thomas van Zuijlen.)
Just now I uploaded the Units and Values desktop and mobile tables. They contain tests for many useful units, such as em, mm, vh, calc() and much more.
Oh boy, units and values.
Most compatibility patterns are actually quite simple: a browser does or does not support a given unit. There are a few exceptions, though.
Just now I published the Images and replaced contents tables. By far the most important feature are gradients, and in general they’re tolerably well supported.
Yesterday I published the CSS2 and Backgrounds & Borders mobile tables.
CSS2 is the table that contains all properties that were never redefined in any CSS3 module. It includes such vital properties as display
, position
, and overflow
. Backgrounds & Borders, despite the name, is mostly about backgrounds and a few miscellaneous properties. I test border-radius
, but the other border-related property, border-image
, is WAY too complicated for me.
On mobile there are three declarations that merit particular attention: overflow: auto
, position: fixed
, and background-attachment
. Despite their apparent differences they have one important aspect in common: there is now an element that should be scrolled and moved (or not scrolled or moved) separately from the page as a whole. That turns out to be a challenge for many mobile browsers.
28 February 2013
This week I published the CSS2 and Backgrounds & Borders tables for desktop only. I found no surprises. That concludes my publications for this week.
CSS2 is the table that contains all properties that were never redefined in any CSS3 module. It includes such vital properties as display
, position
, and overflow
.
The mobile tables are delayed because I’m waiting for a bunch of Nokia phones to arrive. I’m not sure when I’ll get them, but I hope to be able to continue the mobile tests late next week. Maybe I’ll publish another desktop table in the mean time.
And when I publish the mobile tables, oh boy, the stories I can tell. overflow: auto
and position: fixed
on mobile, baby!
Just now I published the desktop and mobile tables for the CSS Text module and related ones — think italics, underline, and letter-spacing, but also hyphenation and text-shadow.
It’s time for some mobile browser stats, as always according to StatCounter. Here are the figures for Q4 last year, as well as for 2012 as a whole. Summary: an excellent year for Google’s browsers.
If you’re so inclined you can see ominous portents of the approaching WebKit apocalypse in these numbers. Non-WebKit browsers are losing market share everywhere.
Over the weekend I finished the first two CSS compatibility tables new style: selectors and columns. These tests are almost complete (a few selectors are missing), and have been executed in 40 or so browsers, desktop and mobile.
13 February 2013
Permalink | in Opera, Opera Mobile/Mini
OK, so Opera is going to move to WebKit. I didn’t see that coming, despite the recent news about a WebKit-based browser on iOS (can’t port Presto there, so of course it’s WebKit).
What does all this mean? Hard to tell. Here are a few thoughts and guesses.
In the past month I’ve researched CSS gradients, and I can finally present my findings. As usual, there was no source that gives clear, concise, accurate information about the three syntaxes and the four rendering engines, so I decided to write it myself.
Here is the inevitable compatibility table. Below I excerpt part of my introduction to gradients.
Yesterday we saw that in Q3 the Android browser has a 24% market share according to StatCounter. On the other hand, Tomi Ahonen reports Android’s Q3 sales market share was 71% and its installed base share 48%. Even allowing for fuzzy data and margins of error, that’s a huge difference. What’s the cause?
It’s time for some browser stats; as always according to StatCounter. The Q3 stats are moderately interesting, both on the mobile and on the desktop side.
15 November 2012
Permalink
| in Mobile web dev
9 comments
(closed)
Currently I’m working on a media query test suite, and I’ve run into one of those weird things: the proper syntax of @media not
.
Note that I’m only interested in the @media syntax. I cannot use the rest because I can’t fit it into my test suite.
Back in May or June Vitaly Friedman of Smashing Magazine asked me to write a chapter for Mobile Book.
It was to be about the mobile market as a whole. I liked that; it was just what I had in mind for my next writing job, so I agreed and went to work in summer. Yesterday and today I sent in my final remarks about the print proofs.
A podcast interview with me — in Dutch.
7 November 2012
Permalink
| in Connection speed
5 comments
(closed)
Today I finally have the time to continue with the connection speed measurements. For those joining the discussion only now, first read part 1 and part 2. See also the draft spec; especially for the metered
property.
I’m trying to distill a few principles for measuring the connection speed. I give them in the form of statements; be sure to speak up if you disagree with one of them.
A later article will return to the nasty details of reading out the connection speed. Today we’re only concerned with broad outlines.
Now that we have the iPad Mini, web designers waste no time in wanting to distinguish between it and the iPad 2. Tough luck.
Yesterday Max Firtman explained in detail why that is not possible. Briefly, no JavaScript or CSS property, variable or media query is different on the iPad 2 and the iPad Mini. Both are 1024x768, neither has a retina screen, etc.
Incidentally, it appears that native developers can distinguish between the two, making the playing field for the grand match between native and web unleveled (disleveled?). If you wish you can blame Apple.
That’s not what I want to write about, though. Instead, it’s about web developers’ expectations and physical units in the W3C spec.
26 October 2012
Permalink
| in Connection speed
6 comments
(closed)
Well, there were some interesting comments on my last post about connection speed in browsers. This post continues the conversation by giving my replies to a few notes, thoughts, and concerns.
In the past week I’ve done the viewport tests on the latest crop of devices, and things are definitely looking better. The visual viewport dimensions are now well-supported, and a consensus on position: fixed is in the making.
23 October 2012
Permalink
| in Connection speed
16 comments
(closed)
I’ve said it before and I’ll say it again: browsers, especially mobile ones, should give information about the speed of the connection they’re on, so that we know whether to send the high-res images or lowsource ones.
Currently no browser gives any sort of information about connection speed — they don’t even have access to it. Still ... well, let’s say that it’s possible that this will change in the future. But we need to figure out exactly how the system should work.
So this post asks a few questions, and the comments are open.
I held a JavaScript library poll in the last three weeks, and it’s time to publish the results. At least 3,350 people responded. With nearly 155,000 responses in total, and nearly 1,700 for the least-answered question, I believe this poll is fairly representative of my readers and the readers of my readers, and therefore gives genuinely useful information about current JavaScript library use.
Back in Spring 2007 it dawned on me that what we needed in Holland was an association of professional front-end developers. Front-end was on the rise, but not nearly as popular as it is nowadays, and it was marred by archaic types who were still using table-based layouts and were discussing the use of CSS internally ... and discussing it ... and discussing it.
I started reaching out to front-enders I knew, and pretty soon it was clear almost all of them agreed that a professional association was a good idea. Consequentely, Fronteers was founded in September 2007, slightly more than five years ago. I was elected chairman.
In November I’m going to step down as chairman and board member (blogpost in Dutch), and I’d like to close off my active duty time at Fronteers with a retrospective. Which plans worked, which ones didn’t? Which lessons can you draw if you’re considering a similar association in your country?
Yesterday W3C announced the new webplatform.org initiative of W3C and several browser vendors. I’d like to add something: I’m going to be involved.
Two weeks ago I published a poll about the use of JavaScript libraries. So far it had 97,500 responses, but I’d like to make that 100,000 or more. So here’s the poll again, and I request you to answer as many questions as you can stand.
When I spoke at From the Front I was asked what I thought was the worst case of thoughtless copy/pasting I saw going on around the web. My answer: jQuery.
I feel that jQuery, even the mobile version, and in fact all current JavaScript libraries, are too heavy for mobile. I think it’s time for a re-evaluation of the libraries’ good and bad parts. I followed up in this tweet, which caused quite a few reactions.
Yesterday Mark Zuckerberg said (paraphrased):
The biggest mistake we made as a company was betting too much on HTML5. While building native apps that were basically just a wrapper for the mobile web standard let it experiment quickly, it made the apps run way too slow. We burnt two years.
Two quick notes:
So all in all, this remark doesn’t say as much as you’d think; only that Facebook will switch from web to native on Android because the Android browser does not allow web to emulate native.
But will they also create BlackBerry, Windows Phone, Symbian, bada, and S40 apps? I think not.
BTW: here is the full quote. Facebook to forget about HTML5? Nah.
Oh, and one reason Zuckerberg said this is because investors want to hear this. Investors are a bunch of clueless people who only run after buzzwords, and Facebook’s delicate position on the stock market makes it necessary to placate them.
In preparation for tomorrow’s iPhone announcements I’d like to repeat something I said last October: the iPhone 3GS will be produced for many years to come, and its price will drop a little every year.
Update: Well, it seems I was wrong here. The 3GS has been nixed. Pity.
After part 1, here is part 2 of the quarterly mobile (and sometimes desktop) browser stats for the twelve countries I’ve been following since Q4 2010. As always, the stats are according to StatCounter.
Your donation for keeping this series up and running would be much appreciated.
12 July 2012
Pretty soon I’m going to write the opening chapter for the upcoming Smashing Mobile Book. The provisional title is “What’s going on in Mobile?” and I’m going to talk about how the mobile market works, and what web developers need to know to find their way around 10 operating system, 15 device vendors, and 25 browsers.
Before starting, though, I’d like to know which questions you have.
If you’re a web developer interested in mobile but only starting out, or even having a year of experience under your belt, what are the kind of things that frequently baffle you about the mobile market? Which parts don’t you understand? Which mechanisms would you like to see explained?
Note that I’m not going to write about technical issues. No CSS bugs in Android WebKit, JavaScript engines in Samsung bada, or WebGL support on BlackBerry. Instead, I’m going to try to paint a picture of the market as a whole, with the intention that I (and you) can predict what’s going to happen next, which OSs or vendors will survive and which ones will go under.
So. Please ask your question now, so that I can consider it for the chapter. What do you want to know about the mobile market?
11 July 2012
Last week I got annoyed at the large differences in syntax for vendor-prefixed device-pixel-ratio media queries. I said, half in desperation and half as a threat, that it might be better to have only the WebKit rendering engine and ditch the rest.
Meanwhile I’ve had some time to think about it, and I find that I still support the idea of multiple rendering engines. Competition is still good, just as it was ten years ago.
HOWEVER. There’s an important exception.
Here are the quarterly mobile (and sometimes desktop) browser stats for the twelve countries I’ve been following since Q4 2010. As always, the stats are according to StatCounter.
This post treats the first six countries; the second six will appear next week. Your donation for keeping this series up and running would be much appreciated.
OK, I’m now officially fed up with vendor prefixes, and to a lesser extent with Firefox and Opera who’ve gone batshit crazy on us all once more.
It’s past time for some browser stats; as always according to StatCounter. Because I haven’t written an update in months I treat Q1 and Q2 in this article.
Your donation for keeping this series up and running would be much appreciated.
OK, so now we have the rumour that Facebook is going to buy Opera. That would be unexpected. And interesting.
In this entry I’m going to pretend the news is true, even though that’s not certain yet, because it is a good starting point for some serious strategic thinking.
Back in October 2010 I was very glad to receive a mail from the people behind the Samsung Dolfin browser, who turned out to work from Bangalore, India, asking for my cooperation in making it better and even offering to pay me for it. Unfortunately, by now it turns out that they’re a bunch of fucking assholes who don’t do as they promise. This is to serve as a warning to others NEVER to do business with them.
It should be noted that the engineers are perfectly all-right and reasonable and can easily be talked to. It’s the fucking bureaucratic assholes in "HR" that are the enemy who’ve fucked up my life in the last year or so.
Update: This post helped. I received my money, while I was convinced I'd never get it. So that's arranged now, and my dealings with SISO are at an end.
At first sight the new iPad 3 seems to be a vindication of Moore’s Law. Apple wanted to significantly increase the pixel density of the screen, and had to wait until the components were cheap enough to sell the iPad for its usual price. Now, apparently, that wait has ended and the iPad 3 with Retina is here.
Still, not all is well with the iPad 3. Put simply, what Apple forgot here (or deliberately decided to overlook) is that Moore’s Law doesn’t go for data connections; especially not for mobile ones. Increasing a wireless data network’s speed doesn’t really depend on cheaper hardware: it’s a matter of bandwidth, frequencies, and more cell towers.
Today we’ll finish the report on the Q2 2011 mobile browser stats according to StatCounter by treating the six countries with the least mobile browsing market share.
This post treats the second six countries. Part 1, which treated the first six, appeared two weeks ago. Your donation for keeping this series up and running would be much appreciated.
In addition to the quality of their web environment, there’s another factor that will decide whether or not mobile web players are going to survive: the quality of their developer relations outreach. Here’s a quick and dirty look at the current state of affairs.
And yes, I admit that this overview is based almost solely on my own experiences in finding sponsors and panelists for Mobilism, and I also admit that I’m writing this post because I’m very frustrated right now.
It’s time for the quarterly mobile browser statistics from 12 selected countries according to StatCounter.
This post treats the first six countries; the second six will appear next week. Your donation for keeping this series up and running would be much appreciated.
What I keep forgetting to mention: I’ve been interviewed by Jen Simmons of 5by5, and it was a quite nice talk.
The interview is here, and I talk a lot about mobile, the mobile web, mobile vendors, the problems of Android and Windows Phone, and lots of other topics. The entire interview is 1:28 because I just didn’t stop talking and Jen was too polite to interrupt.
Anyway, enjoy.
I’ve been going through my CSS tests last week, and thought I’d jot down some notes on how the browser treat vendor prefixes. It’ll bring some much-needed practicality into the discussion.
This does not prove that vendor prefixes are either good or bad. It’s just one more data point to consider.
Yesterday and today I worked on the CSS Compatibility Tables and retested everything in the latest crop of browsers. There is some improvement, but also a lot of stagnation.
It’s time for the browser stats for January; as always according to StatCounter.
Your donation for keeping this series up and running would be much appreciated.
This is getting frustrating.
The official CSS WG blog:
Discussed problem of WebKit monopoly on mobile and the consequent pressure for other engines to implement -webkit- properties.
Webkit monoculture: threat or menace?
Guys, stop it. This is simplistic us vs. them thinking. It’s not helpful.
Now if you would say there’s an iPhone monoculture among web developers, you’d be right. But whose fault is that?
Belatedly, and snowed under by other news, here are my BlackBerry DevCon slides of Wednesday. Once more the Future of the Mobile Web, but I think it was the best Future session I gave so far. And I use new cat and fisherman pics.
More in general, the conference was excellent; much, much better than I thought. There was ample web content sprinkled through a solid core of BlackBerry-centric sessions, but even part of the BB sessions were in fact about web technologies and related topics.
My article yesterday about the vendor prefix mess garnered quite a few interesting comments, and today I’d like to respond to those that object against my proposal to replace the current system by a universal -beta-
prefix by proposing an additional -alpha-
prefix.
This is one of those weeks where everything happens simultaneously. I think that the vendor prefix discussion is the most important topic, so that’s what will get my attention.
Daniel Glazman, co-chair of the CSS WG, posted a call for action that warned of the dire consequences of web developers using only -webkit-
prefixed CSS declarations: IE, Mozilla and Opera would also implement -webkit-
.
I will argue that the proposed solution of making web developers aware of the problem may be technically and ideologically correct, but does not address the true causes of the problem: the developer-hostility of vendor prefixes, and the lack of mobile test devices.
In December I held a QuirksMode reader survey on Urtak. It had 69 questions, and about 59,000 answers were given by about 1,100 respondents. A few weeks back I published part 1 of my survey. Here’s the next few findings.
I have retested the support for the new input types (<input type="number">
and such) in the desktop and mobile browsers.
All in all support has increased slightly since the last time I tested them, although Safari desktop, Chrome, and BlackBerry have seen some decline. Safari and Chrome have mainly done away with badly or buggily implemented types — it’s clear they’re rewriting significant parts of this module.
In December I held a QuirksMode reader survey on Urtak. It had 69 questions, and about 55,000 answers were given by about 1,100 respondents. Here’s a partial summary of the findings.
I’ve been thinking a lot about device classes recently, and decided on a provisional four-class scheme. I have no idea if the scheme is going to survive, but we have to at least try to order the bewildering variety of devices somewhat.
While I was at it I also gathered data from StatCounter about the browsing shares of these device classes.
Your donation for keeping this research up and running would be much appreciated.
Earlier this week Net Market Share released numbers that allegedly show the Java ME operating system is gaining ground at the expense of iOS and especially Android.
Unfortunately the story isn’t true, and I suspect it’s a good example of headline grabbing aimed at those who don’t have deep knowledge of mobile browser statistics; a group that seems to include the entire tech blogging caste.
It’s time for the browser stats for December; as always according to StatCounter. Since it’s the last month of the year, I can also give the aggregate stats for Q4 and for 2011 as a whole.
Your donation for keeping this series up and running would be much appreciated.
It’s a new year, and we’re supposed to make some predictions. So I’ll try to order my thoughts about the post-Android market, although I should warn you I won’t make a true prediction but will be a bit wishy-washy and vague.
If you’re bored during the holidays I encourage you to take my poll; it’ll help me understand who my audience is. Please answer as many or few questions as you like; although I’d like to ask you to answer at least 15 to 20 or so.
OK, it’s time for an experiment. I created a reader poll about QuirksMode, your testing habits as a web developer, and your devices.
Microsoft announced it is going to automatically upgrade IE starting in January. In order to track their progress (or lack of it) we have to establish a baseline.
So here are the market shares of the various IE versions according to StatCounter in nine countries, as well as the global score. These numbers are from November, so well before the automatic upgrade.
Last week I did some research on the resize event on mobile and tablet browsers. Executive summary: it’s a mess. And the best browser, surprisingly, is Samsung’s Dolfin.
My conclusions are, summarised:
So HP open-sources webOS. That may sound like good news, but I doubt it.
It’s time for the browser stats for November; as always according to StatCounter. They’re not very exciting this month, although several long-term trends are confirmed.
Your donation for keeping this series up and running would be much appreciated.
I’ve never actually played with Siri yet, so this example might be somewhat off the mark. And I made up the site. Still, it’s something we should keep in mind — especially accessibility specialists.
It’s time for the browser stats for October; as always according to StatCounter. I’m going to follow the desktop market too, for a while, since big changes are brewing.
Your donation for keeping this series up and running would be much appreciated.
Today’s hot story seems to be the supposedly Google-initiated howtogomo.com website. I heard some complaints, and decided to take a look myself.
Oh. My. God.
Over the past week or so I found I have seriously misjudged the iPhone 4S announcement, and I’d like to set the record straight. After reading a few interesting pieces I realised I’d misunderstood Apple’s patterns and cycles, and I saw how brilliant the 3GS move is.
I decided to write this little summary to firmly plant Apple’s pattern of cycles in my mind. No original thoughts here — I just collate ideas from other sources.
Today we’ll finish the report on the Q2 2011 mobile browser stats according to StatCounter by treating the six countries with the least mobile browsing market share.
Part 1 appeared last week. Your donation for keeping this series up and running would be much appreciated.
It’s time for the quarterly mobile browser statistics from 12 selected countries according to StatCounter.
This post treats the first six countries; the second six will appear next week. Your donation for keeping this series up and running would be much appreciated.
If you’re not into blog posts that state the blindingly obvious, skip this one. It explains why Google’s whole Dart idea will fail miserably as a “structured language for web programming.” Most people will have already figured this out by themselves, but for those few who haven’t, here’s why:
JavaScript is already there. On a couple of billion devices.
That’s it, really; there’s little else to say. Still, since a blog post is supposed to be longer than two paragraphs, I’ll say a bit more.
Fronteers 2011, held last Thursday and Friday, was an extraordinary web conference. Where the previous three editions were good and could easily compare to the best international events, Fronteers 2011 was better. The upcoming videos will prove it.
I’ve been to a lot of conferences, and organised four. The ones I organised, and more than half the ones I visited were good, most others were not so good, but a few were extraordinary. Fronteers 2011 belongs in that select group.
And the wifi worked flawlessly with 450 simultaneous connections!
Back in May I went on record saying that Apple would announce two iPhone models this year. It didn’t. I also said I’d eat crow in public if I was wrong, so even though I don’t think anyone actually remembers my promise, I owe you this.
... munch ... crunch ... [spit out feather] ... bleeh ... munch ...
Still.
It’s time for the mobile browser stats for September; as always according to StatCounter. Like last month, only two points changed hands but they’re important ones: Safari jumps back to second position, stealing one point each from Nokia and BlackBerry.
Your donation for keeping this series up and running would be much appreciated.
Dear Amazon Silk team,
You released a marketing campaign disguised as a technical talk about your new Silk browser for the Kindle.
Web developers are very interested in what you have to offer, and would love to study the solutions you’ve created for browsing in connection-challenged environments, but currently that’s impossible due to lack of information.
That lack is understandable: right now you’re hurrying to get all last-minute fixes applied in time for the release and don’t have time for answering detailed technical questions.
Still, the emphasis you put on Silk’s use of completely new concepts makes web developers very nervous and has them scramble for any information. Browser vendor had completely idiotic ideas before and tried to sell them as the Next Big Thing. We’d like to know for sure that Amazon is not one of those vendors.
Therefore I have a few questions for you, which are detailed below.
I would also very much like to get in touch with a Silk developer relations manager.
Oh, and next time, please don’t pretend all these concepts are totally new and utterly astounding. They’re not. Opera has been doing this for years. Your solution may be technically better, but the onus of proving that is on you.
Thanks, ppk
So Amazon has announced its Kindle Fire tablet, and it will not be an iPad killer. It runs Android, but not the standard Android, but rather a special Amazon port that does not include any standard Google apps. Notably, Amazon will have its own app store.
Update: I've asked a few questions of the Silk team. Now let's hope we get an answer.
The Kindle Fire will also sport its own browser: Silk. Kudos to Amazon for actually giving their browser a name. That helps a lot.
So. Samsung will open-source bada next year so that developers can improve it and other device vendors use it. The Register does not believe the news, while GigaOM correctly points out that Samsung won’t gain anything by open-sourcing bada.
Meanwhile, the HP board dumps CEO Apotheker and instates Whitman, who vows to retain Apotheker’s strategies, even though it was exactly those strategies that got Apotheker fired. The spin-off of the PC unit may be cancelled, even though it constitutes about 90% of the current strategy. The webOS team is rumoured to be downsized, which does not make sense at all if HP wants to do something useful with it.
Oh my.
Samsung will not buy MeeGo but instead focuses on bada. Meanwhile HTC confirms it is considering buying its own OS, but “won’t be rushed” — unlike certain other large Android vendors we could mention.
Time to update last week’s overview. #15 is the first new one.
It is with great pleasure that I saw that I was included in the latest Carnival of the Mobilists with my Twelve steps for saving webOS.
If you don’t know it, Carnival of the Mobilists is a linklist of the best mobile writing of the past month. It appears on a different blog every month, and this time it’s Dennis Bournique of WAP Review who plays host. I discovered the Carnival about a year ago and have been hooked ever since.
The beauty of the format is that very different articles end up on one page; a bit like Linkbait, but with much more variety. There are articles about the mobile city, a new ad network that might replace AdMob, recommendations for encouraging India's mobile services ecosystem, the reason why Martha’s Vineyard’s inhabitants love Obama’s visits, and more.
One of the rules of the Carnival is that you do not link to any of the individual posts, but only to the Carnival itself. So if you’d like to read one of the articles, go there!
So here’s the thing with responsive design and JavaScript:
So Samsung won’t buy webOS after all. Instead, it is said to be interested in MeeGo, which Intel may want to sell. And HP will not sell the webOS team, which has been transferred from the PC division, which will be sold, to a strategy division, which will stay. Good, HP can use some strategy. As can Samsung.
That thud you heard? I fell because my head is spinning.
Back in June I requested donations to pay for the time I needed to update the desktop browser compatibility tables. The community responded overwhelmingly. Today I present the first installment of my side of the promise: the event compatibility tables have been updated.
Donations are still very welcome, and now you know that this is the sort of thing your money is going to be used for.
It’s time for the mobile browser stats for August, as always from StatCounter. Although only two points have changed hands since July, they are important ones: Android jumps to second position after Opera, but before Safari.
Well, the webOS saga has already entered a new phase. The Next Web reports that Samsung is seriously considering buying webOS (in addition to hiring a former HP VC for marketing their PCs.)
So it’s outright sale, and not licensing. And it’s Samsung. Neither is unexpected; I predicted both a week ago. (And I must admit I’m very happy to finally get something right, even though it wasn’t a particularly complicated prediction.)
I’ve been thinking a lot about the future of webOS, and have decided it does have one, maybe even a glorious one, provided the new owner or licensee reaches out to web developers, as Palm should have done back in 2009.
So here are twelve steps the new owner should take in order to get webOS to thrive.
It’s time for the Q1 and Q2 overview of smartphone sales. Headlines: Nokia falls apart; Android vendors pick up the pieces. Most of this entry was written two weeks ago, before the MotoGoogle and webOS bombshells.
Your donation for keeping this series up and running would be much appreciated.
HP kills off webOS. However, I do not believe this is the end of webOS. On the contrary, I think it’s the start.
The quote from the press release:
HP reported that it plans to announce that it will discontinue operations for webOS devices, specifically the TouchPad and webOS phones. HP will continue to explore options to optimize the value of webOS software going forward.
How do you optimize the value of webOS software without producing webOS devices? By selling it.
HP was already in talks with Samsung, so that’s one definite option. HTC is another. Basically anyone who needs a good mobile OS does.
Anyway, HP did something very clever (or lucky) by announcing this just after the MotoGoogle bombshell. “Dear discontented Android vendors, if you’re doubting your eternal and undying allegiance to Google, we have a shiny OS for sale for you. No strings attached. Place your bids.”
HP had no fucking clue what to do with a progressive mobile OS. It’s likely that webOS’s future owners will perform better. They can hardly do worse.
Opinions abound on the Motorola acquisition. A quick rundown is in order.
So Google buys Motorola. What does this mean?
Personally I feel this heralds the high-water mark of Android’s OS market share. That’s not the same as its developer mindshare, or customer satisfaction, but I don’t think the other Android vendors are going to be thrilled, and that we’re going to see that in Q1’s sales stats. Android will drop slightly, and one or more new OSs will take its place.
Here are the July mobile browser stats. The StatCounter change has been fully integrated, which means we’re back to normal but with a few extra browsers in the long tail.
Your donation for keeping this series up and running would be much appreciated.
The release of US mobile usage statistics allows me to calculate the “smartness” of several platforms in the US market according to the method I proposed earlier. Better still, I can include non-smartphones in the calculation, which gives a more honest picture of the overall phone market.
iOS users turn out to surf about 4 times as much as the average phone owner, while BlackBerry and Android users surf about 2.5 times as much. The real surprises, however, come from Windows and Symbian.
Today we’ll finish the report on the Q2 2011 mobile browser stats according to StatCounter by treating the six countries with the least mobile browsing market share. Remember that the methodology of the detection changed in late April.
Part 1 appeared last week. Your donation for keeping this series up and running would be much appreciated.
John Gruber points to and agrees with this article that says that many activated Android phones are not used as smartphones, proving that iOS is more important in the smartphone market than the sales market shares show.
They could be right, they could be wrong. The question is: How do you measure a platform’s “smartness?” Unfortunately the article does not offer any answers to this crucial question.
It’s time for the quarterly mobile browser statistics from 12 selected countries according to StatCounter. Remember that the methodology of the detection changed in late April. This is noticeable in most countries, and especially in India and Brazil.
This post treats the first six countries; the second six will appear next week. Your donation for keeping this series up and running would be much appreciated.
And here are the mobile browser stats for June and for all of Q2 according to StatCounter. Remember that the methodology of the detection changed in late April.
Your donation for keeping this series up and running would be much appreciated.
Here are the global mobile browser stats for May. Three new browsers entered the stats because both StatCounter and I changed our methodologies. These changes are detailed at the end of this entry.
Your donation for keeping this series up and running would be much appreciated.
I’ve written a Conference Organiser’s Handbook in which I share some of my experiences with organising conferences, and offer beginners the solid, practical advice that they need. It’s free; do whatever you like with it (except for copying it entirely to another URL).
Wow. This morning I launched a donations drive that was supposed to net me € 2,500 in, hopefully, a month or two or so. At least that’s what my “sensible” average projection was. Instead, it netted me € 3,200 in about six hours, and donations are still coming in.
Thanks, all. Awesome. Humbling. Scary, even, in a sort of way. I mean, I have to be extra good and stuff to repay you all.
I have no idea if this is going to work. I’ve never tried it before. But if I never try I’ll never know, so here it goes. And I’ll give you fair warning: there’s a blackmail aspect to all of this.
<breath type="big" />
I’m seeking to raise € 2,500 in donations. Before the end of this year.
Update: the donation drive succeeded before the end of the afternoon. Still, I’d love to receive more donations. They will be used to improve this site. Thanks.
Last week I updated the Mobile WebKit comparison table with four browsers: Safari 4,2 (on iPad), Android 3 (on Samsung and Motorola tablets), the BlackBerry PlayBook browser, and the WeTab browser.
The WhatTab? The WeTab. You probably haven’t heard of it, unless you’re in Germany. Bear with me.
Last week we treated the mobile browser stats of six countries; this week we take a look at the other six countries; the ones where the mobile web is not yet very big. There are few common denominators here; mobile browsing statistics remain highly localised.
It’s past time we took a look at the Q1 mobile browser market shares in the twelve countries I selected back in January. Although there are no huge movements towards or away from certain browsers, a few trends we saw in the Q4 2010 figures continue, and a few new trends may be taking off.
Here are the mobile browser statistics according to StatCounter for April 2011 as well as Q1 2011. Little change; boring entry.
Below you find the mobile browser stats for March 2011. The market is still quiescent; very little change from February. Safari lost two points; the Other category gained two.
Samsung now has two major operating systems for the smartphone market: Android and its own bada. (We can ignore Windows for now.) Very cleverly, it is stealing the spotlights with its Android devices, while steadily building bada in the background, creating a developer ecosystem and upgrading the OS until it can somewhat compete with iOS and Android.
The reason for this dual strategy is that Samsung does not want to be beholden to Google for its OS. A strong bada will allow Samsung to discontinue Android in the future, and stake everything on its own OS where it owns the entire stack, from hardware to app store. It’s not certain that Samsung will in fact do this, but it wants to keep its options open.
On Monday and Tuesday I did some heavy-duty research into the new HTML5 input types and attributes, and I published a desktop and a mobile compatibility table.
Let’s start with some good news. The readonly
attribute, which makes a form field read-only, is supported by all browsers, both mobile and desktop. Even IE9. Cool, huh?
The rest of the input story is worse. Much worse. Let’s put it like this: Obigo WebKit, a browser nobody but me has ever heard of, outperforms iPhone and Android.
Here are the global mobile browser stats for February 2011, taken from StatCounter. Little is happening; it seems the browser market is taking a few months off after the huge changes of the second half of 2010.
Nokia and Android are one point up; Safari and BlackBerry one point down. Android and BlackBerry continue their trends, Nokia and Safari don’t. That’s it.
After discussing vendor sales market shares last week we’ll turn to operating systems today. They are more important to developers than device vendors, since the OS dictates which browsers can run on the device.
Nobody will be particularly surprised to hear that Android is 2010’s big winner, with iOS and newcomers bada and Windows Phone 7 winning modest amounts of market share. The losers are Symbian, BlackBerry, Windows Mobile, and the other OSs.
After having discussed mobile browser traffic share statistics for weeks, it’s time to look at the other side of the medal: smartphone sales market shares. This entry gives the device vendor stats for 2010, the next one will discuss OS stats.
In 2010 298 million smartphones were sold worldwide, up from 175 million in 2009, for a growth rate of 70%. Biggest growers were the Android suppliers (Samsung and HTC especially), as well as Apple. Nokia and RIM lost heavily: they grew only a sluggish 47 and 30%, respectively.
Yesterday I received a Palm Pre 2, which, after some initial difficulties, I got to work. I combined it with the HTC Smart that I had received earlier, made sure the latest updates to Opera Mobile and Firefox were installed on my trusty Nexus One, and did some testing.
Just today I received a shiny new Palm Pre 2. Now Palm WebKit is notoriously underrepresented in my mobile research because up until now I didn’t have a device (except for a short and unhappy period in early 2010). Besides, webOS is the only OS that can give iOS a run for its money UX-wise. Reason enough to study it carefully.
Before being allowed to actually use the phone, though, I had to go through a user sign-up process that’s so amazingly hostile that I decided to record my adventures in the faint hope that someone at Palm will read it and make changes.
Here are the global mobile browser market share stats for January 2011; as usual provided by StatCounter. I publish these stats every month, but the local stats from twelve selected countries only every quarter.
A few more thoughts on Nokisoft.
OK, so the deal is done. Nokia partners with Microsoft and trades in MeeGo for Windows Phone 7, I failed my test as a mobile analyst, and 2011 will make 2010 look like child’s play when it comes to disruption. Here’s a quick reaction to those aspects I find most interesting. No claim to completeness here.
For web developers this is bad news. Windows Phone 7 has the worst default browser of all modern smartphone OSs: IE7 (though, in fairness, Microsoft is working on an IE9 port). MeeGo was supposed to have a Gecko-based default browser, just as its precursor Maemo did.
This Friday Nokia will hold a strategy and financial briefing in London, with major announcements about operating systems being expected. This will impact the mobile browser market, so it’s important to web developers. A bit of background is in order.
We close off our survey of the mobile browser market shares of twelve countries: Brazil, China, Egypt, India, Indonesia, Mexico, the Netherlands, Nigeria, Poland, South Korea, the UK, and the US. In all countries I studied the Q4 2010 aggregate stats and compared them to the Q3 ones.
In part 1 we studied three developing nations that each had Opera as their leading browser; in part 2 we discussed the US, the UK, and South Korea. Part 3 took a look at South America and China.
In this final entry we’ll study the Netherlands, the only market where Safari has an absolute majority, and two more Opera/Nokia markets: Egypt and Poland. We close off with an overview table.
Two factual errors, one serious critique and a bunch of new facts and figures about operator billing.
We continue our survey of the mobile browser market shares of twelve countries: Brazil, China, Egypt, India, Indonesia, Mexico, the Netherlands, Nigeria, Poland, South Korea, the UK, and the US. In all countries I studied the Q4 2010 aggregate stats and compared them to the Q3 ones.
In part 1 we studied three developing nations that each had Opera as their leading browser; in part 2 we discussed the US and the UK, which feature a three-way race between Safari, BlackBerry, and Android, and South Korea, where Android (more specifically, homegrown Samsung Galaxy) is dominant.
This entry treats Brazil, Mexico, and China. Figures, as usual, come from StatCounter.
It’s said that Twitter and Facebook play an important role in the current Egyptian revolution, and that closing down the Internet was the best step the beleagured government could take. I don’t believe it.
App stores, pioneered by Apple, aim to provide ease of payments and discoverability to developers and consumers. However,
We continue our survey of the mobile browser market shares of twelve countries: Brazil, China, Egypt, India, Indonesia, Mexico, the Netherlands, Nigeria, Poland, South Korea, the UK, and the US. In all countries I studied the Q4 2010 aggregate stats and compared them to the Q3 ones. At the end of this article are some methodological notes.
Belgium is investigating whether Apple’s recent changes to its subscription policies for newspaper apps are an abuse of its dominant market position. Apple no longer allows newspapers to provide free digital versions to their print subscribers. This could possibly lead to a new antitrust affair.
This story seems to play only in Belgium and the Netherlands for now; readers from other countries may not know it. That’s why I wrote this special report.
Yesterday Horace Dediu tweeted:
A browser is an infinitely flexible interface, but is it the best interface for everything? Apps allow experiments in new interaction models
The browser is not the most advanced interface there is. It’s too easy to build the wrong features into something as flexible as a browser, and once a badly-designed feature gains traction it’s impossible to get rid of it. (See HTML5 drag and drop.)
When I had studied the global browser stats I decided to delve a bit deeper into individual countries, because their stats differ a lot, and looking only at the global picture can distort your viewpoint.
I picked twelve countries around the world that can be (more-or-less) seen as kind-of a representative(ish) stand-in for a certain type of countries. Be warned, however, that every country is unique and that you should study yours straight away.
One of the major changes 2011 is going to bring is the start of operator billing on the web. It will provide a user-friendly way of making mobile (and web) payments without those silly credit cards that are preventing the majority of the world to participate.
Operator billing is nothing new. Premium SMS (see for instance Verizon’s FAQ) , where the user pays something extra to receive news items or ringtones, or vote in a TV show, has existed for ages. The price is automatically charged to your operator account.
The most advanced country on earth when it comes to mobile payments is Kenya. About 50% of the population handles about 20% of GDP by mobile phones these days. The social consequences are profound, and operator Safaricom became the biggest bank in East Africa in the process.
Update: I finally found a good description of the system.
Banks and credit card companies of the world, be very afraid. The operators will come to take your business away.
Here are the mobile browser traffic market share figures from StatCounter. This entry gives the stats for December 2010, Q4 2010, and all of 2010, and compares them to November, Q3, and 2009. I plan to repeat this feature each month, and to report quarterly and yearly figures when appropriate. (Not that you need me; you can easily crunch the data for yourself.)
At the end of December I turned off comments for the QuirksBlog. As far as I’m concerned they’ll stay turned off forever, except when I actually want to ask a question.
I didn’t take this decision, the decision took itself while I looked on musingly. The time has come, and I give up a little bit of good stuff in order to get rid of a serious annoyance as well as comment spam.
App stores, so it is assumed, will allow developers to forge a direct link to consumers, which causes consumers to directly pay developers for their hard work. Thus they’re secretly seen as a shortcut for the hard work of a start-up, that (ideally) also forges such links.
This monetisation argument is the fetish of the current age. Unfortunately it is utter and complete rubbish. The fundamental problem, as I calculated months ago, is that there’s just not enough money in the app store economy to support a meaningful number of independent developers.
29 December 2010
Via John Gruber I stumbled on The Unbearable Inevitability of Being Android, 1995. The article ignores key facts of the mobile market because they don’t fit the point the author wants to make.
People have the right to participate in re-enactments of historical platform wars, but they should not confuse them with reality.
17 December 2010
Permalink
| in BlackBerry, Mobile web dev
8 comments
(closed)
Three news items that have nothing to do with each other, except they caught my eye yesterday and today, and might be of interest to others, too.
14 December 2010
Just now A List Apart published my Smartphone Browser Landscape article. Despite having written for ALA for more than ten years, this is only my fifth or so article. But it’s a nice one.
I started on this article back in July by writing down absolutely everything that web developers had to know about the smartphone market. It was about twice as long as it is now. ALA rejected this draft — and with good reason. It took me from July to October to figure out which bits web developers didn’t have to know right away, and that was a useful process.
Anyway, enjoy the article. No comments here; you’ll have to go to ALA for that.
8 November 2010
Permalink
| in Firefox Mobile, Linkbait, Nokia, webOS
6 comments
(closed)
For those who follow the mobile market:
There’s a ruckus in the Microsoft world following Mary-Jo Foley’s contention that Microsoft is going to abandon Silverlight in favour of HTML5. If that were true it would be great news for web developers. It is in fact not true, but still great news for web developers.
20 October 2010
Permalink
| in Market share
0 comments
(closed)
Last Thursday I blogged about my site’s statistics, and concluded that mentioning a site on Twitter (and possibly other social media) results in a huge upsurge of mobile traffic as a whole, and Safari and Android traffic specifically.
Since StatCounter logs only the last 20,000 page loads on my blog, last week’s hits are being slowly overwritten by new hits. Thus the hits generated by Smashing Magazine’s tweet are disappearing, and a normal usage pattern is re-emerging.
14 October 2010
Permalink
| in Market share
15 comments
(closed)
A week ago I signed up to StatCounter in order to get some statistics about my site’s visitors. The results are interesting, especially the mobile browsers count.
I signed up for a free account in order to test their mobile browser detect, but quickly extended that to a paid subscription for my entire site.
Believe it or not, but I’ve mostly done without statistics in the past ten years, except for a short period in 2008 or so when I used a bad tool that even managed to mess up its own table-based layout. Until last week I had no clue how many people visited my site and with which browsers, but now I’ve rediscovered it’s fun to know.
11 October 2010
Over the past few weeks I’ve had essentially the same conversation with Georgi Petrov from Sofia, Bulgaria; Lea Verou from Athens, Greece; and Marco Cedaro from Bologna, Italy.
All three wanted to do something about front-end in their own town, but all three seemed to think there was some kind of black magic involved in getting well-known speakers to your conference or even getting together a few people to talk about geeky stuff.
So it’s time to talk about organising front-end meetings or conferences and how black magic is not necessary.
Ewan MacLeod is spot on:
It’s important to recognise that whilst most of the Western media reckons Nokia is completely screwed, this is also not the case.
The company continues to ship a million handsets a day (or thereabouts) and each one of those devices contributes a tiny bit of profit along with a heck of a lot of cash throughput that keeps bankers smiling very, very widely.
Believe it or not, folk actually queued for the N8. Just not in San Francisco or London. So it might as well not have happened as far as the West is concerned.
Sadly the reality is that ... well ... perception is reality. It’s 0% reality and 100% perception in the case of Nokia from the point of view of the West.
22 September 2010
Recently Mike Rowehl, a mobile developer with relatively little knowledge of the web world, confessed to being baffled by the attitude of web developers interested in mobile.
This is the last part of my reply. In parts one and two we talked about what web developers are doing wrong; now we’re going to talk about the errors of the mobile world.
21 September 2010
Recently Mike Rowehl, a mobile developer with relatively little knowledge of the web world, confessed to being baffled by the attitude of web developers interested in mobile.
This is part two of my reply, and we’re going to talk about progressive enhancement now. (See also part one)
Like me, Mike was impressed by Bryan Rieger’s excellent presentation in which progressive enhancement plays a crucial role. However, it’s important to realise that Bryan’s presentation is the start of the dicsussion, and not the end. Lots of work remains to be done.
20 September 2010
Recently Mike Rowehl, a mobile developer with relatively little knowledge of the web world, confessed to being baffled by the attitude of web developers interested in mobile.
He feels there’s a disconnect between what web developers do, what they’re supposed to be doing, and the tools mobile vendors make available to them.
Mike is completely right. There is a whole series of disconnects right now in mobile web development, and most of them are the web developers’ fault. Unfortunately the web world is hard to understand for an interested outsider.
John Gruber picked up my Nokia post, and makes an interesting comment.
After quoting my “Why on earth wouldn’t Nokia be able to maintain two operating systems?” he says:
I shouldn’t have written “mobile devices”; I should have written “smartphones.”
To me, that doesn’t make any difference. I count both MeeGo and Symbian as smartphone operating systems, so if John had written “smartphones” I would have made exactly the same comment.
That doesn’t mean John’s wrong, though. He just defines smartphones differently than I do. As I see it, he defines a “smartphone” as what I call a “high-end smartphone” (iOS, Android, MeeGo, webOS, likely Windows Phone 7 and BlackBerry OS6, too).
Last week Nokia CEO Olli-Pekka Kallasvuo (OPK for short) was replaced by the first non-Finn to lead the company, Stephen Elop, head of Microsoft’s business division (mainly Office). This is big news that might change Nokia’s perception as well as its strategy.
OPK’s tenure as Nokia chief was not lucky. Barely in office he was confronted with the launch of the iPhone, and this issue overshadowed the rest of his career. For the full story of OPK, see, as always, Tomi Ahonen.
After four years of doing little except producing one of the worst touchscreen phones in history, the N97, Nokia was perceived as a loser, and pressure on OPK to resign was growing. Last Friday things came to a head when Elop’s anointment as his successor was announced.
(This article has been translated into Spanish.)
A truly outstanding presentation by Bryan Rieger. Learn it by heart.
3 September 2010
Permalink
| in Mobile testing
4 comments
(closed)
Yesterday I was visited by a browser tester’s worst nightmare: when testing BlackBerry WebKit I found I made a mistake in my touch event research. I have to re-do all these tests in all browsers because my current results don’t take one variable into account.
That variable is preventing the event default. While writing my test page I left out the return false
at the end of the test event handler, simply because I didn’t think of including it. The test results seemed fine, so I didn’t notice the mistake for months and months. (Meanwhile I added a setting for preventing the default.)
Over the weekend I created a mobile market overview in the form of a sortable table. I hope it gives you some insights; it certainly did for me.
For a complete overview knowledge of the current market share stats is necessary; fortunately Tomi Ahonen provides the latest. My table doesn’t yet contains these stats; I still have to figure out exactly how to display them (not to mention making time to implement a new feature).
Anyway, take a look and let me know what you think. And if you have some extra facts, please provide them.
I have updated the mobile browser page. It now contains 18 browsers, and in addition I added some lists about which browser runs on which OS, and which device vendor uses which OS. However, I need your help in making the list exhaustive.
I have now firmly decided to test and describe only those browsers that run on one or more of the ten smartphone OSs (Android, bada, BlackBerry, iOS, LiMo, MeeGo, Phone 7, Symbian, webOS, Windows Mobile). There are just too many other OSs, but they’re either feature phone only, or they’ve fallen out of the race.
My question to you is to review the list and rack your brain for more data.
If you do, please leave a comment with a useful link (to the browser vendor’s homepage, or to a news item that mentions device vendor A selling smartphone OS B).
Thanks.
14 August 2010
jQuery announced the jQuery mobile project, which aims at bringing jQuery to mobile browsers. All mobile browsers; not just Safari iPhone and Android WebKit.
Months ago I concluded that “HTML5” means whatever you want it to mean. This week, Jeffrey Zeldman and Jeff Croft took up the discussion, with Tantek Çelik and Bruce Lawson commenting.
Here are four interesting mobile articles that caught my eye in the past 24 hours:
In the mobile browser space all the advanced browsers are based on WebKit. That’s fine — WebKit is an excellent rendering engine — but if all browsers were based on WebKit I would start to worry about a monoculture. At least some browsers should be based on other rendering engines, as far as I’m concerned.
The only serious mobile candidate for “other rendering engine” is Opera. But I’m starting to wonder whether it can keep up with the WebKit browsers. With the recent release of Samsung Dolfin Opera Mobile has firmly dropped from third-best to fourth-best mobile browser on my list.
The problem is not that Opera isn’t innovating. It is. But I’m starting to wonder about the direction that innovation is taking.
This is just in: Google seems to be taking steps to allow operator billing. If that’s true it’s huge news.
Note from the outset that the article doesn’t say in so many words that operator billing is coming, although it certainly gives that impression, and plenty of publications translate it as such.
The basic idea of operator billing is very simple: if you want to buy an app, or access to online content, the price is automatically added to your operator bill (or, I assume, deducted from your pre-paid account).
26 July 2010
Back in early June I got a Samsung Wave that runs the brand-new bada OS and did some brief tests of the native Dolfin browser. In the past few days I’ve done some more extensive testing, and the verdict is in: good browser, well on the way to becoming excellent.
(Oh, and Dolfin ought not to be confused with Dolphin, which is a skin for Android WebKit.)
It’s Samsung’s philosophy that it will not compete in a market unless it belongs to the top three of that market. In the case of the mobile browsing market Samsung has succeeded: from nothing, Dolfin has become the third-best mobile browser in the world. Only iPhone and Android are better.
If you’re keeping track of the mobile browser landscape you should add Dolfin to your A-list. It’s easily good enough, and Samsung has big plans with the bada operating system. Somewhere in 2011 the installed base of Dolfin will pass that of Safari iPhone, and bada might even become a competitor to Android. (Samsung sure hopes so.)
I have updated my mobile pages with Dolfin data. (By the way, I also tested Android 2.2 while I was at it: few changes. There’s not a single difference with 2.1 in my great WebKit table.)
Apple continues to startle me, and I do not mean by its iPhone 4. (I haven’t yet seen it, so I can’t say anything useful about it.) No, what I mean is the ongoing Antennagate problems, and even there I do not mean the actual problem, but Apple’s way of dealing with it. And even there I do not mean Antennagate as an isolated PR incident, but as yet another chapter in how Apple spends 2010 to piss off the world at large.
In recent weeks Firefox 4 beta 1 and Opera 10.60 were released, and I could also put my hands on a working Chrome 4. I added all these browsers to the compatibility tables, which are now all updated, except for the Events one.
Vision Mobile just released its Mobile Developer Economics report in which it presents the result of a poll of 401 mobile developers across the eight main platforms: Android, iPhone, BlackBerry, Symbian, Windows Mobile, Flash, Java ME, and the mobile web.
If you’re interested in the mobile developer world, download and read the report. It’s free, though a valid email address is required. Below I treat some interesting aspects of the research, including the quote from me Vision Mobile decided to publish.
29 June 2010
Well, I’ve revised the DOM CSS and the DOM CSS OM tables, too, and IE9 continues its march. It supports the standards!
28 June 2010
In the past few days I’ve been revising the CSS compatibility table with information about the latest crop of browsers. There’s no doubt about it: this is IE9’s show. It just supports nearly everything. No hassle, no buts.
Besides, CSS3 selectors are now fully supported by all browsers but one. And that one browser is not IE. It’s, curiously, Opera.
24 June 2010
I just finished my CSS3 background tests, and I’m happy to report that all browsers but one now support the module very well. Also, I’m pleased to report that all browser vendors but one have ditched the vendor prefixes and now support the pure, correct CSS3 properties.
All browsers but one. If you guess that that one browser is IE, you’ve guessed wrong. It’s Firefox.
I have updated the WebKit comparison table with data from Safari 5, Chrome 5, and Android 2.1. Improvements throughout!
On Thursday I got a Samsung bada test phone (the Wave) that runs the latest installment of Samsung WebKit, and of course I subjected it to various tests. The verdict is clear: excellent browser. As far as I’m concerned it ousts Opera Mobile from my personal top three.
Back in November I started complicated research into measuring the widths and heights of various interesting elements in mobile browsers. This research kept me occupied for months and months; and frankly I became a bit afraid of it because the subject is so complicated.
Besides, when I re-did some tests in March I pretty quickly figured out I’d made some nasty mistakes in my original tests. Back to the drawing board.
However, after a review round by some browser vendors and some rewriting it’s done now.
Today I present
A tale of two viewports — part one.
I explain CSS vs. device pixels, the viewport, several interesting JavaScript properties,
and the media queries width
and device-width
.
This piece is about the desktop browsers, because the mobile story is much easier to follow if you know exactly what happens on desktop. Later on I’ll publish part two, which is exclusively about mobile.
A while ago I asked what HTML5 means to you. I got a lot of replies, but would like to gather more. That’s why I’m repeating the question today. What’s in your HTML5 spec? Please add your personal top three of cool new features to the comments.
The acquisition battle has come and gone, and it’s HP that’s become Palm’s new owner. In general this news has been greeted with glad cries, despite (or maybe because) it was so unexpected. In general everybody assumes that the marriage of Palm software and HP hardware will be a good one, and that HP will also release a webOS-based tablet device.
However, there’s an interesting dissenting opinion on VisionMobile (a blog I highly recommend, by the way). Guest author Michael Valukenko sees few synergies between Palm and HP, and pinpoints three problems besetting the new hPalm combination:
Yesterday John Gruber wrote about the upped pixel density in the upcoming iPhone (960x640 instead of 480x320), and why Apple did this. He also wondered what the consequences for web developers would be.
Now I happen to be deeply engaged in cross-browser research of widths and heights on mobile phones, and can state with reasonable certainty that in 99% of the cases these changes will not impact web developers at all.
14 April 2010
Permalink
| in Apple, Microsoft, Nokia, webOS
1 comments
(closed)
Some updates on a few developing stories in the mobile space.
This is just in: HTC is said to be considering taking over Palm. That would be an interesting development, since HTC is one of the few parties we can trust not messing up webOS but actually using it as it’s supposed to work.
Palm has an absolutely first-rate product in webOS, especially its user interface. As far as I’m concerned the Palm Pre is the only phone that’s (almost?) on a par with the iPhone when it comes to UI, although the system is completely different (and has supported multitasking from the start, not partially and as an “exciting” novelty).
8 April 2010
Permalink
| in Mobile testing
19 comments
(closed)
I have made a list of the fifteen mobile browsers I currently test. This will give you some insight in the current mobile browser market, which is volatile, complicated, and sometimes shrouded in mystery.
One of the commonest questions I get is “Which mobile browsers should I test?” The hidden question here is which devices you should own. It’s time to attempt an answer.
Cameron Moll is worried about a future in which we’ll all write Objective-C for the iPhone OS instead of writing web standards for the mobile web.
At one point in time, J2ME (now Java ME) and WAP were the starting points for a discussion on mobile strategy and the web. Then, for a brief period of time, you talked about HTML/CSS. Now, for a growing majority of mobile strategies that don’t require a global presence on widely varying devices, the discussion begins with iPhone.
Emphasis mine. Strategy and presence are the clue, and they’re the reasons I think the situation will not be quite as bad as Cameron fears.
2 April 2010
Permalink
| in BlackBerry
9 comments
(closed)
An interesting study caught my eye. When taken at face value, it proves that in order to really make money with apps you have to switch to the BlackBerry platform.
30 March 2010
Permalink
| in Apple, Google, Market share
10 comments
(closed)
AdMob, the mobile advertiser that was bought by Google some months ago, has released its latest market share figures for the mobile browsers.
Their main findings have already been discussed extensively:
The AdMob report, however, is not about browser market share but about ad impressions. And that may matter a lot. Unfortunately we don’t know how much it matters.
In response to my HTML5 apps argument a few people came back to how the payment thingy is missing from my idea, and how it will (apparently) be worthless because of that. I’ve been thinking about that a lot in the past few days, and I’m increasingly of the opinion that the payment argument is nonsense.
Sure, everybody who does iPhone apps, or who’s glancing cursorily at the mobile market without trying to gain in-depth knowledge, currently believes that the App Store concept is going to be a huge success because of the opportunity for developers to earn some money. But they’re just wrong.
I did some back-of-napkin calculations and found that, macro-economically speaking, iPhone app development costs money right now. And yes, an individual developer can strike it rich, but that’s getting rarer and rarer. I do not want to build a new app ecosystem based on arguments from developers who just want to take a gamble in the App Store roulette. Gamblers’ arguments are not real arguments.
Right now nobody’s interested in a mobile solution that does not contain the words “iPhone” and “app” and that is not submitted to a closed environment where it competes with approximately 2,437 similar mobile solutions.
Compared to the current crop of mobile clients and developers, lemmings marching off a cliff follow a solid, sensible strategy. Startling them out of this obsession requires nothing short of a new buzzword.
Therefore I’d like to re-brand standards-based mobile websites and applications, definitely including W3C Widgets, as “HTML5 apps.” People outside our little technical circle are already aware of the existence of HTML5, and I don’t think it needs much of an effort to elevate it to full buzzwordiness.
Technically, HTML5 apps would encompass all websites as well as all the myriads of (usually locally installed) web-standards-based application systems on mobile. The guiding principle would be to write and maintain one single core application that uses web standards, as well as a mechanism that deploys that core application across a wide range of platforms.
22 February 2010
I have decided to follow Dutch politics a bit more openly and to blog about it. Still, I don’t want to force this content on people that are just interested in web development. According to my own calculations the number of non-Dutch readers that are interested in Dutch politics is about twelve, so for those twelve, as well as the more sizable group of Dutch followers interested in politics, I’ve now created a politics homepage and blog.
Swept away by the literally two requests from non-Dutch readers, I’ve also decided to publish my political primer, which will ideally consist of eleven long background articles, of which only the first eight are written. I will publish one article every Wednesday until I run out of material.
Here on the main QuirksBlog I may write some stuff about the JavaScript graph functions I
created for the primer
(parliament graphs,
tables). Unfortunately, right now any JavaScript-focused article would mainly
consist of a long list of features I haven’t implemented yet. Most of the graphs aren’t
really keyboard-accessible, for instance, because I’m not happy with the idea of adding
dozens of useless <a>
elements just to make parts of the graphs keyboard-focusable.
All in all I’m hurrying to catch up with events. I hadn’t planned to publish any of this, but the government crisis has forced my hands. Please excuse the occasional wart or bug.
20 February 2010
As long-time visitors know I occasionally talk about Dutch politics here for the benefit of my Dutch readers as well as those twelve foreign readers that are interested in these matters. Since Dutch government fell late yesterday night, it’s time for another such post.
The Balkenende IV government (i.e. the fourth government that Balkenende (CDA) was prime minister of) was formed three years ago and consists of centre-right CDA (christian-democrats), centre-left PvdA (Labour), and orthodox-protestant left-leaning CU (Union of Christians). Yesterday evening the PvdA ministers resigned over a conflict about the continuing Dutch military presence in the Afghan province of Uruzgan.
In a week and a half local elections will be held, and the PvdA was slated to lose a lot of seats everywhere. PvdA party leader and finance minister Bos clearly hopes to stem the electoral tide by his resignation, and he might well be right.
Update: This will be the last political entry on the main QuirksBlog. I now have a separate politics section with a blog as well as an article series about Dutch political history.
18 February 2010
Permalink
| in BlackBerry, Google, HTML5 apps, Mobile, Nokia, Opera Mobile/Mini, Samsung
8 comments
(closed)
Yesterday evening I returned from my fourth foreign trip this year. This time I went to the Mobile World Congress, the annual Barcelona-based get-together of the mobile industry, and I can tell you, it’s something else.
This post gives an overview of announcements by mobile players that might be of interest to web developers. There’s an incredible lot of it, too, because every single major mobile player except Apple feels that MWC is the ultimate forum for major announcements.
If you know of more news, or have links to additional information, please leave a comment.
I was there because Vodafone had invited me to sit on a
panel in a technical “embedded
conference” about W3C Widgets and related technologies.
The concept can use some fine-tuning; I’m hoping to do some of that in the future.
I was there mainly to stress that the mobile browser situation is not as simple as it looks. THERE
IS NO WEBKIT ON MOBILE!
While I was at it I also invented guerilla browser testing.
Since my attempts at capturing web developers’ hearts and minds by publishing fundamental research have failed miserably but my thirst for attention continues unabated, today I will once more shout at iPhone developers. That’s proven to work.
More specifically, today I will shout at web developers who think that delicately inserting an iPhone up their ass is the same as mobile web development.
Before we start, a little thought experiment. Suppose I proposed the following:
Would you agree with those sentiments, even if we’re back in 2000 and IE6 is really the best browser we have?
Or would you reply that our sites should work as well as they can in all browsers through the use of web standards, progressive enhancement, and all the rest of the best practices we’ve been preaching for the past ten years?
I distinctly remember a time when we web developers cared about such concepts. But those times are long gone.
Well, a new year has started, and it’s tradition to give an overview of where you’re standing. So here’s mine.
As longtime readers may remember, I was totally burned out at the end of both 2007 and 2008. I’m happy to report that that trend has been broken; although I was glad to have a little holiday at the end of 2009, I returned to work without noticeable problems. So that’s good.
However, I have decided that certain aspects of my professional life are in need of a change; notably my public speaking and my compatibility tables.
Last Friday I found evidence for increasing confusion about what the HTML5 spec actually is. I don’t have any doubts on that score: HTML5 is anything you want it to be as long as it’s new and cool.
B. is an old friend of mine who owns an old Nokia. And when I say old, I mean really old. It was released somewhere in 2000 or so (the Nokia, not the friendship). It’s not a smartphone, to put it mildly, and B. does not use the mobile Web.
Yet.
Pretty soon, however, B. is going to spend a few months in the outlying parts of Indonesia, and during that time he has to be able to access his business bank account. He was wondering if a modern mobile phone would fit this use case, and, if so, which one.
When he told me all that I whipped out my iPhone. “Something like this, you mean?” He was suitably impressed, and when I told him I regularly have six to twelve phones lying around on my desk he practically begged for an opportunity to come by and try them all in order decide what kind of phone he wants.
That was of course fine by me. User testing is never to be despised, and since B. is not technical and has no experience with touchscreens to speak of, he is the perfect test subject.
Last week we held our session, and this entry is the report.
Tested phones: Nokia N97, Samsung M1, HTC Touch Pro (Windows Mobile), SonyEricsson W960i, Nokia E71, BlackBerry 9500, HTC Pioneer (Android), LG M900, Nokia N900, iPhone.
25 November 2009
I have several more things to say in the Web apps vs. native apps debate, and I’ve decided that a few smaller posts treating just one subject would be the best form. Today we kick off with the Cocoa Touch framework.
John Gruber wants me to mention the Cocoa Touch framework. He feels that its excellence is an important factor in the success of native iPhone apps.
Point is, although Gruber’s probably right, he ought to be wrong.
Well, that was an interesting ride. Besides passionate agreements, my previous post also elicited passionate disagreements.
My post could be construed as a rant. Hell, parts of it were a rant. (Nobody said this blogging stuff is easy, especially when you’re passionate about something. But if I can’t speak my mind here, what’s the point of having a blog?)
Several people I respect a lot said that I’d made a stupid mistake and was just plain wrong. After some thought I decided they are right.
I was wrong about Web apps being able to replace native apps right now. I was wrong about the iPhone developers’ mindset. They aren’t stupid.
23 November 2009
Permalink
| in Apple, HTML5 apps
110 comments
(closed)
In his “Apple’s mistake” essay Paul Graham makes an unwarranted assumption; an assumption everybody who’s currently involved in the Great App Store Debate seems to be making.
The fundamental problem on the iPhone is not Apple’s App Store approval policies, but the iPhone developers’ arrogant disdain for Web technologies.
It was only last Friday I told a roomful of Web developers that Apple is evil, and a spontaneous applause erupted. Since then, however, I have changed my mind completely. The Web developers and I were wrong.
Apple is not evil. iPhone developers are stupid. Their problems with the App Store approval process are entirely their own fault and they deserve no commiseration.
I hope the App Store approval process sticks around for a loooooooong time.
Update: I was wrong about Web apps being able to replace native apps right now. I was wrong about the iPhone developers’ mindset. They aren’t stupid. Read my follow-up post.
13 October 2009
Permalink
| in Apple, Chrome, Google, Safari, Samsung
12 comments
(closed)
When I reviewed the reactions to my There is no WebKit on Mobile post, it became pretty clear that few had expected its conclusion that there is no single WebKit on Mobile. Overall, it seemed that most people were pretty surprised, and hurried to revise their ideas of the mobile browser market. That was the point of the article, so I was happy.
The most-often heard criticism was that I was unclear about the browser version numbers. That’s true, and I have updated the table to include them. I also split out the tests into Acid, CSS2, CSS3, HTML5, and JavaScript, and calculated separate scores for each browser. The results are interesting for some browsers. Konqueror sucks at JS but is very good in CSS, while Android is exactly the opposite. Interesting data.
(I’m still tinkering with the interface, by the way, and I didn’t have the time to finish my current revision. So the coloured bars are temporarily gone, but they’ll return in the future.)
7 October 2009
Permalink
| in Apple, Chrome, Google, Mobile, Safari, Samsung
32 comments
(closed)
Last week I spent a lot of time on WebKit in order to produce a comprehensive comparison of all WebKits. My purpose was to prove there is no “WebKit on Mobile,” and to gain some more insight in the complicated relations between the various WebKits.
Therefore I now present the Great WebKit Comparison Table. In it I compare 19 different WebKits on 27 tests.
Having tested mobile phones for the last seven months or so, I have become pretty well inured to odd, or even disastrous, results. Still, after encountering the following bug on the Android, even I started to doubt my sanity.
I don’t usually spend a blog post on a single browser bug, but this time I break that rule because this is doubtlessly the weirdest bug I found so far, and possibly also the most serious one.
CSS width
may be unreliable on the Android — in certain situations.
After spending about a day and a half in testing I am forced to conclude that the HTML5 drag and drop module is not just a disaster, it’s a fucking disaster.
The module should be removed from the HTML5 specification straight away, and conforming browsers should disable it at their earliest opportunity pending a complete rewrite from the ground up.
Web developers MUST NOT (in the sense of RFC 2119) use HTML 5 drag and drop. They should use old-school scripts instead.
Before we continue I’d like to say that in general I thoroughly approve of the HTML5 specification. Exactly because the spec has such an overall quality I was so surprised (and, frankly, a bit confused and hurt) to find drag and drop a steaming pile of bovine manure.
In fact, it’s so outrageously bad that I’ve gone on strike. I refuse to do any more research on drag and drop. Go do it yourself. Or don’t bother. Whatever. I don’t care.
What follows is a rant laced with profanity. No apologies. Drag and drop deserves no better.
14 September 2009
Permalink
| in Mobile testing
18 comments
(closed)
After seven months of mobile testing (as well as a wealth of inventive invective aimed at mobile devices) I think it’s time to share some of my experiences with others who are inclined to violent self-punishment.
Welcome to my world! Bring your whip, bring a first-aid kit, and let’s have some fun punishing ourselves.
Today we’ll discuss the process of testing mobile browsers. We will not talk about the test results or their interpretation, we’ll leave that gorefest for another time.
As everybody who’s even slightly interested in mobile knows, the creation of the Apple App Store has caused a perfect flurry of activity among everybody else having to do with the mobile web.
Currently I’m making a list of all existing app stores. I’ve found a few, but I’m reasonably certain that I missed a few, too. So I’d like to ask you if you know of an app store I’ve forgotten. I’m especially looking for information on T-Mobile and HTC.
When I was in San Francisco back in April it didn’t take long for me to get introduced to the most popular social game in town: how will Twitter make money? I played the game in three or four different groups, made some obvious beginner’s mistakes, and had fun.
Unfortunately for those still playing the game I think I solved the problem. I now know how Twitter should make money. Judge for yourself.
17 August 2009
Permalink
| in Browser testing
25 comments
(closed)
A few weeks back I did some DOM speed tests on mobile browsers (results forthcoming). The most important result of these tests is not the actual values (although they’re interesting), but the fact that I could finally prove a theory that I’ve had in the back of my mind for at least two years now.
Basically, when setting up a speed test you should be very careful to allow the browser to render the result on screen before you close the test by reading out the second timestamp.
I have started an HTML5 compatibility table today. For now it only contains a test of HTML5 Storage in all desktop browsers, and a short report is in order. I also retested the DOM HTML; no changes.
Last week I’ve done the DOM Core tests in new browsers: IE8 final (in both IE8 and IE7 mode), Firefox 3.5b4, Safari 4.0, Chrome 1 and 2, and Opera 10a. I found no surprises.
After that I decided to continue with mobile browsers, of which I have 15 lying around on my desk. Unfortunately I could not test IE Mobile (old) because it supports only inline event handlers, Skyfire because it does not allow you to remove alerts, and the Opera runtime in the Vodafone widget manager for terrifyingly complicated reasons I still have to describe properly.
Still I managed to test the other twelve and found a few surprises.
In his recent Feature testing CSS properties entry, Juriy Zaytsev (Kangax) discusses the possibility of detecting CSS support by means of JavaScript. Although he rightly points out that this method has its drawbacks, as far as I’m concerned he doesn’t go far enough.
This sort of testing should not be used at all. Ever. The methodology is plain wrong. Browser compatibility tests are to be done by hand. Any automated system is useless, because it will give false information.
As I said before, I’m currently working for Vodafone on mobile browser compatibility and W3C Widgets. I’ve discussed some mobile browser problems, and you can look over my shoulder while I’m at work dissecting their odd behaviours. If you want the latest scoops on my mobile adventures, you can follow me on Twitter.
The time has come to talk about the W3C Widgets part of my job. Exactly what is a widget, how do you create one, why would you want to, and which systems support them?
Personally I firmly believe that widgets are the future of the mobile web. They are easy to create, they’re based on open standards, they save the end user quite a bit of network traffic, and many people around the world already know how to create them.
In contrast to other recent publications about widgets, I’ll tell you the whole story — or rather, a condensed version thereof.
13 April 2009
Permalink
| in Conferences, Site
6 comments
(closed)
I’m pleased to announce that Google has graciously agreed to sponsor my work on my compatibility tables. We’ve entered an agreement for this year; after that we’ll see what happens.
Therefore, if you go to the compatibility tables now, you’ll see a tasteful little sponsor bar at the bottom of every page with a well-known logo in it.
The HTML 5 spec introduces the <time>
element to mark up a date or time. Although I support the inclusion of these semantics in HTML, I believe that the current specification of the <time>
element is vague because it avoids the question whether the element is safe for historians. Right now it hurts historical research more than it helps. In this entry I’ll explain why.
Although I will concentrate on the HTML5 syntax here, what I have to say also applies to the microformats datetime design pattern. The Microformats site adds one important detail to the discussion that the HTML5 spec overlooks: the point of having a <time>
element (or a datetime design pattern) at all:
Use the datetime-design-pattern to make datetimes that are human readable also formally machine readable.
Who needs machine readable dates? As far as I can see there are two target audiences for this operation. The first is obviously social applications that have to work with dates, and where it can be useful to compare dates of two different events. An app must be able to see if two events fall on the same day and warn you if they do.
However, as a target audience social applications are immediately followed by historians (or historical, chronological applications). After all, historians are (dare I say it?) historically the most prolific users of dates, until they were upstaged by social applications.
This raises the question whether the <time>
element should be tailored for historical use at all. When I started writing this entry I was convinced that it should.
In keeping with the definition of its purpose I the see the <time>
element as a tool for an Internet-wide chronological search-and-compare system. Such a system will be a boon to historians, who would be allowed to quickly and easily look up events that happened around the same time as the event they’re writing about.
In history, just as in other academic disciplines, serendipitous discoveries are the meat of exciting new theories. A history-compliant use of the <time>
element that allows automatic search and compare would broaden the horizons of historians.
However, now that I’ve reviewed some of the more common problems that have to be solved in order to decrease potential harm, I’m starting to doubt whether the <time>
element can easily be made to fit history.
Right now, though, the specification is a vague compromise that doesn’t make the <time>
element useful for historical research, but still allows it to be used historically.
I feel this ambiguity should be removed. I feel that the specification should clearly state whether the <time>
element is meant for historical use or not. The current vague, implied “No” should be changed to a clear answer. I prefer Yes, but I can live with No.
If the <time>
element should be made safe for historians, there’s quite a bit of work to be done; some of which is discussed in this article. If it should not be made history-safe, we have to add a cut-off date to the specification. Dates before this cut-off date would be ignored.
In the past two months or so I’ve done a lot of compatibility testing, and I thought I’d give you an update.
I’m increasingly posting my real-time raw test results and announcing new versions of tables on Twitter; so if you’re interested in that data you can follow me.
16 March 2009
Permalink
| in Mobile testing
14 comments
(closed)
Since my previous post about mobile browser testing I’ve had four days in Düsseldorf to play with mobile phones, and I’ve once again unearthed quite a few problems that mobile browser testers will encounter. So this post is mostly about how the situation is even more complicated than we thought.
You can look over my shoulder while I’m testing, as far as I’m concerned, as long as you remember that every bit of data is provisional and may change radically without warning.
If you’re interested in real-time raw test results, follow me on Twitter. I regularly post my findings there, and it’s already delivered me some excellent feedback.
In this entry we’ll look at first-line and second-line browsers, mobile support for basic CSS, Opera’s two modes, the failure of @media handheld
, Vodafone “content adaptation,” the Nokia keyCode
problem, and we’ll close off with a few fun browser facts.
The crucial question of the moment is: who asserts supreme control over the way a website looks on a mobile phone? Currently I’m arguing the author should, but Opera and Vodafone assert vendor control, with Opera also giving the user a modicum of control.
6 March 2009
Permalink
| in Mobile testing
23 comments
(closed)
About a month ago the software department of Vodafone Internet Services, based in Düsseldorf, Germany, asked for my help in creating mobile widgets according to the W3C Widgets specification. In particular, they’d noticed there are differences between browsers even on mobile phones (imagine my surprise), and decided they needed advice from a specialist (that would be me).
Better still, it quickly turned out that they were willing to pay me for doing serious mobile browser compatibility tests and publishing them on this site. The payment thingy is quite unusual, I can tell you (though not entirely unique).
This is easily the best job offer I’ve gotten in my entire freelance career, so I hurried to accept it. Meanwhile I’ve done mobile tests for five days; enough to offer some guidance for setting up a doctrine for mobile browser testing.
As far as I’m concerned you can look over my shoulder while I’m working, but please PLEASE remember that everything I say may change radically without notice after I’ve tested the same browsers on other devices.
Right now I’ve only done a few tests of functionality that’s basic to the mobile experience, and even these basic tests will likely have to be expanded. Besides, right now getting a general feeling for mobile testing and its manifold problems is more important than running lots and lots of tests.
Almost exactly eight years ago, Jeffrey Zeldman wrote To Hell With Bad Browsers, in which he implored web developers to start ignoring Netscape 4 because its standard support sucked majorly. Yesterday several large Norwegian sites placed a warning against IE6 on their pages.
Web developers from all over the world are following this initiative with interest. To Hell With Bad Browsers is obviously in for a remake.
Just now I added an IE6 warning to QuirksMode.org (not that my visitors need any; this site probably has the most browser-savvy audience in the world). I also wrote an upgrade page that attempts to explain the problem and its solution to end users.
3 February 2009
Permalink
| in Browser Wars, Chrome, Content, IE, Safari
35 comments
(closed)
There’s some browser news to discuss, and I thought I’d bundle it all in one entry. Maybe I’ll even do this more often; it seems a good feature for this blog. But I’m not promising anything!
This weekend I started testing some new browsers, and meanwhile I’ve updated the HTML and CSS tables. There were no surprises. I’m continuing with the Events tables, but they’re so large and sometimes so complicated that I’m not sure when I’ll finish.
In this installment we’ll take a look at IE8RC1 and some reactions to it, Safari 3.2, Chrome’s lack of a “Check for updates automatically” feature and Opera’s antitrust complaint.
I’ve updated the CSS Compatibility Table as the first step in a complete update of all Tables. Frankly, this was one of the more boring updates I’ve ever done.
I tested four browsers:
All in all a meager result for many hours of work. I suppose I should be extatic about how little browsers do wrong these days, but it makes my work considerably more boring.
Further updates are planned, but I’m not going to give a specific timeline for them; we’ll see how it goes.
1 August 2008
Permalink
| in Apple, Coding techniques, Content, Touch events
14 comments
(closed)
Yesterday I walked into the local phone store because the “Temporarily Unavailable” sign had been removed from their “Get your iPhone here” poster. To my utter surprise they had six (6!) entire iPhones for sale, and no, there was no waiting list. I walked back home with a shiny new gadget, impatient to start testing it.
Meanwhile I’ve done some tests; now it’s time for a report.
Before we continue, let’s get the bad CSS news out of the way: Safari on the iPhone does not support position: fixed
. Certain Other Browsers were ridiculed for this lack; Safari won’t be.
I’ve updated the CSS Table, the Core Table and the Events Table. In this entry I’m going to talk about JavaScript events on the iPhone. They’re — interesting.
29 June 2008
Permalink
| in Conferences, Society
9 comments
(closed)
In this entry I give some impressions of AEA Boston, as well as an attempt to compare the current web dev world with the old potlatch system.
This is worth a formal note: getElementsByClassName()
is now natively supported by the most recent versions of Firefox, Safari, and Opera. I added it to the compatibility tables. Obviously, as long as Certain Other Browsers do not support it we can't yet really use it everywhere, but it's a ray of hope.
And you wrote your custom getElementsByClassName()
function to keep an eye on native implementations, didn't you?
function getElementsByClassName(node,classname) { if (node.getElementsByClassName) return node.getElementsByClassName(classname); else { // your custom function } }
Somewhere near the end of February I started working on my site again as a sort of therapy to get over my burn-out. I focused on the compatibility tables, which were in desperate need of an update; I hadn't published any major new versions since 2005. Besides, new browser versions are proliferating all over the place and people need to know what these browsers can and can’t do.
Today I can finally unveil my most ambitious update: the Events compatibility tables. All in all I think I spent two weeks’ of work on them; testing all common events not only in common situations, but also in unusual ones. A quick test of basic browser support for W3C and Microsoft events completed this series of tests.
2 April 2008
Permalink
| in IE, Opera, Safari, Theory
24 comments
(closed)
Currently I'm working on a big revision of the Events Compatibility Tables. And no the new table is not yet online because I'm not ready yet.
Testing event support is really awesomely complicated. I've been working steadily for two weeks now, and I still find new bugs and oddities daily, and twice on Sundays.
In any case, I discovered something remarkable when I studied the mousemove event. It sheds light on the way browser vendors keep track of each other's implementations nowadays, and on things that can go wrong.
Update: The bug described in this entry is an OS problem, and not a browser bug.
Just now I re-tested the CSS Object Model, both to accomodate IE8b1, FF3b4 and Safari 3.1, and because some of my earlier conclusions were wrong.
In the past few days I've worked a bit on my compatibility tables. IE8b1 information has been added to the W3C DOM Core and HTML tables.
Furthermore I've taken the opportunity to present the CSS compatibility table better. I split the page into two tables, CSS 2.1 and CSS 3, and I added a few CSS tests. The table below shows the new tests and their browser compatibility.
Update: Added Safari 3.1 Windows information to the main CSS table only.
Finally, a question. Who knows of CSS 3 declarations that don't yet figure in the CSS table but are supported by at least one browser? (Nightlies don't count, but betas do.) Please leave a comment with declaration name and supporting browser. It'll help me get my testing priorities straight.
3 March 2008
Just now the IE team announced that it's reversing its policy on the default behaviour of IE8, which shows that it has been paying close attention to the discussion of its versioning proposal. I admit that I hadn't expected this reversal, but I welcome it.
A week ago W3C published the first working draft of the W3C CSSOM View specification (written by Anne van Kesteren), and I must say I'm very happy with it. Since I was testing stuff anyway I created a new compatibility table for most of the methods and properties specified in this document, and browser compatibility is already excellent.
That's no coincidence. This specification contains definitions for many properties (and a few methods) that browsers have already been supporting for ages (such as offsetWidth
), and W3C has paid scrupulous attention to the current implementation. No more theorizing into the blue — just check what browsers do and describe it in the specification. Excellent idea.
26 February 2008
Rather to my surprise I started early on QuirksMode's spring cleaning. I removed about 50 pages that hadn't been updated since 2003 or 2004 and contained ancient and crappy scripts, or descriptions of old browser versions that nobody cares about today.
In addition I wrote a simple (but ponderous) script that finds out exactly which pages contain compatibility tables. I lost overview a few years ago, but this script reveals that there are currently 24 compatibility tables on my site. (There used to be 27, but I removed three.)
I just finished updating the W3C DOM CSS compatibility table. With the previous version almost three years old, it was about time. In the past three years, Safari and Opera have started to seriously support the editing of style sheets, and the new table reflects that.
I decided not to study iCab any more. The new version 4 is rumoured to use the WebKit code engine, and a quick test of a few properties showed that this is likely correct. (Unfortunately the iCab site does not actually mention this fact, so I'm still not 100% certain that WebKit is really being used. On the other hand, 95% certainty is enough.)
28 January 2008
Even clinically dead web developers will by now have seen the announcement of IE8's new versioning switch, and many bloggers I read have already reacted—most of them negatively. See the IE page of my linkblog for an overview.
All in all I am in the Yes camp, and in this entry I'd like to offer a few arguments in favour of the current default of the switch. In my opinion, defaulting to IE7 in the absence of a switch is the correct behaviour.
I won't be offering practical arguments, since these are not received too well right now. Instead, I'm hoping to appeal to our collective sense of honour.
23 January 2008
Now that the versioning switch debate is in full swing (see the IE page of my linkblog for a partial overview), I'd like to move attention from lofty goals and aspirations that may or may not be trampled by the new switch to everyday practicalities.
So here's a quiz for you. Please assume that at some point in the future the following will be the case:
22 January 2008
The announcement of IE8's new versioning switch is generating heated debate—and nobody could have expected otherwise. Whether you feel this is a great or a terrible idea, it will change the way we web developers work. I encourage everyone to form his or her own opinion on this matter.
However, there's one point that has to be made right away. Eric Meyer already touched on it in his opinion piece, but repeating it won't hurt.
One argument used by detractors of the new switch is that it's nothing more than a browser detect. This comparison is factually false and it shouldn't be allowed to cloud a debate that promises to be complicated enough even without false arguments.
27 November 2007
The W3C DOM HTML Compatibility table has been updated, too. All in all browser differences are becoming markedly less; we're actually approaching the day on which there will be no (well, OK, few) incompatibilities left.
After more than two years I have resumed working on the DOM Compatibility tables. Just now I finished the Core table, which now includes information for IE 5.5-7, Firefox 2.0, Safari 3.0 Windows, Opera 9.5b, iCab 3.0 and Konqueror 3.5.7 . I removed IE 5.0 and IE Mac because these browsers aren't important any more.
I'm also in the process of creating new test pages which (I hope) will be easier to maintain than the old ones. I uploaded all new Core test pages, but I think that a few of the other tables refer to these, too. So I'm afraid that some test page links will be broken in the other tables; eventually I'll get around to fixing them.
I'm not sure exactly when I'll update the other tables, but I hope to get them finished before the end of this year.
Yesterday I finally got a new Linux machine with Konqueror 3.5.7 installed. (If that is not the latest version, please don't tell me. I don't want to know.) As a result I could finally start updating the compatibility tables, and as usual I started with the CSS ones.
While I was at it I upgraded the information to Firefox 2.0, Opera 9.5b and Safari 3.0 Windows. In general, compatibility has improved slightly.
28 October 2007
Permalink
| in Conferences, Fronteers
6 comments
(closed)
Yesterday morning I returned from my first visit to San Francisco, where I delivered my first real solo presentation at the Voices that Matter: Web Design conference, as well as visiting Yahoo! and wandering around town a bit. All in all it was a wonderful experience.
3 October 2007
Currently I'm working on the HTML of a ministry site, and I encountered one persistent problem that I don't know the "right" answer to: subtitles. Which tag do we use for them? A header, or not? I don't really know, and I'd like to ask your opinion.
Lately, my Technorati page shows more and more odd links to my site on pages like this. The "Online Casinos News Life Luxury Reports" link at the bottom links to this site.
Can anyone explain why spammers think this is a good idea? I don't mind having a bit of extra traffic, but for the life of me I can't understand why spammers want this, too. This site is not an Online Casinos News Life Luxury Reports, after all.
Maybe I can make a lot of money with this. If people want to gamble online, I'm more than willing to accept their money. Maybe I should write a Texas Hold-em script. In fact, I think I did exactly that a few years back. Let's see if I can find the script.
Any clarification is welcome.
25 September 2007
Phew.
Last Tuesday, exactly one week ago, was one of the busiest and most exciting days of my life, and I think that it was a success all in all.
For me, it was the first time I organised a conference, moderated a panel, founded a front-end professionals' organisation, and went into a personal battle that for a moment threatened to become very bitter, but fortunately didn't thanks to the generosity of my opponents and an extremely professional chairman. And all that on one day.
Anyway, it's wrapped up now, and I thought I'd give my international readers some idea of what I've been working on these past months.
11 September 2007
Permalink
| in Fronteers, Nederlands
12 comments
(closed)
Zoals ik eerder heb vermeld, heb ik het idee gekregen om een Gilde van Front-Enders op te richten. Dit idee heeft behoorlijke weerklank gevonden; tot nu toe hebben zich 85 front-enders als potentieel lid ingeschreven. Ik wil hen, plus alle andere geinteresseerden, van harte uitnodigen voor het oprichtingscongres van het Gilde, dat gesponsord wordt door het PIBN.
(English summary: This is an invitation to the founding conference of the Guild of Front-End Programmers. The conference is in Dutch, so this entry is, too.)
3 September 2007
To anyone following my Guild adventures it will not come as a huge surprise that I hope to be elected chairman at our meeting on the 18th of September. Last week, another candidate for chairmanship, Lon Boonen of Q42, entered the fray.
When I read through his ideas, I came across a few points that I absolutely disagree with. Furthermore I believe that the difference between Lon's and my ideas nicely summarises a fundamental decision the web standards movement has to take in the next year or so. I wrote this entry because this is something all standardistas should think about.
Basically, Lon wants to create yet another online community and pressure group—a grassroot movement, in other words. I, on the other hand, want to create a quite different type of organisation.
I believe that grassroot movements (of which the WaSP is the most important and well-known example, but far from the only one) cannot take web standards much further than they have done until now, because they don't reach the large website creation companies, which are crucial to the long-term success of the standards movement.
21 August 2007
Permalink
| in Conferences, Society
4 comments
(closed)
Just as last year, I've got a session planned for SxSW 2008. Its title is "In Praise of Elitism", and of course I hope that my readers will vote for me so that I get free entrance to SxSW.
20 August 2007
Permalink
| in Professionalism
34 comments
(closed)
Last week, two blog entries caught my eye because they discussed a problem I've started to notice, too. In Reflection Jeremy Keith bemoaned the lack of blog comment quality for the umpteenth time; while in The HTML 5 circus Roger Johansson explained that he temporarily left the HTML WG mailing list because there were too many people who just shouted at others without making any positive contribution.
Jeremy and Roger are talking about the same problem. There are quite a few semi-professional web developers who have excellent knowledge of the web standards but spend their time shouting at other people on blogs, forums, or mailing lists, and they are taking over most public spaces of the web standards movement with their ideologically pure drivel; proving the Greater Internet Fuckwad Theory beyond any possible doubt. We ought to get rid of them, but I don't know how.
Who are these semi-professionals? How do they differ from professionals?
Currently I'm reading Framing the Early Middle Ages by Chris Wickham, which treats Europe and the Mediterranean in the years 400-800 (this, especially the West, was my specialisation back when I was a historian). Wickham has been courageous enough to attempt a general definition of an "aristocrat", and I couldn't resist the temptation to apply his criteria to today's Web development aristocrats.
So today's questions are: what makes a Web development aristocrat a Web development aristocrat? And what are aristocrats good for, anyway?
24 July 2007
<blockquote>
?The website of a Dutch ministry has been tested for compliance with the Web Guidelines. I have been asked to supply a second opinion, which I'm currently writing. I came across a complicated semantic point that I'm not quite sure of; hence I'd like to ask your opinion.
Last Monday I invited all Dutch front-end programmers to become members of my soon-to-be-founded Guild of Front-End programmers. I also promised to publish some more information in English.
This entry covers the certification we're planning to introduce. While reading it, please remember that all items I describe below are just plans right now (some of them my personal ones). They may still be voted down by the certification committee or the Guild members.
(lang="nl" interstitial: Mensen die meer informatie willen, kunnen onze huidige plannen bekijken en/of zich inschrijven voor de aankondigingslijst.)
Hierbij nodig ik alle Nederlandstalige front-end programmeurs uit zich aan te sluiten bij het Gilde van Front-Enders dat ik bezig ben op te richten. We hebben al 50 leden, maar we kunnen er nog veel meer gebruiken.
(English summary: I'm in the process of founding a Dutch Guild of Front-End programmers. This entry is a national call to action and is therefore in Dutch. Later I'll post something in English about my plans.)
A week ago I surprised myself by writing a simple drag and drop script in five minutes, without needing to debug even one single error. I enthousiastically started to write a QuirksMode page about it, until I realised that a mouse-only drag and drop script is distinctly old-fashioned these days.
Therefore I had to add keyboard compatibility, which took me five hours (mainly thanks to the confusing event situation.) Due to other pressing matters it took me five days to write the final version of the page.
It's finished now. So here's a drag and drop script in case you need it.
29 May 2007
While writing my Changes entry I re-discovered the fact that I seem to be one of the very few well-known standardistas whose natural habitat is the world of large website creation companies instead of the freelance/small business/institutions world that powers most of the standards movement.
I noticed this fact immediately when I entered the standards-aware web world back in 1998. I vaguely worried about it back then, but I was so caught up in my day job and my extensive publications that I didn't do anything about it. When I went freelance in 2002 I submerged myself in the mainstream of the standards movement, I forgot about this problem.
In recent weeks, however, I spoke to a lot of lead front-end programmers who work for large companies, and I quickly re-discovered my roots, as well as the fact that they differ from the roots of the average standardista. I was also able to pinpoint the problem more accurately.
I feel there is a rift between large website creation companies and the standards movement, and a week ago I decided to write a more detailed entry about this problem. When the first draft was ready it was clear that it had become a new major article and was more suited to A List Apart than to QuirksBlog.
Therefore I submitted it, and after a brief editing round it was accepted and published as Evangelizing Outside the Box: Web Standards and Large Companies. Enjoy!
I just wrote an Introduction to Ranges. Ideally this would be the start of an article series similar to my Event series. I'm not going to promise anything, though; I'm too thinly spread as it is, and I have no idea when I'll continue working on this series.
I've been working on a Range compatibility table, and even though it's not even remotely finished I'll officially unveil it now; chances are it'll take me quite a while to create proper test pages and test the dozens of methods and properties I haven't (yet) needed in my Range project.
Back in February I wrote an opinion piece for the British .NET Magazine. I considered it a dress rehearsal for my SxSW presentation, and as such it allowed me to focus my thoughts.
Meanwhile the opinion piece has been published in .NET's latest issue (162; confusingly called the May issue, even though it will remain April for 20 more days). It will allow people who weren't at SxSW to read a summary of my presentation.
This reminds me of a question I wanted to ask anyway: which good, standards-aware web development magazines are there? .NET is definitely one. Unfortunately its Dutch counterpart NetProfessional, for which I occansionally wrote a piece, folded back in 2003. I don't know of any others, though I suppose they exist out there.
If you know of another standards-aware web development magazine, please leave a comment.
Well, the new W3C HTML Working Group is slowly getting into gear. It seems as if W3C has learned from past mistakes, since right now the openness surrounding the new WG is commendable. There's a blog for sharing information, anyone can join the mailing list as an Invited Expert, and even if you don't you can still read the list. Good!
In a stunning reversal of its stated policy, Dutch government last Friday decided to abolish the Web Guidelines and revert to tabled-based layouts. A government spokeswoman declared:
If the stated policy [ie. the Web Guidelines] were to be implemented, thousands of deserving web developers would have been robbed of their daily bread. For a government dedicated to creating more jobs, this is unacceptable.
The standards revolution here in Holland proceeds apace, so I though I'd give you an update. Most importantly, I have finally managed to find an English translation of the Guidelines, which will allow non-Dutch-speakers to judge them for themselves. I added a few notes to clarify translation points or vague spots.
One of the most important comments on my previous Guidelines post was: "Who's going to enforce them?". The answer seems to be: nobody. Far from being a weak point in the standards revolution, this non-enforcement is one of the strongest reasons in favour of implementing the Guidelines.
Just encountered this page with a list of Free JavaScript books. I didn't know you could get them for free! I usually pay for them (unless the authors give me a free copy).
In any case, the first free JavaScript book deserves to be quoted in full:
Quirksmode - ppk on JavaScript pages new
This is not a book properly speaking, but the pages on quirksmode organized to follow the book ppk on javascript by Eric Meyer.
I think Eric and I will have to have a chat about copyrights and such.
When I received my personal copies of the book back in October, I was of course overjoyed at being a Published Author. Nonetheless, I was sorely disappointed at one feature, or rather, the lack of one feature.
The pages of my book were gray, even though they were supposed to contain some blue accents. Unfortunately all blue colours, shades and nuances had been replaced by their gray equivalent, except on the cover. That made the book harder to read.
Meanwhile the problem has been solved, and gray copy owners can win a blue copy by participating in my contest.
While visiting SxSW I'll also sign copies of the book for anyone who's interested. The signing session will take place on Saturday 10 March at 4:30 at the Adobe Day Stage Café.
While I'm there I'm also planning to pick up signed copies of Transcending CSS by Andy Clarke, Javascript and Ajax for the Web by Dori Smith and Tom Negrino, Bulletproof Ajax by Jeremy Keith, CSS Mastery by Andy Budd, and probably a few other interesting books.
I'll see some of you there.
Recently Google released the very handy Webmaster Tools app, with which you can see how many links to pages there are, plus quite a few other goodies. This allowed me to create a Top Ten list of the most popular pages on this site, as measured by incoming links.
6 February 2007
Permalink
| in Content, Redesign, XMLHTTP
4 comments
(closed)
I added a new page about importing the site navigation on all QuirksMode.org pages. The page is mostly about why I do what I do, and less about the how (besides, technically it's quite easy). The site navigation is a perfect example of what Jeremy calls Hijax.
I also put my trusty XMLHttpRequest functions online for future reference. No explanations on this page; I already treated them in section 10A of the book.
Just now I cut short my research to the two key properties keyCode
and charCode
. Of
course I published the results, but I didn't go quite as far as I originally planned. The punctuation keys, especially, will remain a mystery for reasons explained on the page.
On 1 September last year the new Dutch law on the quality of government websites went into effect. At the time I read a short note on a Dutch blog that the new law made accessibility mandatory, nodded sagely, decided it was about time, and went on with my work without actually looking at the new law.
It was only last Friday that I studied it in detail, and to say that I was pleasantly surprised would be an understatement. The law's stated purpose is to make sure that every Dutch government website is accessible by following the guidelines as formulated by W3C. In order to do so, a corpus of 125 guidelines has been created to define best practices for creating accessible sites. These guidelines go way beyond WCAG; they also embrace modern, standards-compliant web development as a whole.
Good news for my French readers: Christophe Bruggeman has taken the time and trouble to translate quite a few of my JavaScript pages into French. I quickly scanned his translations, and they seem to be adequate and accurate (though my French is a bit rusty, and I might overlook some details).
He copied my old JavaScript Table of Contents to his own server and started working from top to bottom. He isn't yet ready, but expecting him to deliver a full translation of everything on my site would be absurd: it's far too large, as I can testify.
Individual pages now contain links to the French translation, when available.
Thank you, Christophe, for your trouble. And remember, anyone can translate any page to any language, provided you keep to a few rules detailed on the copyright page.
Just as last year, Drew McLellan has created his web geek advent calendar 24ways, in which a few web developers of note share some tips and tricks to impress your friends. Today my contribution: Hide and Seek in the Head.
4 December 2006
In my continuing series on Dutch politics I present the next background page: The Rules of the Game, in which I discuss government, parliament, elections, and coalitions.
27 November 2006
As promised, I will continue my reporting of Dutch politics. Because right now the situation is confused even for Dutch standards, and foreigners won't easily get the finer points of our ten-party system, I'm also preparing a load of background articles. Today the first installment: The Ins and Outs, in which the three large parties and their dance around the centre of power are introduced.
Meanwhile the situation remains confused. After Wednesday's elections (results) nobody has the faintest idea what kind of government we're going to get.
I've decided to write a few more entries about Dutch politics, and I hope to explain it so clearly that even foreigners who're used to boring two-party systems will learn to appreciate our ten-party system. If you don't like politics, you should avoid QuirksBlog for a while. Nonetheless I invite all JavaScripters to take a quick look at my politics appreciation app.
For once a non-technical post about the elections in Holland that are taking place today. I'm not sure how many of my readers are interested in this subject, but since I myself am fascinated by the weird turn the elections are taking, and I'm sure that at least some people will share this fascination once I explained it, I'm going to post about it anyway.
Rather lengthy. If you're not interested, ignore.
Zoals ik twee jaar geleden al zag aankomen, beginnen bedrijven serieuze behoefte te krijgen aan junior webontwikkelaars met gedegen CSS-kennis, en is het uitermate lastig die te vinden.
In de afgelopen twee weken heb ik twee aanvragen gekregen voor juniors die in vaste dienst willen treden. Vandaar dat ik met spoed op zoek ben naar mensen die CSS grondig onder de knie hebben, een eerste of tweede schrede willen zetten op een carrièrepad als professioneel webontwikkelaar, en die per direct beschikbaar zijn voor een vaste baan of een langdurige freelance-klus.
Herken je jezelf hierin, vul dan het formulier in en ik neem contact met je op.
16 November 2006
Two new reviews of the book appeared early this week. Roger Johansson reviewed it on his own site, and Mike West did so on Digital Web Magazine.
Thanks, both of you, for taking the time to read and write about my book, and for being so very positive about it. In the remainder of this entry I'd like to say a few words about an interesting difference of opinion that surfaces in them: the value of historical overviews in programming books.
WebReference has published an excerpt of chapter 8 of the book. If you're still wondering whether you should buy it, take a look and decide.
31 October 2006
Permalink
| in Book, Nederlands
2 comments
(closed)
Op Naar Voren is te lezen een voorpublicatie uit het boek. Het gaat om enkele secties uit hoofdstuk 9: CSS modificatie.
Vertaling: Marrije Schaake.
(English: Naar Voren has translated and published part of chapter 9 of the book. Since it's in Dutch it's not of much interest to my international audience.)
25 October 2006
Just a reminder that my book release party in Amsterdam will take place next Friday (27 October). See this post for the details.
I'm still planning a London book release party, too, but unfortunately there's no news yet (translation: for the past few weeks I've been too lazy to arrange it).
19 October 2006
Permalink
| in Fronteers, Professionalism
20 comments
(closed)
Do we need a professional organisation that tests and certifies web developers? This question is suddenly very much in the picture, with Mark Boulton, Richard Rutter, D. Keith Robinson, and Eric Meyer discussing it at length. I decided to throw in a few of my own thoughts and offer a field-tested rough-and-ready method that is quite reliable for separating the chaff from the wheat: the 2 minutes CSS test.
I've been interviewed by Russ Weakley of Web Standards Group about the QuirksMode redesign, the book, the Ajax hype, IE7, and more.
Read the interview: Ten questions for Peter-Paul Koch.
Well, it seems that the book is finally taking off.
As I said before, I'm planning book release parties in Amsterdam and London. The Amsterdam one has been finalised; details below. The London one is still under construction. It will take place early in November; details will follow when I have them.
I added some information to the Book section: an example scripts page and an errata page.
The example scripts page lists the example scripts, links to the working version and the JavaScript files, and gives a detailed list of where in the book the scripts are treated.
The errata page, unsurprisingly, contains the few errata I've found so far. I still haven't found a typo, though I did find three plurals that should be singulars, one of which is smack bang on the very first page of the very first chapter. As far as I'm concerned these aren't really typos, typos are just words taht are speled incorrectly.
Even though I went through most of the book now and found no typos, I'm still not convinced the book is actually free of them. No doubt a few will turn up once people start actually reading it.
Right, I seem to have been a bit premature in my book release entry. Although the book definitely exists by now, it turns out that it might easily take a few weeks before it has been shipped from printer to distributor, from distributor to the bookstore warehouse, and from the warehouse to the shelves. Therefore it's not strange that almost no-one has a copy of the book yet: you'll have to have a few more weeks patience, I'm afraid.
25 September 2006
Permalink
| in Conferences, Professionalism
5 comments
(closed)
Next March I'll be heading off to Austin to be at SxSW. Thrifty as always, I'm looking for ways and means of getting free admission, and the most obvious solution was to send in a panel proposal. Since this year SxSW allows people to vote for panels they'd like to see, you should vote for me if you'd like to hear me speak about JavaScript (and get me a free ticket). The panel is called "JavaScript: the Big Picture" and it's somewhere near the top of the list in SxSW's Panel Picker.
Well, today's the day. "ppk on JavaScript" has been released—in the US, that is. If you are actually holding a physical copy, please leave a comment with your location. This will allow me to follow my book as it penetrates the JavaScript world.
I implemented a Preferences page on which you can indicate your preferences for several QuirksMode.org features.
I promised to go into more detail about the redesign; here's the first installment in which I talk about some aspects of the CSS.
As you can see on this page, the QuirksMode.org redesign has gone live. It's not quite ready yet; right now I estimate that it's about 95% finished, but the remaining 5% will take a lot of time to implement, and therefore I decided to go live now instead of waiting another few weeks.
30 August 2006
Permalink
| in Conferences, Redesign
8 comments
(closed)
Although I'm almost ready with the promised redesign of QuirksMode.org, I'm nonetheless going to postpone it. There are two reasons:
As I think I said before, I am working on a redesign. In fact, I've been working on it for months, on and off, when the book permitted. Now that the book is ready I have more time to spend on it, and it's coming on nicely. (Oh, and before you ask, the frames will go. They've done their duty and I don't need them any more.)
Currently I'm going through all content pages and updating them; and since these updates go live the minute I finish them, I thought I'd give you an overview of what I'm doing.
As I promised before, I've now published the larger part of the Introduction of my book "ppk on JavaScript". Apart from some general notes, it introduces the eight example scripts that I use throughout the book. As you'll see, all these eight example scripts were written for real-world clients in order to earn real-world money.
The example scripts themselves are also online, and you can study them. The Introduction links to all of them. Since I refer to these example scripts throughout the book, I expect my readers to have a general idea of what they're doing and why.
I hope this pre-publication gives a better insight in the kind of book I've written.
Unfortunately the publication date has moved forward to 13 September (US). The rest of the world will have to wait about a month longer.
From today, Friday 28 July, until next Wednesday, 2 August, I'll be in the countryside where there is no Internet. This site is therefore closed in that period; anything that needs my personal intervention will have to wait until next Thursday.
I'm in an ethical quandary. I've written a new browser detect script that's definitely better than the old one, but I hesitated for almost a day before publishing it. I'm afraid that amateur web developers will take the function and abuse it. Nonetheless, I decided to publish. I just hope I won't be sorry a year from now.
Here it is. It uses navigator.vendor
wherever possible, because this property is much more reliable than the good old navigator.userAgent
. I also ported the whole script to one neat object that can be dropped into any script.
When I posted my book announcement on 2 June, I thought the huge project was almost done. Unfortunately I was wrong; right now I'm still working on the book. I thought I'd give you a quick update on what I'm doing right now.
During the @media conference several people asked what the book is about. Although the short answer is obviously "JavaScript!", they wanted a more detailed reply. This entry gives them (and anyone else who's interested) more information.
23 June 2006
Permalink
| in Conferences, WaSP
9 comments
(closed)
The Hot Topics panel that closed the conference featured one excellent question that set me thinking about socio-political questions:
Isn't the recent mass movement of high-profile web designers to large companies like Yahoo and Google a little worrying in terms of objectivity and in terms of creativity?
You can read the discussion that followed in the transcript, but my own thoughts went in a slightly different direction.
The conference was split into two tracks, and there have been quite a few discussions about whether this was a good idea. I think it is because it allows for more specialisation. In any case, here are a few notes on some of the presentations I attended.
20 June 2006
Permalink
| in Coding techniques, Conferences, Theory
9 comments
(closed)
Well, I'm back from @media, and it was as wonderful as last year. I met lots of interesting people, talked about lots of geeky stuff, drank the amount of beer required by British law, and went on stage at a web conference for the first time—but I hope not for the last.
Two minor book-related points.
The book will probably be released in the second half of August, and not the first half, as I said before. That's the US publication only; Europe will have to wait another month since the book is printed in the US and literally shipped to the rest of the world.
By request I added the Table of Contents to the book page.
Well, my previous entry Is asynchronous communication really being used? has certainly elicited some interesting comments. The answer was a resounding "Yes"; and the replies allow me to take a first stab at defining a few Ajax use patterns.
9 June 2006
Yesterday I attended the 10th Sigchi.nl conference in Amsterdam, during which I had the pleasure of seeing Jared Spool, Jesse James Garrett, Bill Scott, Martijn van Welie, and Steven Pemberton in real live action. (Note to self: Jared and Steven are stiff competitors of Joe when it comes to being The Funniest Man at Web Conferences).
I'm not going to describe the conference in detail. Instead, I'd like to discuss an asynchronous communication question that popped into my head during Jesse James' presentation.
The commenting system has been restored on QuirksBlog and the Bug Report thanks to Joost Diepenmaat. I closed them off for this entry (I don't see much value in comments about the commenting system), but I have turned them on on my book announcement page so that you can congratulate me.
Update: The contact form has been restored, too. I don't promise to answer quickly, but I will answer eventually.
It's done. My book is finished; I just delivered the last chapter (chapter 2, actually). It's called "ppk on JavaScript", it's published by New Riders, and I'm as proud as any parent of my newborn baby.
You can already order it through Amazon (US, UK, Canada, Japan), if you're so inclined.
Right now chaos rules on QuirksMode.org, and I'd like to apologize for it. To name but a few things: comments are disabled, I'm at least one month behind with Bug Report entries, and the contact form has been closed down for months.
First the good news: this will change. I want to go back to the situation where QuirksMode is a normal, well maintained blog/resource site. Then the bad news: it might be another month before something actually happens.
Nakedness sweeps the Web thanks to Dustin Diaz. I myself definitely decline to go without a modest bit of garment, so the navigation and logo frames will remain styled, as well as the content pages. In order to support the Cause I did disable my homepage's style sheets.
The idea was to catch those bits of markup that don't degrade too well without CSS, and as you can see there are a few on my homepage. These will be fixed in the continuously upcoming redesign.
Update: styles restored. I felt too naked without them.
One of my fondest W3C DOM wishes is a getElementsByTagNames()
method (note the plural "names") that returns elements with
several tag names in the order they appear in the document. This is extremely useful in for instance my
ToC script which needs all h3s and h4s in the order they appear in the source code.
When I discovered the compareDocumentPosition()
method in Level 3 Core, I could finally write a custom script that works in most browsers.
Therefore I now proudly present my new getElementsByTagNames() script. It requires either sourceIndex
or compareDocumentPosition
to work fully, and since Safari 1.3.2 supports neither the script doesn't sort the elements in this browser.
26 January 2006
Permalink
| in Coding techniques, Professionalism
26 comments
(closed)
Quite recently Google published the results of its Web Authoring Statistics research, in which about a billion HTML documents were parsed for popular class names, used elements and attributes, use of JavaScript and so on.
Sounds fascinating? You bet. There's just one slight problem: the actual data is totally inaccessible.
24 January 2006
iCab 3.0 is a surprisingly good, independent Mac (OS X and 9!) browser created by Alexander Clauss. It has good (though not perfect) CSS1 and DOM1 support, and to my surprise it even contains a speech browser. More than enough reason to recommend iCab to all Mac users that read my site, and to update my CSS compatibility table.
I added a page about element dimensions, ie. the actual width and height of HTML elements. It contains a little test plus the inevitable compatibility table.
Quite unexpectedly I was able to add a site to my portfolio that had been shelved for nearly two years: the new website of the Concertgebouw in Amsterdam. In addition I'd like to draw attention to the new KLM site, in which I had a modest involvement and which contains an interesting CSS/JavaScript feature that I haven't yet seen anywhere else.
29 November 2005
Permalink
| in Professionalism
48 comments
(closed)
For at least a year I've been worried about the total lack of relation between JavaScript and "serious" programmers. Unfortunately it seems as if JavaScript is still beneath their notice. That starts to annoy me.
The advent of Ajax makes a solution to this problem mandatory. Who will create the Ajax applications? Those who don't know how to write an application, or those who don't know the language the application will be written in?
My previous entry The New Amateurs has generated so many interesting comments that I decided to reply to them all in a new entry, which will continue the discussion.
To my astonishment it turns out that some New Amateurs read my site, and that some of them even agree with me. It seems they aren't even too much annoyed by the label "amateurs". Great!
Let's review a few of their arguments.
Andy Clarke started it, Molly Holzschlag added her powerful voice, and Roger Johansson and Holly Marie Koltz jotted down some interesting notes. It's time for New Professionalism in the website industry.
Basically the idea is that any web developer who refuses to learn CSS and modern, unobtrusive JavaScript, either from ignorance or from a refusal to break old habits, is no longer worthy of the name "professional".
I completely agree; in fact I have been worrying about this problem for quite a while, and no doubt others have, too. Such movements aren't created out of nothing, they are ideas waiting to find a voice, and I'm glad that it happened. We have to reach the New Amateurs and transform them into New Professionals. But how?
The November issue of Treehouse contains an interview with me about browsers, JavaScript teaching, Ajax, web applications, and more.
It turns out that not all table elements are susceptible to opacity
. The TR
,
especially, is obnoxious, and that's a pity because I really needed to set its opacity
.
See the new Opacity setting page for the details and a test.
Since the comments to my previous posts contain a few useful links to memory leaks and closure resources, I thought I'd create a linkdump for future reference. Note that I only included those articles that explain what they're doing and why and give code examples. I ignored the pages that just throw scripts over the fence and leave it to the reader to figure out what they're all about.
Zoals ik een jaar geleden al zag aankomen, beginnen bedrijven serieuze behoefte te krijgen aan junior webontwikkelaars met gedegen CSS-kennis, en is het uitermate lastig die te vinden.
In de afgelopen week heb ik niet minder dan vijf aanvragen gekregen voor juniors die in vaste dienst willen treden of een freelance-klus van minimaal een maand willen aannemen. Helaas heb ik Nee moeten verkopen, omdat mijn netwerk op dit moment uitgeput is.
Vandaar dat ik met spoed op zoek ben naar mensen die CSS grondig onder de knie hebben, een eerste of tweede schrede willen zetten op een carrièrepad als professioneel webontwikkelaar, en die per direct beschikbaar zijn voor een vaste baan of een langdurige freelance-klus.
Herken je jezelf hierin, vul dan het formulier in en ik neem contact met je op.
The new Firefox 1.5 (= Mozilla 1.8, as far as I understand) is the first one to support multi-column layouts. Of course I created a quick test page to study the effect.
Well, I'm back from all my holidays. My throat problems are mostly over, although I still don't have hot water in my house. Even so I'll start working again tomorrow, and I've spent a large part of the weekend in catching up on QuirksMode.org related matters.
Thursday night I returned from a relaxing holiday in Greece. I'd planned to do some work on Friday, before leaving for the countryside again on Monday.
Unfortunately Friday was a rather disastrous day. My central heating unit, which also provides my hot water, suddenly began expelling flames when I turned it on, and a hurriedly fetched mechanic told me it cannot be used any more due to the danger of carbon monoxide poisoning. No hot water, no showers, no shave.
Then the dirty, nearly windless air prevailing here in Amsterdam started working on my nose and throat, and right now I'm taking tea with honey, orange juice, and more such medicines in an attempt to stave off a cold.
All this means that I'm going to extend my holiday silence considerably. I'm disastrously behind on all jobs except for comment approval, but that's not going to change in the near future. No replies to the 200 or so mails still waiting for me.
If you need me, sorry, you'll have to have more patience; my unavailability has been extended for at least another week.
Today I leave for a two week holiday in Greece. As usual I won't touch a computer while I'm over there, so everything that requires my personal intervention will have to wait until at least Friday 19 August.
I'll be only patchily available during the rest of August, and I don't take any new job, no matter how small, paid or volunteer, before 5 September.
See you all later.
Following the revelation of Safari's support for multiple background images I created a very simple page that tests this new feature. Safari indeed supports it; Explorer Mac shows the second background image, but not the first, and Explorer Windows, Mozilla and Opera don't show anything.
30 July 2005
As everybody and his dog know by now, IE 7 Beta 1 has been released. Read Chris Wilson's entry over on the IE Blog for the details. Since I do not have a copy of it, I will not discuss it in detail. It is my strict policy to discuss only browser features and bugs I've actually seen for myself. Expect a full report as soon as I've got it installed on my computer, but not before.
The MSIE team seems to have used my site for bug testing, although almost all discussed bugs come from Position is Everything, and rightly so, since Big John and Holly Bergevin have far more interesting and detailed bug reports than my own CSS section.
Meanwhile this good news is being overshadowed by an apparently quite vicious campaign against Molly Holzschlag, who seems to have had the temerity to suggest that the IE 7 beta is actually good news for web developers and the standards movement in general, a message that encounters quite a bit of resistance among web standards fascists.
Micro-interview in Timo Wirth's ongoing "Falling in love with CSS" series: Peter-Paul Koch declares his love to CSS ...
While I was busy writing largish amounts of JavaScript for money and not paying attention to the wider world, everyone suddenly started talking about footnotes on the Web, a subject I happen to be highly interested in.
Back in 1998 I created my very first site, a summary of my research into the Thidrekssaga, and since it was supposed to be a scientific publication I needed a footnote system. I ended up using a footnote frame, and back then I was pretty impressed by my own creativity. Meanwhile the wow-factor of this solution has decreased rather dramatically.
Seven years later, four articles about footnotes caught my eye within about an hour.
In order to keep our pages accessible to non-mouse users, we must use non-mouse events like focus
or keydown
in addition to mouse events like mouseover
and click
. I created the new Event pairs page and related tests to study this problem.
My conclusions are:
18 July 2005
Permalink
| in External publications, WaSP
11 comments
(closed)
Today the WaSP announced the DOM Scripting Task Force of which I am a member. Its purpose is:
reaching out to standards-aware web developers who have not yet discovered the power of DOM Scripting and to experienced JavaScripters whose current practices do not include web standards and accessibility. In addition, the Task Force will provide accessible, cross-browser example scripts.
There are two ways of changing the style of an element: changing the element's style
properties or changing its className
. I feel that the second option should be a Best Practice, since it honours the separation of behaviour and presentation, where a style
change doesn't. After all, changing the style
of an element in JavaScript means that your script file contains presentation information. That is not right: presentation instructions should go in the CSS file.
I wanted to make sure that changing the className
doesn't lead to performance problems. My new style vs. className benchmark test clearly shows that it doesn't. In fact, changing the className
is faster than changing the style
in all browsers but Safari.
I'm very glad of this outcome, since I can now solemnly declare changing the className
whenever you want to change the styles of an element a Best Practice, not only from a theoretical point of view, but also from a practical one.
Regular visitors may have noticed that my homepage has changed a bit in the past few days. The old one was too cluttered and contained too much information. Besides, it didn't have any space left for the new Elsewhere on the 'Net feature. So I significantly revised my main blog pages and the content they deliver to the homepage.
Like my recently started validation drive, the homepage restructuring is just one aspect of the full-fledged QuirksMode.org redesign I'm planning. Besides, the redesign set me thinking about separation of structue and content.
Today the Web Standards Project and Microsoft have announced the formation of a collaborative Task Force that will provide technical help in moving Microsoft products like Visual Studio and ASP.NET closer to web standards.
A document uses XHTML 1.0 Strict. It contains a few <blockquote>
s, and in Strict they are not allowed to have text nodes as children. Instead, any text in the element should be marked up in a block level element, for instance <p>
. Initially the document satisfies this requirement.
After the document has loaded a script similar to Simon Willison's Blockquote Citations runs in the document and adds the content of the cite
attribute of each <blockquote>
to the visible text of the quote. Due to an oversight of the programmer the script does not put this text in a block level element of its own. Now the <blockquote>
has a text node as a child.
Last Sunday the Amsterdam JavaScript meeting was a moderate success. Among others, Bobby van der Sluis, Anne van Kesteren and Faruk Ateş attended, and we had some interesting discussions.
29 June 2005
<wbr />
Permalink
| in Content, Validation drive
10 comments
(closed)
I just updated the Quirks mode and strict mode page. I added a bit about the "almost strict mode" and test pages for font sizes in TDs.
I also found one new problem in the validation drive: most of my large compatibility tables liberally use the <wbr />
tag, which is invalid. I acknowledge the problem, I will note it in the validation texts, I will remove all other validation errors, but right now I'm not going to do anything more.
Like custom attributes, the <wbr />
tag requires some more thought. As my research shows, this tag is the least bad alternative for adding soft word breaks to pages; and the compatibility tables badly need soft word breaks.
27 June 2005
Permalink
| in Redesign, Validation drive
57 comments
(closed)
A few readers may have spotted the delicate gray text that appeared at the very bottom of my homepage last Saturday. It says "Valid XHTML 1.0". These few readers may even have drawn the correct conclusion: QuirksMode has started moving in the direction of valid XHTML 1.0 Transitional. Note: "moving in the direction of". For reasons I explain below this site will never be 100% valid, but I have decided to make an effort and see what happens next.
Besides, my content pages are long, long overdue for a cleanup, and I'm going to combine this sanitation with the switch to XHTML. Unfortunately the very first static page I edited gave raise to a fundamental question that I don't have an answer to. Therefore I submit one aspect of the maintenance of QuirksMode.org to a reader vote.
22 June 2005
It's getting busy on the JavaScript front. For a good overview of what's happening right now you should read the three articles I mention below. They discuss different aspects of the change JavaScript is going through at the moment. As an extra I've thrown in a little trick I've been using quite a lot lately.
Op zondag 26 juni vanaf 15:00 uur vindt er te Amsterdam een kleine JavaScript bijeenkomst plaats, georganiseerd door Bobby van der Sluis en mezelf.
Er is geen echt programma; we gaan gewoon wat met elkaar drinken, wat over JavaScript praten en we zien verder wel wat er uit komt.
Locatie: Café De Jaren, Nieuwe Doelenstraat 20-22, Amsterdam, vlakbij de Munt. Tram 4, 9, 16, 24 of 25 vanaf het Centraal Station, bij de Munt uitstappen, links de brug over de smalle straat in en dan kom je er vanzelf.
Ik hoop daar een paar van mijn Nederlandstalige lezers te treffen.
Today I leave for London to attend the @media 2005 conference. I will return home on Sunday. During that time this site is effectively closed: anything that needs my personal approval, as well as any mails I have to answer, will have to wait until next week.
Hope to see some of you at the conference, or maybe at Saturday's JavaScript get-together.
I just finished a major update of the About page, which gives some information about myself and about QuirksMode.org.
Wegens een recente en interessante uitbreiding van mijn netwerk ben ik met vernieuwde ijver op zoek naar junior webontwikkelaars die een eerste of tweede stap in hun carrière willen zetten en op termijn uit willen groeien tot gespecialiseerde, professionele client side programmeurs (HTML, CSS, JavaScript).
English as written by Chinese companies never ceases to amaze. Today I bought new trousers, which turn out to be Chinese (hence not very expensive), but after reading and re-reading the text on the label for ten minutes I still don't understand it, and I doubt whether anyone merely English-speaking can.
Again a question about foldout menus. These menus fold out when the user mouses over a main link that contains a submenu. This is a sacred tradition, and therefore mandatory: users who know these menus expect them to work onmouseover, and will get confused when they don't.
The question for today is: when should the submenus fold in? You can pick more than one answer.
There seems to have been a (badly covered) "Ajax Summit" organised by O'Reilly and Adaptive Path. Could be interesting. Scott Andrew has the details.
By coincidence I found this page that states:
Peter-Paul-Koch is currently not defined
I have to disagree; I'm perfectly well defined. Nonetheless it's heartening to see other people worry about my state of definition, even if they add an extra dash to my name for good measure.
Just now I implemented a 1500 characters maximum length for all comments on my QuirksBlog and Bug Report. Part of this reworking is a script that politely alerts the user when he exceeds this limit. I already discussed such a script in general terms in my JavaScript Triggers article on A List Apart, and of course I added a page that explains the script for all curious JavaScripters.
In the past few days three excellent JavaScript articles have been written that I agree with so completely I have to mention and quote them. In addition, there's one excellent JavaScript site that I discovered months ago but haven't yet come around to mentioning.
I did the W3C DOM vs. innerHTML speed tests in Mozilla 1.75, Opera 8 and Safari 1.3. Little change in the first two browsers, rather more in Safari.
While creating a mainstream site, the development team discusses ways and means of adding a foldout menu to the site. There are four opinions. Which one is correct?
Two days ago Apple's team launched Safari 1.3, being part of the OS X.3.9 upgrade (once again named after a fierce predator, but I forget which one). Despite numerous bug fixes, the new release is marred by extremely serious onunload
problems.
Two questions revolving around the :after{content: }
construct. There are three possible answers that apply to both questions. Remember that this construct doesn't work in all browsers.
A product page contains many products and their descriptions, plus one element with an order form. A script hides the order form by means of element.style.display = 'none'
. Does this action change the page structure?
When I first read Jesse James Garrett's article Ajax: A New Approach to Web Applications my reactions were "What a silly name", and "Not really new, is it?" Although both points of critique have been repeatedly and heatedly mentioned in the ensuing discussion, the concept seems to be taking the Web development community by storm. This can mean one of two things: either it's a promise or it's a hype. To decide the case, I offer an annotated link dump.
Being cut off from the news hurts. I nearly missed the spectacular discovery that overflow: auto | hidden
helps stretching up a container block to accomodate floating elements, something that until now could only be done through adding an HTML element.
I added a page about this technique, to record it for posterity and to emphasize that the technique works best with overflow: hidden
because of an Explorer Mac problem, and also needs a defined width
or height
. This last point wasn't clearly mentioned in any article I read.
Right now I have a large writing job (not a book, unfortunately), and it takes rather more time that I thought it would. Since I'm working on it almost every waking hour, I'm getting a bit tired of writing. That's the reason I'm not posting any blog items right now, and I'm afraid this situation will continue throughout March.
Found this one through Arjan on annoyances.org. Although it's funny, it's also a sad comment on the general state of affairs on forums, mailing lists, blogs and other places of social interaction. There are too many silly people who just want to be heard, regardless of the lack of quality of their remarks. Sometimes I'm tempted to instate really strict comment moderation.
Q: How many forum members does it takes to change a light bulb?
Since XMLHTTP is becoming more and more important I thought I'd create a linkdump, both for my own future reference and for other developers. Additions and comments will be gratefully accepted.
My JavaScript triggers article and J. David Eisenberg's accompanying Validating a Custom DTD article, have caused quite a few comments, both on and off the ALA forums. Some of these comments are interesting enough to repeat and to discuss further in a rather long entry.
Today (one day earlier than I expected) A List Apart published my first article in more than four years. It's called JavaScript triggers and it's about JavaScript triggers — and if you don't know what JavaScript triggers are you need to read the article.
24 January 2005
I did the W3C DOM tests in Mozilla 1.75 and Opera 8b and updated the tables. Mozilla doesn't show much progress (then again, it doesn't have to show much, it's already the browser that supports the W3C DOM best). Opera is on the move again.
In his DHTML is dead. Long live DOM Scripting entry, Jeremy Keith proposes to rename "DHTML" to "DOM scripting", because "DHTML" is a buzzword and because (apparently) DHTML and DOM are roughly the same.
I don't agree. I see DHTML and DOM as two more-or-less separate layers of JavaScript that have more-or-less separate purposes.
As to the buzzword problem, that's our own fault. We should solve it ourselves, and not by changing names.
I'm getting increasingly mystified by comments like this:
<a href="http://ssszcwyqwer.com/">oosgqx</a> poiuyt http://ghjklkpgaiequgo/
What is the point of these comments? Are they an extremely subtle sort of spam? If so, what's the purpose? The domain ssszcwyqwer.com doesn't exist, so generating traffic or a high search engine ranking for it doesn't make sense.
I understand spammers. I understand people who leave stupid comments. I don't understand people who leave incomprehensible comments.
With http://map.search.ch for a case study, Simon Willison announced, and Dave Shea confirmed, that 2005 is going to be the year of JavaScript, that our beloved language is going to hit the big time again, though, one hopes, in a more responsible way than in 1998. I fully agree, but I'd like to add a few comments, and try to narrow down the questions a bit.
10 January 2005
I just downloaded Opera 8b (from this location), and since I now have two new browsers I updated a few compatibility tables.
I thought I'd give you the current visitor stats for this site, gathered through the Reinvigorate system. Of course these figures are only valid for this site, and should never under any circumstance be used for any other site.
Added two portfolio items: onzeCatering.nl and the DELA Uitvaartkompas (literally "Funerary Compass", but the name doesn't survive translation). Both are heavily form-oriented sites, and the first one uses a new idea for searching through large amounts of items which I hope to expand in future projects.
The six patron saints of graphic design by Lynn Garrett. Very funny, and it accurately captures the spirit of Catholic hagiography.
Aside from the new domain name, the main reason I embarked on the QuirksMode.org project was that my old sites were becoming a nightmare to maintain and a mess to navigate. Rigorous information restructuring solved these problems nicely, but now that I've added two blogs to my site the problem is returning. Besides, I'm having difficulties making Movable Type do what I want.
As I promised a month ago, I have finally added the QuirksBlog to my site. It'll serve as my personal blog, not only for announcing new pages on this site and articles on other sites, but also for commenting on the web developers' world in general. In addition to this proud announcement, I'd like to give a general overview of where QuirksMode.org currently stands.
As I promised almost a month ago, I now proudly present the Bug Report system. Started as a simple sidebar on this page, the system aims to gather, explain and discuss any CSS or JavaScript browser bug.
I almost, but not quite, forgot that today is this site's first anniversary. Exactly one year ago I was very glad to finally publish it and put an end to an increasingly interminable development phase.
According to my referers, many visitors find my site through Google while searching for "quirks mode". Naturally, this site has a rather high ranking on this query due to its name. Nonetheless, I hadn't yet added a page that explains the differences between Quirks and Strict Mode, which is probably what these visitors are searching for.
Therefore I finally added a page Quirks and Strict Mode which explains how to trigger them and some differences between these two modes.
Found out by accident that it's possible to style the text selected by the user in Mozilla and Safari.
lang="nl" Nieuw artikel op Naar Voren: Structuur in de chaos. Hoe zet je een XHTML-pagina op die voldoende aanhaakpunten biedt voor CSS en JavaScript?
Updated the wbr page with the ­
entity
and a table outlining the resulting incompatibility soup.
New feature on my site: the Bug Report.
lang="nl" Voor enkele van mijn klanten in Amsterdam ben ik op zoek naar goede junior webontwikkelaars met gedegen CSS-kennis. Zoek je werk, hetzij een vaste baan, hetzij freelance-opdrachten, en heeft CSS geen geheimen voor je? Lees dan verder.
Reader Michael McGrady was kind enough
to send me a way of styling an input type="file"
, something that came in very handily
in a project I was working on.
Received today:
Become a legally ordained minister within 48 hours
As a minister, you will be authorized to perform the rites and ceremonies of the church!
Perform Weddings, Funerals, Perform Baptisms, Forgiveness of Sins
Visit Correctional Facilities
Want to start your own church?
I subscribed forthwith. The prospect of forgiving sins while visiting correctional facilities, especially, is alluring.
I'm back in business, after a restful and relaxing holiday in Greece, a major network breakdown, a long weekend in the countryside, and lots of sipping alcoholic beverages on sunny terraces.
I've even done a few minor updates today:
createAttribute()
. See the
W3C DOM Core tables - Attributes under createAttribute()
.document.createStyleSheet("javascript:'div{margin:0px;}'");
syntax
is the correct one for Explorer Windows. I didn't test this one.The new buzz word is definitely "Web Applications". Unfortunately, recent publications on this topic are extremely confusing. Web applications require a massive deployment of JavaScript, but everybody skilfully pretends they don't. Besides, I haven't yet found out what Web applications are because no one has bothered to define them.
Are Web Applications here to stay, or are they just another hype?
See Dave Shea's Web Apps are Hot for an overview of recent publications. See also Joel Spolski's perceptive How Microsoft Lost the API War article.
This is the blog of Peter-Paul Koch, web developer, consultant, and trainer.
You can also follow
him on Twitter or Mastodon.
Atom
RSS
If you like this blog, why not donate a little bit of money to help me pay my bills?
Categories: