How to Build a Better Browser
TuringTest writes "Interface designer and IE ex-developer Scott Berkun
writes an essay on basic principles of web browser design, moved by the recent presence of Firefox and Opera in the headlines. Gives plenty of design constraints and guidelines, some insightful, some debatable. Personally some features that I'd like to see in my browser include colaborative filtering (a.k.a. del.icio.us integration), a unified tool for history+bookmarks in a single list (filtered by keyword tags), and automatic generation of keywords for the bookmarked pages (something that Open Text Summarizer can do)."
bookmarks, if they were searchable i think that would be a big improvement. i collect so many they get hard to manage.
I think a better bookmark managment system needs to be implemented, especially when you move from office to home to mobile. possibly network storage system to publish your bookmarks so your browser can grab them automatically?
The links provided are very slow... here are normal ones.
Scott Berkun
basic principles of web browser design
del.icio.us integration
unified tool
Open Text Summarizer
It's disconcerting to see Microsoft paying attention to the sort of features available in Firefox and Opera. We all know what happens when Microsoft starts "addressing" the competition.
Personally, I find Firefox's community oriented approach to extensions and plugins refreshing, but it's hard to compete with a paid team of guys who managed to pass Microsoft's crazy hiring tests. As a Linux user, I fear this will mean my web browsing experience will fall yet farther behind that of my friends and co-workers.
Developers should see this as a call-to-arms. If Microsoft pursues feature extensions in earnest, it may well overrun open source efforts. That would be a disaster given the progress Firefox has made in terms of marketshare and acceptance so far.
A Proud Member of the Reality Oriented Community.
You mean to tell me that the IE developers didn't focus on security???
NOW you tell me !!!
If you're half as beautiful naked, you'd be 4 times as beautiful with twice as many clothes on.
You mean like adhering to the W3C standards? You mean like not having your own proprietary code floating about?
Start with those two issues then get back to me.
We will bankrupt ourselves in the vain search for absolute security. -- Dwight D. Eisenhower
Intelligent bookmark management: "Now your spouse can PROVE how much porn you look at."
"Wow. Now THAT'S a lot of angry Indians." - Lt. Col. George Armstrong Custer
I want to be able to search the browser cache, since that's where pages I've recently visited can be found. Sure, I can grep the directory, but this really should be integrated into the browser.
The problem with bookmarks is that they are tied down to one computer! I have to maintain two different lists at work and at home. Not to mention when I'm over at a friend's house and I'm trying to remember the url for one of them. I've found breasy.com to be a good solution. Could this be done in a Firefox plugin somehow? I suppose you need a central db to make it happen. Will the tinfoil hat crowd shy away from this?
Have you ever asked yourself, Is It Normal?.
While I'm actually relatively indifferent if someone's site uses Javascript or DHTML that Firefox doesn't support, it is aggravating to have a single, badly-coded web page take out that browser window and everything else I was tabbing to at that moment, especially if I hadn't bookmarked what I was looking at. In this sense, Firefox has unwittingly upped the ante on application crashes, since you're more likely to have more pages browsed to at any given moment than with MSIE.
Don't get me wrong: I love Firefox and I have no plans to switch back to MSIE. But I would definitely suggest one of Firefox's greatest weaknesses would be the stability issue. At this point, anything to prevent the browser from utterly disappearing when it hits a malformed (or whatever) page would be a welcome addition to the code.
Plugins are the bain of the web. The web is about delivering content to the browser and enabling the user to view the content as desired. Plugins, are the realm of over zealous 'web designers' and marketing types who cloud content with branding dogma.
UNIX/Linux Consulting
Help fight continental drift.
I'd like to see a searchable history feature. I may hit 500 web pages in a day, and trying to remember on what page I read something can be a maddening experience. It would be great to be able to search the cache.
For example, If I do a search for 802.11g router reviews, go to smallnetbuilder.com, then go to say Netgear and back then go to another generalized info site, the history would show from the google search which links I followed to info, as opposed to commercial sites, as opposed to junk. Hell, it doesn't even need to be graphical. It could even prioritize by something like time spent there, or depth of links followed.
Let's get our priorities straight here! I NEED a browser that will cover the tracks of my pornsurfing with just the press off a button. Just a big red panic button that will wipe out all cookies, history, pic cache related to smut. What browser developer can deliver this!? I must know!
It's a funny thing: any web programmer sees any web browser as a programming platform, not an app. But at the same time the rest of the planet sees the web browser, and most web sites, as just another kind of application. The conflict makes browser design tough: it's impossible to invest in the end-user experience and the developer experience to everyone's satisfaction (a burden consumer OS developers have). Hell, even if you were only trying to do one of those two things, you still wouldn't be able to do it to everyone's satisfaction.
This dichotomy exists, but does it necessarily mean that you cannot incorporate the two? "Programming Features" can be made transparent to the user -- only web programmers need to be familiar with them. The user doesn't care what browser or document properties you can access... all they want to see is content. So let's say you had a really good developer engine in the background - the user doesn't need to see that.
Furthermore in today's web-browsing experience you cannot divorce one from the other. A web browser HAS to be a programming platform if it needs to support things like DHTML or run Javascript. Saying that it's difficult to do, is no excuse.
Or maybe I'm reading this wrong.
Vivin Suresh Paliath
http://vivin.net
I like
Fun aside, that's a real problem with current interface designs. Online bookmark sites manage this by adding a "private" checkbox to entries, but I would like to see a more fine-grained publishing classification (i.e. personal, for friends, for work, for the world).
Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
The one thing I'd like to see is a spelchkr and grammer checkar build right into the browser.
Wooden that be kool?
Kindly allow me to run more than one copy of the browser, please!
I have three screens, each with its own root window. Mozilla will only allow me to run one copy, and is only smart enough to attach to one root window. Thus I can only have browser windows on one screen at a time.
There are a number of features that have not made it into mainstream browsers yet. IE is obviously lacking in security due to its implementation, although the concept of different security levels that can be set on a site by site basis is a good one. Omniweb's ability to edit HTML files "in place" is incredibly useful for fixing broken sites on the fly when you really need to use something that is is served while non-functional. Several browsers have implemented a "right click to never see ads from here again" feature that is indispensable once you have used it. Mainly, however, what we need is a push for open standards so that all of the different browsers (coming soon to your phone, toothbrush, toaster, etc.) will all work on all sites. This last feature will only happen when IE is dethroned. Whether or not this will come to pass, is pretty uncertain at this point.
Not terribly insightful or innovative? Coming from an ex-IE designer? Noooo. I don't believe it.
IE are the guys who think tabbed browsing isn't useful or desired by users. Is that why AOL is making an IE with tabbed browsing? Is that why every other browser has tabbed browsing? I think it's pretty obvious who's incorrect.
Taking hints from IE designers are like taking hints on car design from the designers of the Pinto. Sure, they might have gotten alot right, but there was that one problem...
Those features are nice. And I'm sure that most people on slashdot would benefit from them greatly. But for normal people, it wont help. My parents I switched to linux. And they enjoy the obvious benefits like not crashing and no spyware. And they've been using firefox even longer than they've been using linux. And they still dont' understand tabbed browsing, why its better. They don't organize bookmarks into folders. They really just don't care about efficient use of the computer. It takes me about 5 seconds to accomplish what it takes them an hour to do, and they don't care. They have the features and the power available to them to imporove their computing experience and do things faster and more efficiently. But they don't do it.
So for nerds like you and me this stuff rules. But leave it to firefox extensions. If you put it in the base package it will only confuse normal folk. You have to stick to things that are obviously better and things that my parents will use. Like the google search box.
The GeekNights podcast is going strong. Listen!
Whenever you enter an username + password in Firefox, it asks if you want it to remember the password - the options are Yes, No, and Never for this site. I think what you want to do can be accomplished using Yes and Never for this site.
Of course, you can change these settings afterwards if you want to.
My website
That's already a solved problem. Check Furl, Spurl, del.icio.us (which have the further benefit of an emergent collaborative filtering system).
Better bookmark managment systems need to be implemented indeed, but the problem is far deeper. I wouldn't be satisfied with less that what Integrated Back, History and Bookmarks describes: most visited pages bookmarked automatically and shown in the history list, filtering by frequency of visits, thumbnails.
I would implement that system myself as a Firefox extension, but sadly I lack the developing skill with the Mozilla base code.
Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
I think you misunderstand the author when he calls security and stability "red herrings". We're speaking theoretically on web browser design - the author basically claims that if security and stability ever become major marketing points, then the whole market has failed to meet minimal standards. "security and stability" are basically a given once you are talking about UI design.
The fact that Firefox can gain ground on IE based on security (spyware, exploits) shows that IE isn't meeting basic software quality control. The fact that Gecko still has rendering issue is the same. The fact that both MS and Mozilla.org think of these things as advocacy issues (Make spyware illegal! Stomp out IE specific pages!) only ignores the problem.
Firefox as far as I have seen and seen from others using is rock solid if you do a couple of things:
- If you used any pre-release version, uninstall the previous version. Key/value pair settings can and do change causing erronious behavior. This can get goofy on Linux but you can minimize the goofiness by hanging onto backups of the ".mozilla" directory and carefully pushing in stuff you need. Of course my preference is to export the booksmarks and start over.
- Plug-ins are "the heel" for any browers including Firefox. Limit the usage of plug-ins to a bare minimum and definately don't install plug-ings you feel iffy about. If the plug-in goes south then it often has an effect on the framework. As a tangent to the first point, using pre-release FF version of a plug-in is also a receipe for disaster.
Purely anectdotal, FF seems rock solid. You can also make IE extra flakey by installing all sorts of weird things as well (the last time IE crashed it came from the Google toolbar!). At this point it seems that both products are rock solid frameworks where most problems come in from the outside.
Imagine that everyone got a free TeeVee with every home/apartment. Now imagine that anyone with a bit of time could create a TeeVee station that worked with the free TeeVee. The people who didn't know what they were doing would make their stations compatible with the free TeeVee because they have it, and so does everyone they know.
Then their boss at work says, "make a TeeVee station to display information about our department." Because they all have the free TeeVee at work, that's what they use to view their station.
Finally, some upstarts (long-haired, unwashed, obviously communist, punks) say, "Hey, we have a TeeVee that is also free, but it is UHF/VHF compliant, and you won't get all those annoying commercials and stuff! Oh and people won't break into your home if you watch certain stations!
The masses look at these upstarts with wonder and bewilderment. Just what is this UHF/VHF that they're talking about? All they want to do is watch TeeVee, and what they have works fine. Oh sure, every once in a while, Cousin Midge's son (who is a TeeVee wiz) comes by and complains that there is always a nest of mice or other creatures in the living room ("They get in via the TeeVee," he says), but he always cleans them out and you give him a fivver for his troubles. Sometimes the TeeVee doesn't work, but if you wack it on the side enough times, it usually straightens out, but it seems...slow lately.
Yeah, right.
This is already possible in Galeon for ages, what I however miss is a way to customize the password settings for single input fields, ie. the Mailman password field for example isn't recognized by Galeon and thus no password is ever remembered, I would like to tell the browser explicitly that this is a field that I want him to remember. And there is also the throuble that the browser always remembers the password *before* the login is validated, so if you type the wrong one, you have quite a lot of throuble getting it out of the password manager again and fixing it. Idealy the browser should only save the password after a successfull login, however with most webpages that should get tricky, since there might no easy way to find out what was successfull and was what not.
Do you have some examples of sites which crash firefox? I keep firefox open all day every day at work and browse many sites, i now have 20+ tabs open with different sites and i never encounter a crash..
I can't speak for IE tho, i've never used it as a primary browser.
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
from the site: http://delicious.mozdev.org.nyud.net:8090/ categorize those sites with keywords, and to share your collection not only between your own browsers and machines, but also with others.
....
So something like http://stumbleupon.com/
http://shutterbug27.stumbleupon.com/
Striving to be common...
http://www.squarefree.com/pornzilla/
Its a bunch of extensions for firefox. Includes 'x':
x provides a toolbar button (which you can place wherever you wish via View > Toolbars > Customize... - it's labelled "Paranoia") from which you can quickly clear privacy sensitive data, specifically: history, form info, saved passwords, download history, cookies, and the cache (both disk and in memory cache).
Of course its indiscriminate and will hence wipe out all your non-pron data too. So do all your pron surfing with a different (expendable) firefox profile
I would like the "browser" to be decomposed into its simple components, which are available to any app. So the "HTTP" component is available (like wget) to any app that calls it, like fopen() now. And the "HTML" component is available, like htmlRenderer = new HTMLRenderer(htmlDocument). And the MIME lookup, JavaScript interpreter, and other components are all available via API to any calling program. Then we can not only get "innovative" new browers, with exciting or satisfying new features, but integrate them into our own apps.
I know GNOME and KDE each have "get URL" and MIME management components. I also remember all that BS from Microsoft's Internet takeover about "IE is part of the OS". But the right way to include the Internet in a distributed platform would let me open an XML app definition, which would glue together whichever network/data, logic and presentation/GUI components were installed, into a task-specific application. If browser developers were contributing more to the platform infrastructure, rather than exclusively to their pet monolithic application, that day would be here sooner. And we'd all be able to build the real apps on that flexible, complete, and simply customizable platform.
When you're done reading this book, think about what kind of project will be most productive when you contribute your code. Backfilling the holes in the Web platform left by the blind rush of the Web bubble is satisfying as a developer, and enables a better development and business environment. Change the world with gcc!
--
make install -not war
There are a few things that are keeping me on Opera. One of them is the ability to resume where you left off after a crash. Seeing that Opera crashes on occasion, this is a necessary thing. If you have 6 tabs open when it crashes, when you restart it you can choose to have it "continue from last time" and it will re-open all of those tabs.
Other things keeping Opera as my primary browser:
Mouse gestures - they just aren't as polished in Mozilla/Firefox.
Being able to close all tabs and not close the browser. I hate accidentally closing the last tab in Firefox and having the browser close.
Ability to identify itself as another browser - really only helpful from some asinine IE-only pages.
Configurability - I like the way in which Opera allows you to configure things.
Pop-ups. I like the way Opera does it better than Moz/Firefox.
Some things that Opera needs to work on:
Stability - still too many crashes. And it can freak out and eat all my CPU, and I have to kill it.
I do like the "line tracing" ability for Moz/Firefox mouse gestures. It is reinforcing to see them, so you don't get sloppy in using them.
Gripes for both:
Why did you move "Preferences" from under "Edit" to "Tools"? That is something that always bugged me about IE, now everyone does it. Arghh.
My beliefs do not require that you agree with them.
There is an extension for Firefox called Session Saver which was hacked to allow for better session restoration, but it's still too buggy to rely on. e.g. If you crash while a popup window with no chrome is active, you'll have a screwed up UI on restart; have to go digging through configfiles to fix it.
Power to the Peaceful
You publish your bookmarks.
Then you run a program that compares your bookmarks to other people's bookmarks, and the closest 5 matches come up. Then you recieve the websites they have in their bookmarks. For the most part you may be getting nonsense, but maybe you'd find some links you'd be interested in.
God spoke to me.
He was the designer of IE4 + IE5. I remember they were both lightyears ahead of Netscape in terms of interface, look + feel, and rendering engine at the time. So I don't think it would be fair to bash him that way.
Done for Firefox Here!
First I cannot believe the author is advocating bloaty, useless things like side-bars?
Sidebars are useless- why would you need to see a list of links permanently in the window you are browsing? The so-called theory this is based on is merely a bunch of assumptions that all lead to one simple solution... If you want to build a theory on navigation- go take some cognitive psychology courses, and do some real studies.
Research & Annotations... How much more unnecessary can things get? Why not just create a bookmark folder and save the website, or if you are using OS X create a PDF of the page. I personally do not want to be switching constanly between my web-browser/organizer and a text editor while I'm writing an essay.
RSS as an over-rated concept? I don't think so.
This essay is just flat out wrong. You cannot improve the user experience of the WWW by adding stupid features like side-bars and research tools-- RSS may not be innovative alone, but how browsers and search engines are using RSS is innovative-- Safari RSS, and Firefox Live bookmarks are time-saving, useful features.
The innovation will now come from the WWW itself. Google is a great attempt at centralizing information while making it easier to access, sites like Google and protocols like RSS will be the source of major usability innovations- not browsers.
I think it's time the author gets his head out of the '90s and looks at the browser as a simple conduit to information, and not a tool for organizing the web.
Geez, just look at his HTML. If you're afraid, let the Validator look at it for you: plain results (4.01 Transitional), forcing charset, forcing HTML 3.2.
What are standards good for, anyway? Just use your monopoly to push your nonstandard browser and do it your way.
Prescriptive grammar:linguistics
I find the "no" button useful for sites I haven't visited for a while and am not quite sure of the password. Then I can type it in and see if I've remembered it right, click no, and if it's right then log out and in again and the second time click yes. Then I don't end up possibly saving an incorrect password.
Methinks you didn't read the whole paragraph, just the headline
Security and Stability
Something is wrong if competition in any product line continually focuses on security and stability. These design attributes are basic requirements, not advanced features . You won't see advertisements for toaster ovens that say "Now, it explodes less often!" [...]
(emphasis mine)
He says that we should not be using security as a selling point, because it should be a baseline, an absolute must that should be taken for granted, rather than a "feature".
And I agree.
"When a ball dreams, it dreams it's a frisbee"
nice try but you sir are behind the times. simply use your web browser to visit empornium and the bittorrent client of your choice to download the content...
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
I've wished for a long time that browsers would correct misspellings in top level domains. It would be great if I could hastily type "slashdot.rog" and it would figure out that I meant "slashdot.org".
"Second, any urls that are dead should be deleted, or moved to a folder of dead links that I can try to revive."
I'm liking the article but this rather stood out as something wrong (for me, ie my opinion, ie that which I think that you do not necessarily have to agree with but can if you so wish).
A browser that moved or deleted my bookmarks automatically (for its own dumb reasons) would get tossed pretty quickly.
Consider a duff link - is it totally useless? No, it represents something that: a) you might want to look for again; b) may well be available on http://www.archive.org/; c) may contain a relatively unique file name so that a search will instantly bring you its new address.
But, no, no you just go ahead and delete my bookmarks why don't you. *But* when I delete sodding Outlook express, hey, feel free to magically and silently bring *those* files back!!!
Even if bookmarks were resorted into a 'duff links' folder rather being dumped entirely you'd loose any filing information that you'd made for that link and let's face it, if you can't find a bookmark quicker than you can re-google for the site itself then there wasn't much point in making it, keeping it, or sorting it in the first place.
A bit more respect for users would be nice - this article reeks of 'users don't know jack': Apparently we need help even *generating* our own bookmarks (ie from our history) and we're not even trusted to set our home page correctly!!
Personally, on a Windows machine I just create short-cuts to web pages and sort and search them - I almost never go near the 'Favorites' menu if I can help it. Heh, and this is me when I'm liking and article...
Personally, it annoys the hell out of me that Firefox, IE, Opera, etc., have to even try to run this code before exitting. Why can't someone write a simple browser that can solve the halting problem, so we can be done with this?