Thursday, January 5, 2017

Web Browsers

After some recent annoyances using Firefox at work and seeing the memory in use by Firefox at home to almost 10GB, I have a renewed interest in looking at alternative web browsers.

Web browsers are not optional.  It accounts for nearly everything I do on the computer.  So it needs to be reliable, usable, and secure.  I have more or less always been a Netscape user and was excited when they open sourced the code in 1998.  Over time we saw Mozilla as a continuation of the (a?) Netscape code base and then eventually Firefox as a nice open source web browser.

But it's so slow.  Even on my dual Xeon, it's noticeably slow.  And the popularity of Firefox means it's a huge attack candidate, so we always see security updates for it.  This isn't Firefox's fault, it's a side effect of having popular software.

So anyways, back to browser alternatives.  Almost everyone has told me "Chrome!".  But that's going in the wrong direction for me, both in terms of the complexity and size of the browser as well as the walled garden of Googleworld.  Safari isn't an option for me because I don't use OS X.  Neither is Internet Explorer because I don't use Windows.  So I'm stuck looking for open source alternatives to Firefox.

I found that a lot of alternative browsers in the open source world are still going.  Dillo, for instance.  Even links, elinks, and lynx get mentioned from time to time.  But I have to have something that can work with modern web sites and not frustrate me.  For example,

WebKit really did make it possible for a lot of new browser projects to start up.  The rendering engine that began in the KDE project now supports a lot of big browser projects.  Looking through the alternatives available, I've narrowed it down to a handful that I want to try:
  • Midori
  • xombrero
  • surf
  • uzbl
Of these, I think that Midori or xombrero will likely be the ones that I actually find usable.  The last two are really out of curiosity.  The surf browser comes from the project.  That project aims to make alternatives to everyday software that, in their definition, does not suck.  Hit or miss, from what I can tell.  Sometimes the alternative offered is just too simple.  Sometimes it's great.  Where I think surf will irritate me is the lack of graphical controls, like being able to click a link.  It's all keyboard oriented.  uzbl appears to be similar, but I still want to look at both of these projects.

UPDATE:  This post has been sitting as a draft on my blog for maybe six months.  In that time I have tried to get WebKit going so I can build Midori or xombrero.  I have not been successful.  I am not running a mainstream Linux distribution so this is not a matter of just installing the distribution-provided packages.  Even if it were, I would likely struggle through building it from source because I prefer to understand at least a little bit about how the browser is put together.

It has been long enough, so maybe it's worth another try.  WebKit was extremely difficult to build, at least when I was passively working on it.  I could probably sit down and figure it out over a weekend but I don't really want to spend that much time on it.  However, recent releases of Firefox have left me thinking it might be worth the time.