So long Safari?
10th May 2006
My answer to So long Safari? on Ask MetaFilter
All browsers have bugs—especially relating to fancy JavaScript stuff. Any truly complex web application is likely to run in to browser bugs, and fixing them takes a whole bunch of time. Bugs in IE and Firefox are pretty well understood, as are the workarounds for them.
Safari has been out in the wild for less time, and also has a smaller number of people testing on it because it only runs on OS X. Here are a couple of issues that Safari suffers from that have affected me in the past:
1. addEventListener doesn’t work in Safari if you try to use it with a dblclick event.
2. preventDefault and stopPropagation don’t work in Safari (this may now have been fixed)
There’s a huge list of other bugs here.
I think you’ll agree that these are pretty obscure problems (so obscure that the vast majority of sites never trigger them). It’s only the modern trend for Ajax/JavaScript heavy web apps that is bringing them to the surface.
Like I said, all browsers have their own DOM/JavaScript bugs—which means you have to debug seperately in each browser. My hunch is that Safari has more JS/DOM-related problems than other browsers at the moment. To their credit, every release of Safari offers huge improvements, they release often and updates tend to be pushed out to Safari users very quickly. But when you’re launching your new hugely complicated Ajax site the temptation to leave the Safari fixes until later is understandable.
In answer to the original question, I don’t see Safari going anywhere. It’s a great browser to develop for, and it’s getting less buggy all the time. The web development community’s shared understanding of its current bugs and their workarounds is growing constantly as well. I think it has a very bright future.
More recent articles
- Weeknotes: datasette-enrichments, datasette-comments, sqlite-chronicle - 8th December 2023
- Datasette Enrichments: a new plugin framework for augmenting your data - 1st December 2023
- llamafile is the new best way to run a LLM on your own computer - 29th November 2023
- Prompt injection explained, November 2023 edition - 27th November 2023
- I'm on the Newsroom Robots podcast, with thoughts on the OpenAI board - 25th November 2023
- Weeknotes: DevDay, GitHub Universe, OpenAI chaos - 22nd November 2023
- Deciphering clues in a news article to understand how it was reported - 22nd November 2023
- Exploring GPTs: ChatGPT in a trench coat? - 15th November 2023
- Financial sustainability for open source projects at GitHub Universe - 10th November 2023
- ospeak: a CLI tool for speaking text in the terminal via OpenAI - 7th November 2023