What browser should I use?

Mozilla downloads are spiking since, among other people, US-CERT issued what amounted to a plea for people to use some browser, any browser, other than Microsoft Internet Explorer.

Several well-known computer columnists have been trumpeting Mozilla for months now. At least one has stated repeatedly and publicly that he’s staying with IE. So what should you do?Interestingly, IE only has about 50% of my readership. That doesn’t surprise me; I’ve long been an IE critic, and blogs tend to attract readers who agree with them. So I don’t pretend that my readership is representative of anything.

As far as alternatives to IE, I’ve been running some flavor or another of Mozilla as my workaday browser since about version 0.7, using IE just for running Windows Update and not much else. Why? Well, while IE usually loads faster than Mozilla, once it’s up and running, I think Mozilla is the faster browser. I love tabbed browsing, and I love how you can search web pages by hitting the ‘/’ key and then typing the phrase you’re looking for. To me, those reasons alone are reasons to switch; it just lets me work so much faster.

But I’ve overlooked possibly the best reason to switch, because it’s been so long since I’ve noticed the problem. Are you tired of popup and popunder ads? Mozilla browsers block them. No extra software needed. This weekend, when I used a computer that only had IE on it, I got so sick of popups I was about ready to download and install Firefox to get some relief. Microsoft’s been promising this functionality for months, maybe even a year, and still hasn’t delivered. Honestly, I’ll be surprised if it’s ever delivered as anything other than part of the next version of Windows.

But besides that, it’s a matter of security. So this most recent security hole has been patched. It’s been known for weeks and they’ve just now gotten around to patching it? What about next month’s exploit? I’m confident there’ll be another, and soon, just because IE has nearly as many security patches as Windows itself.

Besides keeping out hackers, it’s been known for some time that people who run something other than Internet Explorer have fewer problems with spyware.

So what about sites that require Internet Explorer? Actually not a whole lot of them do, these days. Most remaining compatibility issues with Mozilla are resolved as soon as you install Sun’s J2SE Java library.

And if you want some more tips on living with Mozilla Firefox, you’ve come to the right place.

I switched to IE at version 5.01 for a simple reason. At that point, IE was the better browser. Mozilla caught up again sometime around version 0.7. That was when I switched back. And it’s done nothing but get better since.

A search engine that learns

I saw a reference to Eurekster today. While I didn’t think the world really needed another search engine, it brings an interesting idea to it. Dare I say that it’s the most interesting new idea I’ve seen since Google?
While Google ranks its pages based on the number of people linking to it, it can still lose relevance. A recent search I performed looking for tips on building things out of brass was a good example. If I’m interested in something that not many people think about–which seems to happen a lot these days–then Google’s system starts to break down.

Eurekster keeps track of what links you visit and how long you stay there in an effort to learn what you find interesting. Then, when you search again, pages similar to the ones you spent time with should bubble to the top.

If you dare, you can also link yourself to other people with similar interests so that what they like colors your results.

I tried using a Genealogy “search group” to see if it colored my results. It did, but the results were hardly earth-shattering.

Time will tell how well this will work. It seems to be use that puts the intelligence in artificial intelligence.

Open sourcing code doesn’t necessarily mean people will rush to it

Open sourcing code doesn’t necessarily mean people will rush to it

John C. Dvorak wrote a nice layman’s introduction to open source on PCMag.com. But he makes at least one big false assumption.

Dvorak says he’d love to see old code open sourced. Some examples he sought, such as CP/M, CP/M-86, and GEM, have already been open source for years. Caldera, after buying the intellectual property of the former Digital Research from Novell, released just about everything that wasn’t directly related to DR-DOS, some of it as GPL, and some under other licenses. The results have hardly been earth shattering.

Read more

That PC wasn’t broken, it was just spyware

I “repaired” a PC this weekend. Actually it wasn’t much of a repair. It had problems: disk errors, applications crashed a lot, the computer crashed a lot, startup times were slow, and at times the computer was really unresponsive.

At first I suspected viruses, but I quickly found the virus software was up to date, which was a good thing.

Read more

A first look at Mozilla Firefox 0.9

I upgraded to Mozilla Firefox 0.9 today. My initial impression is pretty good, with one caveat.

If you’re running an earlier version and haven’t upgraded already, make a backup of your profile first. I upgraded from version 0.8 without uninstalling version 0.8 first, and lost my saved passwords and bookmarks. What I lost isn’t anything I can’t type in again or find again but it was annoying.

But that’s pretty much where the problems end.This new version feels faster than the old one did. It also seems a bit more stable, but a few hours of messing around isn’t enough of a test to declare something stable or not. I’m also not about to assume that any other living human being’s browser habits resemble mine.

I did notice that memory usage has a tendency to go back down as I close tabs. That’s an improvement–that didn’t always happen with older versions.

The ultimate test is going to be leaving it open for about a week of heavy use. Older versions tended to not like when I did that–memory usage would balloon and over time the speed would degrade. We’ll see how this version handles that torture test.

Since I had to go back and re-customize it, I can tell you the tweaks I make to the browser. Maybe you’ll like some of them too.

First, I type about:config into the address bar to bring up all the hidden options.

I set network.http.pipelining to true, and network.http.pipelining.maxrequests to 100. This speeds up page rendering, at the cost of occasionally mangling a page. (This happens most frequently when I visit Slashdot, ironically.) Reloading usually clears it up. The problem happens infrequently enough that I live with it–I like the speed.

I set image.animation_mode to “none”, since I find animated GIFs distracting. Try browsing with image animation turned off and I’ll bet you’ll wonder how you ever lived without it. You can also set the string to “once” if you like animation. That way you can still see the animation but it doesn’t continue to loop while you’re trying to read.

I set browser.popups.showPopupBlocker to false. I don’t care to know when Firefox has blocked a popup–these days it’s pretty safe to assume that every site up there sent you a barrage of popups.

I set browser.blink_allowed to false. Few people use the dreaded blink tag anymore, especially since it was a proprietary Netscape tag that few others implemented. It doesn’t hurt anything to disable it just in case someone used it somewhere.

Since you can never have too much screen real estate, I customize the toolbars as well. If you go to View, Toolbars, Customize, you can drag the icons and menu items you use wherever you want. Drag things you don’t use down to the bottom. For example, if you never use the Go and Help menus, drag them down to get rid of them. I drag the address bar up to the top, next to the Help menu. Since I don’t use anything else on the navigation and bookmarks toolbars (I use keyboard shortcuts), I turn those off, which opens up lots more screen real estate. If there are some icons you use, you can drag them up to the menu bar and turn off those toolbars to save some space. It’s cheaper than a bigger monitor and takes up less space on your desk.

And as much as we tend to live in our web browsers these days, it’s almost as good as having a bigger monitor, isn’t it?

Free graphics software for Windows

Even people who use Windows exclusively have probably heard of The Gimp, which Linux and Unix users often proclaim as the “free alternative to Adobe Photoshop.” While Photoshop is in no danger of being displaced in the industry, Gimp is certainly more than adequate for most use.

But installing it in Windows has never been easy, unless you knew a well-kept secret: the URL for Installers for Gimp for Windows. (The Windows page at gimp.org is pretty intimidating.)All you need to do is download both files, the GTK+ 2 toolkit and Gimp for Windows. Install GTK+ first, then install Gimp, and you’re golden. Although the current version 2.0 is still pre-release, it’s much nicer than the “stable” 1.2 release–it has more features and a better user interface, and frankly, I don’t find it any less stable.

You’ll almost definitely want to keep the link to Grokking The Gimp handy. It’s a professionally written book that’s freely distributable, or, if you prefer, you can buy a print copy. Gimp is easy enough to understand if you have a guide, but you need a guide. Given that book, even a drawing klutz like me was able to do some drawings that turned heads. (Paper buildings on a model railroad layout, in my case.)

The copy of GTK+ on the Installers for Gimp for Windows site is also the secret to getting the Win32 port of Sodipodi up and running. Sodipodi is a free vector drawing program, similar in function to Adobe Illustrator, Macromedia Freehand, or Corel Draw. While not as full featured as the current version of any of them, again, it’s good enough for most casual use. Don’t be put off by its low version number; its primary author is a perfectionist. It’s at least as stable as most of the commercial low-end graphics programs I’ve seen for Windows.

There is no equivalent to Grokking The Gimp yet for Sodipodi. This Sodipodi Guide will get you started.

If you want to play around with graphic design and can’t afford to buy Photoshop and Illustrator (even the educational prices can be a bit high for some people), playing with Gimp and Sodipodi is a good way to learn the basics in order to see if you even want to learn more about drawing with a computer. Who knows, the current or some future version may even prove to be all you need–saving you from ever having to buy the commercial software.

Rediscovering OS/2

Rediscovering OS/2

So I picked up a surplus computer from work this week. Honestly, I bought it more because it was cheap than because I needed it. But it was a giveaway price for a good-quality system. Micron’s Client Pro line (its business-class line) is as well-built a PC as I’ve ever seen. The machine didn’t come as advertised, but it was still a good price for what I got: a 266 MHz Pentium II, 64 MB of RAM, a 4-gig Maxtor hard drive, a Lite-On CD-ROM drive of unspecified speed (it seems to be at least 24X), an Intel 10/100 PCI NIC, Nvidia Riva-based AGP video, an ISA Sound Blaster, and an ISA US Robotics 56K faxmodem.

Read more

Dave’s MP3 jukebox of his dreams–almost

Edna is a very easy-to-setup up MP3 jukebox written in Python and licensed under the GPL. I think a radio-like mode can be added to it pretty easily. Here’s the routine that selects songs to play:


def make_list(self, fullpath, url, recursive, shuffle, songs=None):
# This routine takes a string for 'fullpath' and 'url', a list for
# 'songs' and a boolean for 'recursive' and 'shuffle'. If recursive is
# false make_list will return a list of every file ending in '.mp3' in
# fullpath. If recursive is true make_list will return a list of every
# file ending in '.mp3' in fullpath and in every directory beneath
# fullpath.
#

if songs is None:
songs = []
for name in sort_dir(fullpath):
base, ext = os.path.splitext(name)
if extensions.has_key(string.lower(ext)):
# add the song's URL to the list we're building
songs.append(self.build_url(url, name) + '\n')

# recurse down into subdirectories looking for more MP3s.
if recursive and os.path.isdir(fullpath + '/' + name):
songs = self.make_list(fullpath + '/' + name,
url + '/' + urllib.quote(name),
recursive, 0, # don't shuffle subdir results
songs)

# The user asked us to mix up the results.
if shuffle:
count = len(songs)
for i in xrange(count):
j = random.randrange(count)
songs[i], songs[j] = songs[j], songs[i]
return songs

A question for Python programmers: I added a few lines to the shuffle routine, right after the line count=len(songs).


# radio mode -- DLF, 9/7
blacklist = open('blacklist', 'rb').readlines()
overplay = open('overplay', 'rb').readlines()
countb = len(blacklist)
counto = len(overplay)
for i in xrange(count):
for j in xrange(countb):
if songs[i] = blacklist[j]:
k = random.randrange(counto)
songs[i] = overplay[k] # end radio mode hack

What it’s supposed to do is load a blacklist and overplay list and, when shuffling, compare the current element against the blacklist, and if it finds a match, randomly substitutes a song from the overplay list.

What it actually does is nothing. Anyone have any ideas?

Hacking Mozilla Firebird

Nothing frustrates me more than unfulfilled potential. And that’s why Mozilla Firebird, in spite of its amazing strengths–great speed and small footprint, aside from the things it inherited from Mozilla like good standards compliance, tabbed browsing, popup blocking–well, it bugs me. Why settle for being great when you can be the best there ever was and make people wonder if there ever will be anything better?
Every other modern browser I’ve seen lets you turn off GIF animation. I always do. Still ads very rarely bother me. Moving ads do about 99.999% of the time. As it turns out, Firebird still has the capability, the control panel option is just gone now, in order to make the browser less confusing.

To get it back, locate the file prefs.js inside your profile. In Linux, search your home directory; in Windows, use the Find File option and remember that every Mozilla-derived browser you have installed will have one. Once you find it, open it in a text editor and add the following line:

user_pref(“image.animation_mode”, “none”);

Another good option, if you like movement but don’t like looping distraction, is to replace the word “none” with “once”. Then the animation cycles once and terminates.

Shut down your browser if it’s open, then save the file. Close the file, then reopen your browser. You’ll now be able to browse in peace.

There are bunches of other good tips at this page. Here are my favorites:

Disable blinking text by creating the file user.js in the same directory as your prefs.js file if it doesn’t exist (it doesn’t by default), and insert the following text:

// Put an end to blinking text!
user_pref(“browser.blink_allowed”, false);

Disable the marquee tag by creating the file usercontent.css in the same directory as your prefs.js file if it doesn’t exist (it doesn’t by default), and insert the following text:

/* Stop those marquee tags! */
marquee {
-moz-binding : none !important;
display : block;
height : auto !important;
}

Speed up browsing on fast machines by creating the file user.js in the same directory as your prefs.js fileif it doesn’t exist (it doesn’t by default), and insert the following text, which removes a quarter-second delay before starting to render the page:

// This one makes a huge difference. Last value in milliseconds (default is 250)
user_pref(“nglayout.initialpaint.delay”, 0);

Turn on pipelining to speed things up some more by creating the file user.js in the same directory as your prefs.js file if it doesn’t exist (it doesn’t by default), and insert the following text:

// Enable pipelining:
user_pref(“network.http.pipelining”, true);
user_pref(“network.http.proxy.pipelining”, true);
user_pref(“network.http.pipelining.maxrequests”, 100);

The future of the computer industry (especially Microsoft)

This story, 2003 and Beyond is probably already really widespread. It’s a very L-O-N-G but thoughtful analysis of the computer industry of today.
The piece doesn’t paint Microsoft in a very flattering light. One of the things I’ve noticed about most pro-Microsoft pieces on the web is that they say Microsoft isn’t a normal monopoly, because after they got their monopoly, they didn’t raise prices. Well, I’m not necessarily convinced that every monopoly immediately raises prices. A company gets used to a certain level of growth, which increased market share provides. When market share slams into that wall of 100% and stops increasing, revenue stops increasing unless the market grows. Holding prices steady at that point may encourage the market to keep growing. Then, when the market stops growing, if you’re thirsty for continued growth, you start raising prices.

This piece articulates that, and tells what’s next now that the market isn’t growing anymore.

This is the most thoughtful analysis I’ve seen yet of Microsoft’s very recent history and current plans, pointing at XP, .Net, and Palladium and showing which way they’re headed by pointing out the pattern in the most objectionable features of each new technology. It took me a good 30-45 minutes to read, and I’m a pretty fast reader, but it’s worth the investment of your time.