Top Google Results for Selected C/C++ Keywords

  • and

    1. National Aeronautics and Space Administration (NASA)
    2. Barnes and Noble
    3. Centers for Disease Control and Prevention
    4. Food and Drug Administration Home Page
  • or

    1. Internet Explorer Home
    2. HOT or NOT
    3. Truth Or Fiction - email reality check - verify rumors
    4. Netscape Browser Main
  • int (all of the following are from the .int international tld)
    1. WHO | World Health Organization
    2. Europa - The European Union On-Line
    3. Welcome to the International Telecommunication Union
    4. International Herald Tribune - World News, Analysis, and Global …
  • return
    1. Official Lord of the Rings Return of the King Tickets New Movies …
    2. Your Account Within 30 days of delivery, you may return any of the following…
    3. The Lord of the Rings: The Return of the King (2003)
    4. NASA - Return to Flight

Release Candidate != Beta

Well, Firefox 1.5 is officially out, as covered by just about everyone.

I noticed quite a bit of discussion in the early hours (back when the build was on the FTP site but not yet officially announced) as to whether or not this was really the final 1.5 release or just the 1.5RC3 in a directory called 1.5. Several people mentioned that the build date was the same as that for RC3, and one person (on Slashdot) actually did an MD5 hash on 1.5RC3 and 1.5 and found them to be the same. This made several people cry “hoax” and say that 1.5 wasn’t really out yet, and that everyone who was downloaded it was just getting the “old” RC3 build.

So which is it, 1.5 final or 1.5RC3? Well, both actually. That’s the point of a release candidate. Unlike a Beta build, which means “it isn’t quite ready but you can use it and test it if you want,” a release candidate build means “this might be the final release, but we want to make sure that there aren’t any bugs in it before we ship it.” Every RC build is a candidate, or possibility, for the final release, dependant on whether or not any major bugs are found in it. The final release will always be identical to the last RC build, which is why RC3 says “Firefox 1.5” on it and not “Firefox 1.5 RC3,” since changing the AppName could possibly introduce some bug or other in the code at the last minute (which we want to avoid at all costs).

In other words, if you’re already running RC3 (which you should be if you upgraded to any of the RC builds, since autoupdate is enabled by default now) you already have 1.5 final (you’ve had it for almost two weeks now, it just wasn’t officially called 1.5 final until today), so you don’t need to upgrade.

Just thought I’d clear that up in case anybody was still confused. (Not that any of those people read this blog, but still…).

It’s comming…

Firefox 1.5 final is close. Really close. Like, within a matter or hours or minutes. Get ready…

Free tech support

My aunt called me last week. I really like her, but I was never as close to her as some of her other neices and nephews, so I was rather surprised that she called. It turned out she had a computer problem, and that after she called some of those other neices and nephews and they couldn’t help her, she decided to call me. Now, I’m usually fine helping people out with computer problems, but when she started off with "My Internet Explorer is broken…" I knew it wasn’t going to get very far. I tried to explain to her that I haven’t used IE in like five years, and even then I only did it because I didn’t have any other choice. She asked what I use. "Fire what?" (she had never heard of it). I told her to go to, but she couldn’t spell mozilla correctly. "M-O-Z-I-L-L-A" She said she’d look it up. I wonder if she ever really did….

Finding Software II

I just remembered why I started the previous post last week. I’m trying to find a decent free text editor program to use for web development. It basically needs to have the following features:

  • Support for opening multiple documents in a tab like structure
  • Quick startup (on a brand new, but low end) machine

What I would really like:

  • Syntax highlighting and automatic indentation for source files
  • Some way of saving multiple workspaces, so I can easily open up all the files for a certain project and then close that and open up all the files for another project.

What I don’t need/want:

  •  WYSIWYG html editing. I’m just fine doing it by hand
  • Toolbar buttons that insert tags into html source files. I can type ‘<b>’ a lot faster than I can move my mouse up to the toolbar and click on the "bold" button. I consider this feature so useless I was amazed at how many of the text editors I tried insisting on including it.
  • So many other crazy obscure features that the interface is so cluttered that it takes forever to start up and you can never find what you want.


The key factor for me is simplicity. I want something clean and small and useful.  Right now I am using a very old text editor called Mini Notetab, which was really great back in its day, but hasn’t been updated since like 1997 (although the fact that it’s still usable eight years later says something about the quality of the original design).

 Now, I know that nobody ever comments on this blog, but I’ve seen the server logs and there are thousands of people who end up here, so if anybody has, uses, or knows of a good free text editor that might be close to what I’m lookig for, please drop me a note in the comment form.

Finding software

Three observations about the current state of free (speech or beer) software currently available:
  1. There is a lot of it.
  2. Most of it sucks.
  3. For any given area or program type, there is usually at least one really good free software package out there.
The problem is that even though number three is almost always true-that there usually is a free program that will do what you need somewhere-numbers one and two make it very often near impossible to find that program.  The result is that you have to sort through dozens of stupid or badly written programs before finding a good one that actually does the job you need.
One of the great things about the web, but sometimes also one of the worst things about it, is that the publishing entry barrier is essentially zero-meaning that any old fool can put up a website with whatever content or program downloads he wants. In other areas, like that of printed books, there was traditionally (and still is) a middle agent-publishing firms for example-whose job it is to filter out the crap and make sure that only the highest quality content makes it within reach of the consumer. (Now, looking at some of the books currently being published and sold you might not believe this to be true, but if you’d ever seen a sample of the types of manuscripts that end up in these publisher’s submission boxes you wouldn’t complain.) On the internet there isn’t a filtering agent between content creaters and content users, so it’s up to the users to attempt to find the good stuff and avoid the junk. Things like Google’s page rank and other directories and information collections attempt to solve this problem be showing users the "best" content, although it’s sometimes hard to say what exactly the best is.
I don’t really remember where I was going when I started this post, but it’s been sitting in my unfinished post bin for two weeks now, so I should probably put it up or something.

Solutions and Street Lights

One common mistake I’ve seen several examples of recently (both in and out of the software world) is when we look for solutions to our problems not where we’re most likely to find them but instead where ever we’re most comfortable looking. A few examples:

Several years ago I was at a friend’s house trying to scan a few documents on his computer. I tried several times, but the system always told me that the scanner wasn’t connected. Well, I checked the scanner, and it was definately connected, so I started looking for some explanation of the problem, and since I’m a programmer not an EE I was doing all software stuff. I reinstalled the scanner driver, downloaded a driver update from the scanner mfgr and installed that, even reinstalled all the software that I was using to attempt to scan the images. Nothing worked. Finally, after probably an hour or more of doing this, my friend comes over and I tell him that his scanner is broken. Surprised, he reaches down and plugs the scanner power cord into the power strip, and immediately the little "new hardware" notification comes up to say that the scanner had been recognized by the operating system. The problem here wasn’t that I didn’t know enough about computers, that problem was that I knew too much, that I was so comfortable debugging software and driver problems that it never occured to me that the problem could be so simple a thing as the scanner not being plugged in.

You’d think I would have learned from the above experience, but an almost identical thing happened to me just last week at work. I was attempting to install linux on an older (previously Windows 98) computer that we found unused in the server room. I stupidly picked Debian as the distro, only half realizing that although Debian is one of the coolest linux flavors, it is also one of the most difficult to install. They do have some sort of a GUI installer, but it stops at random intervals with requests like "Enter Kernel boot parameters:" (everyone has the linux kernel boot params memorized, right?). So this installation took longer than I had thought and I wasn’t very surprised when I finally booted it up and found out that (1) there were major display problems and (2) the network wasn’t working. After a few minutes I had a least got the display problems down to a workable level, but the network problems just wouldn’t go away. I must’ve ran the network setup wizard a dozen times, but I still couldn’t get it to detect or connect to anything. Then my bos walks in and asks how it’s going, and that’s about the time that I realized that I had never plugged in the network cable. What threw my off was that I was using a KVM switch to connect a windows system and the linux system to the same input and output devices, so at the same time as I was debugging the network on the linux system I was writing emails and reading web pages on the windows system. I had therefore forgotten that while I had only one moniter, keyboard, and mouse between the two of them, I needed a different network cable for each.

Well, this sort of reminds me of the old cub scout skit where someone’s on his knees below a street light looking for a contact lens (or quarter or whatever) and people start showing up and offering to help, until someone finally asks if he can point out exactly where he was when he lost it and he says, "Well I lost it over there (at least six feet away) but I thought it would be better to look over here by the light because it’s so dark over there that I can’t see a thing."

Now, I’ve been using examples from my own life here so that no one complains that I’m insulting someone else or being negative, but it’s examples from the real world that have lately reminded me of this problem. We all have areas of interest: things, methods, or software that we’re either good at or big fans of. This is usually a good thing, but when we’re seeking solutions to our and our employer’s problems, we need to make sure we’re not, like the boy in the skit, looking for the quarter where the light is and not where it was lost. Sometimes the best solution isn’t the one that’s the most fun or even the one we’re most familiar with. We need the intelligence to recognize these situations and the courage to admit it when one comes along.

Any thoughts? Use the comment form. 

XulPlanet Happenings

I realize that most of the people who read this blog probably found it through XulPlanet, which might make some of them a little disappointed at the total lack of anything XulPlanet related to be found here. Well, I hope to change all that soon. We have several news projects going up, old things being redone, constant updates to the existing content, and many exciting plans for the future. I hope to get a list of some of those plans up here in the next week or so. Stay tooned.

Tomatoes, the High Court, and Internet Information Finding

Although the news has been (and still is) pretty much dominated with Katrina coverage this past week, another interesting story is the death of William H. Rehnquist, Chief Justice of the United States. This post isn’t about Rehnquist, but an interesting (to me at least) story about the Supreme Court and the Internet as a source of information.

Many of you may know that the tomato, while normally considered to a vegetable, is technically a fruit. But did you know that the United States Supreme Court once ruled that they are indeed vegetables? I first came across this little bit of trivia around four years ago, on some website I used to follow at the time. The problem was that, like many websites, they provided the useless fact, but not any proof or documentation that it was actually true. Knowing how fast and easy urban legends spread online, I decided to check this one out for myself, and see if it really happened or not.

I did a quick google search for “Tomatoes Supreme Court” which resulted in hundreds if not thousands of pages, all of which provided the exact same story, but not one of which backed it up with anything. Obviously, most of this sites had copied the information from other sites, who read it on other sites, and so on and so on. After reading through dozens of these pages (which were everything from garden sites to recipe books to your classic useless fact pages) I finally found that a few of them provided one piece of documentary evidence: a date, 1893, the year in which this case supposedly was heard. Still, it wasn’t enough to prove if it actually happened or not.

So I went looking on, where I knew that all the Supreme Court cases since the beginning of the union would be listed. I don’t remember how long it took me, but I eventually found the correct case (Nix v. Hedden, from May 10, 1893) where an importer of tomatoes had sued saying he shouldn’t be required to pay the vegetable tariff because he was actually importing fruits, not vegetables. The court ruled that although tomatoes might officially be fruits to a botanist, they are most certainly considered vegetables to most Americans, and it was this common definition of vegetable, not the official botanical one, that had to be used when interpreting the tariff laws. So it really did happen; the Supreme Court of the United States really did rule tomatoes to be vegetables.

Now, fast forward four years or so to last week, when I was unpacking an old box of random stuff and come across the little slip of paper on which I had written the case details from the tomato case when I had first found it online. Just out of curiosity, I did another google search for “Tomatoes Supreme Court” and found—to my great surprise—that four of the top five results all included at least the case name, Nix v. Hedden, from which this information could be verified. There was even a three-page wikipedia article devoted to the Nix v. Hedden case.

So why am I bringing this up here? Well, something happened in the last four years so that while it originally took me several hours to find the details of this case (and only managed then because I knew to look on findlaw) it can now be brought up in half a second with a simple google search. Now, this might be an isolated incident, but I’m thinking that it represents a more global trend, that finding real documented information on the Internet is a lot easier to do now than it was a few years ago.

What might be the cause of such a change? Google’s ranking algorithm might have improved, so that it is somehow better able to put the more professional pages (more likely to include details and not just stories copied from other pages) up front. Also, there are more web pages now than there was then, so the documented pages might not have existed four years ago. (The Wikipedia article, for example, was only written last November).

If anyone knows of a serious scientific study or research project done on this subject (that of the availability and accessibility of reverent accurate information on the Internet, and specifically tracking the same over time) let me know. I don’t have time to do any more detailed work on this myself right now, but I’d love to know if anyone else already has.

Back to School

Well, I’m back at Utah State, fully immersed in all the fun and excitement of college life.

You can tell a lot about a Computer Science professor when he introduces himself by telling you what open source projects he has founded or been on the leadership boards of. 

In another class, the professor was talking about distributed system programming, and made reference to internet web servers as an example of such. Then there was an exchange that went something like this:

Professor: You want one piece of your distributed system to run independently of the other, so if you have a webserver and it’s talking to-what’s the latest browser they’ve got out there?

One student: Deer Park! (?)

Professor: Well, I’m not really familiar with that one…

I guess I really shouldn’t have been surprised. We’re all nerds here after all.

Next Page »