1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
The web browser ceased to be a "browser" some time ago. These days browser is really the runtime of the web. As such, web browsers and browser makers seem to spend more time these days optimizing their runtimes for developers.
Every time you turn around there's a new JavaScript compiler, support for a still-not-actually-a-standard web "standard" or a new tool designed to make building web sites easier. As a web developer I love all this new stuff. Chrome especially has really been focusing on developers lately. Did you know you can point Chrome to a folder of <a href="http://sass-lang.com">Sass files</a>, and then edit the Sass files *in Chrome* and see your changes reflected in real-time?
To someone who started developing for the web when Internet Explorer's view source tool handed off the source view to another app, Chrome's powers are nothing short of magical.
Like every developer though I also *use* a web browser to, well, browse the web. Unfortunately, it feels like browser makers have been devoting decidedly less energy to this side of the user experience.
It's great that web developers have all these cool new tools and can continue to build innovative and useful sites that can do all sorts of fancy things, but the user in me wants some of the same attention. Browser makers' focus seems to swing on a great pendulum; at the moment the pendulum has swung way out of web developer land. I have no doubt that eventually it will start to swing back and browsers will return some attention to more user-facing features.
With 2014 almost upon us, here's a kind of wish list of things that would be nice to see alongside all the great new standards, faster JavaScript engines and awesome developer tools in next year's browsers.
These are a few of the things I'd like as a web *user*.
## Better Privacy Controls
Privacy is a huge can of worms, but very simply I want a better way to manage the data that leaks out as I browse the web -- especially on mobile.
The amount of privacy controls varies greatly between browsers, but none are ideal. Currently no browser defaults to protecting your data in any real way. Safari is probably the best of the bunch since it at least blocks third-party content out of the box.
But browsers' current so-called privacy tools all look like the half-hearted piles of crap they are next to actually useful, third-party add-ons like <a href="http://www.ghostery.com">Ghostery</a>, <a href="http://glass.abine.com">DoNotTrackMe</a> and <a href="http://noscript.net">NoScript</a>.
Browser makers, it's a cop-out to leave something as fundamental as privacy to third-party developers. It's time to start looking at the lack of privacy tools for what it is -- a bug in your software. Especially you Firefox, for all your lip service to privacy, the actual tools in Firefox are as pathetically absent as they are in Chrome.
And please don't tell me about the <a href="http://www.webmonkey.com/2012/10/yahoo-microsoft-tiff-highlights-the-epic-failure-of-do-not-track/">Do Not Track proposal</a>. Users don't want ineffectual hand-wringing that seeks first and foremost to placate the advertising industry. Do Not Track is a bad joke and should be left where it belongs, in the dustbin of web history.
Real privacy looks like this: by default the browser blocks everything. The user decides how much they want to share with the sites they visit.
As part of the installation process the user chooses which of the dozen or so most trafficked sites they want to trust. For example, I might say okay to Twitter. Then all of Twitter's scripts, trackers and various beacons can load. If I don't do anything then everything gets blocked. And nothing from third-party ad companies is loaded, ever, period.
If this is going to "break the web" then good, break it. It needs to break. Perhaps browser makers ought to side with users for a change instead of the big data-harvesting companies that currently rule the web.
While having the user choose to allow some of the two dozen or so most frequently visited sites during installation seems workable, I admit the user interface for managing other sites gets a bit trickier. One idea would be to just pop up an overlay to ask the user if they trust a site. Do it the first time that site is requested and save the setting for future visits. That's more or less what all the third-party tools are already doing.
Sadly, this is exceedingly unlikely to happen. Google's business is structured around harvesting more of your data, not offering you ways to block that harvesting. Don't expect Chrome to offer any real privacy controls any time soon.
Firefox derives the vast majority of its income directly or indirectly from Google. That doesn't mean it too is beholden to Google, but beholden or otherwise, it has no better privacy controls. Opera is more or less Google Chrome with a coat of paint so don't expect too much there. As noted Safari is currently the best of the bunch on this score, but it's market share is insignificantly small save on mobile. Internet Explorer broadcasts the meaningless Do Not Track beacon by default, but that's about it.
So long as the major economy of the web continues to revolve around tracking what you do and selling that information to others don't expect your privacy to be top priority with anyone. If you'd like to have some privacy today you can start with add-ons like <a href="http://www.ghostery.com">Ghostery</a>.
## Preferred Caching
This is a somewhat obscure technical detail, but implementing it will make the web feel faster for end users. And faster is almost always better.
This works off the same premise that makes adding sites to a privacy whitelist much simpler than it seems -- we tend to visit the same sites over and over again. New sites are the anomaly, not the rule.
To increase the speed at which these frequently-visited sites load, browsers should aggressively cache the resources associated with them. While this is useful in any browser, it's probably most useful on mobile devices where networks are constrained and data is often changed on a per-megabyte basis.
Nearly every browser already knows which sites you visit most frequently, it's how browsers populate their little "speed dial" features. The only difference is that instead of just remembering them, they also cache their stylesheets and other data. As with the speed dial idea there should also be a way for users manually add sites to the preferred caching list, but that could be well buried for advanced users. The primary mechanism would be totally transparent to the user.
Browsers already do heavily cache sites, at least to a certain extent. For example, instead of downloading the stylesheets new each time the browser just fires of a quick request to check if anything has changed since the last time it downloaded the stylesheet. Currently the browser does this for all sites, but the cache is a fixed size, which means sites with tons of data can force the browser to flush out other sites.
Preferred caching would ensure that the browser never flushes out the caching for your favorite sites. It also ups the caching ante a bit to eliminate even the quick resource check. Instead the stylesheets are treated as a local asset and load much faster, without any network requests (sites can bust this caching by renaming resource files).
As speed guru Steve Souders writes regarding preferred caching, "A key factor for getting web apps to perform like desktop and native apps is ensuring that their static content is immediately available on the client." That's exactly what preferred caching enables.
As Souders notes in an older blog post <a href="http://www.stevesouders.com/blog/2012/09/12/preferred-caching/">outlining the concept</a>, Internet Explorer already does this, as least to some degree, but what would be really nice is if this caught on with mobile browsers.
## A Responsive Image Solution
Most users have probably never heard of responsive images, but everyone wants this one, developers and users alike, because everyone wins when sites load faster.
Simply put, there needs to be a way to deliver smaller images to smaller screens and limited bandwidth devices and larger images to devices that warrant them.
The hard part is that this problem turns out to be a very complex and tricky thing to solve with many different possibilities on the table.
There have been numerous proposals for how to solve the problem and browser makers and web developers have been working on the problem for over a year now with no real solution yet in sight.
I happen to be rooting for the <a href="https://github.com/igrigorik/http-client-hints">Client Hints</a> proposal, but anything is better than nothing.
## Reader view AKA, saving developers from themselves.
Just as browsers need to take some responsibility for protecting our privacy online, they need to take some responsibility for making the web a less reader-hostile place.
I'm currently on a 15in laptop and when I visit, for example, CNN.com to read an article here's how much of the screen is actually devoted to the article:
[image cnn-normal.jpg]
It's become such a running joke that there are whole websites dedicated to pointing out this bit of design idiocy.
A "reader mode" fixes the problem by extracting the main content and then reformatting it with some nice clean, readable type. It's especially nice on mobile devices where screen space is limited and small fonts are even harder to read.
Apple's Safari already does this wonderfully; Chrome, Firefox and IE -- just copy it (Firefox has on mobile, but not on the desktop). If you don't want to wait for browsers to add this feature, you can install extensions like <a href="https://chrome.google.com/webstore/detail/ireader/ppelffpjgkifjfgnbaaldcehkpajlmbc">iReader</a> or just use the <a href="http://www.instapaper.com/save">Instapaper bookmarklet</a>.
## Universal sync tools
This is purely a pipe dream, but it would be nice if open tabs and browsing history synced across browsers. In the course of a usual day I end up using Chrome and Safari on my Mac, Opera on my Android phone, Safari on iOS and Chromium on Linux. Is it so much to ask that some mechanism might give me access to my open tabs across browsers and devices? Perhaps a universal format along the lines of bookmarks files, combined with Dropbox, could solve this problem.
## Conclusion
There are other things it would be nice to have -- an easy and universal way to turn sites into "apps" for instance, something that can still be cumbersome on mobile platforms. Or perhaps some more fine-grained ways to control how much data is downloaded when you're on constrained mobile connections.
What's perhaps most encouraging to note about browser wishlists like this is that usually the features are available today via some third-party tool. I don't think that's sufficient for things as fundamental as protecting privacy -- a stopgap is a stopgap, not a real solution -- but many features we take for granted today began life as third-party tools. Here's hoping that happens with your most-wanted new features.
|