I don’t understand these people…

Every day I come out of the building where I work, and there will be one or two people just sitting there. If its cold, they are bundled up. If its hot they might be in the shade. They are not talking to each other; they just sit and stare out into space, and do absolutely nothing except smoke.

I can’t imagine my life being lulled into such a non-existence. Even if I did smoke, being forced outside to sit in the corner and do nothing would just be intolerable, and I’d quit. How can anyone do it? I really don’t care that much about the health aspects of it; but isn’t time just too valuable to be wasted like that? Oh well; it’s not my choice.

MySpace.com Javascript Worm

Here you can read the interesting story of the guy who hacked MySpace.com with a javascript worm. Myspace.com allows you to collect “friends”. Using javscript in his own profile, he was able to make any user that viewed his profile add him as a friend in the background without them knowing! And in doing so, he was able to collect over 1M “friends” in less than 1 day. Pretty impressive! It shows how exponential worm growth can be. For kids at home, don’t do it. Demolition is easy, building is hard.

He goes on to also post the details of how he got the javascript to work, too. Those of us who are programmers, know of many of these tricks. For those of who aren’t, well, take a look and see how easy it can be for a hacker to jump over roadblocks and get past the guards…

Oh yeah – I have verified that his pages don’t contain any hazardous javascript right now. So hopefully its safe to click on these links. But don’t hold me liable! He did it once, and seems to be sincere that it was just curiousity that made this happen, but who knows what he will do next!

Richard Feynman

I just finished reading. “Surely You’re Joking, Mr. Feynman“. Feynman was a physicist who won the Nobel Prize, but more importantly, he was a guy that just didn’t think the same way that most of us do. They say that “Great minds think alike.” But I doubt it was a great mind that said that, for the great minds are the ones that don’t think the way the rest of us do.

You won’t find much physics or science in this book, but I still liked this light reading. Sometimes we think we’re limited to being experts in just one area of study. Feynman proves that there is nothing to stop you from being successful in many fields except yourself. Don’t believe anything they teach you in school!

Finding the BCC field…

I’m not a big user of the BCC field. This morning, however, is one of those rare occassions when I’m trying to use it, and I can’t find the damn thing!

I’m looking somewhat incredulously at my screen right now, and I’ve gone to the oh-so-helpful Microsoft Help, and I still can’t find it! I’m torn trying to figure out if this is my Mother’s non-techie genes interfering with my work today or my Dad’s intermittent memory gene. Either way, I’m stuck!

Here are the instructions from Microsoft for enabling the BCC field:

  1. In a message, click To .
  2. In the Type name or select from list box, type the name or click Advanced, and then click Find.
  3. In the Name list, click the name.
  4. Under Message Recipients, click Bcc.
  5. Click OK.

I got through step 3, but there is no “Message Recipients” anywhere on the damn screen!?!@#$#! Right click reveals nothing useful. Clicking the little bubble by the name reveals nothing. Nothing in the menus. Just nothing.

God damn it. Can’t do a BCC? What do I have to go back to elm? pine? What happened to “View BCC” on the menu?


Answer:

OK – well, with the help of a colleague, we found the problem. On my machine, clicking “To” (as per the instructions) doesn’t open the “Select Names” dialog box. You have to *double click*. Minor distinction. But apparently important.

To all those readers (both of you) out there that thought I was technically inclined, know now that I am clearly not. Maybe my technical frustration today can bring a little smile to your morning.

I think I’ll go write an Outlook AddIn now which fixes the BCC problem.

Whine about GMail again!

You know, I mostly whine about GMail because I have a good friend that works on that product, and I hope when he reads this he jumps to fixing it. Despite all its glitches, I still use it because its got built-in search that just works better. Also, the no-foldering philosophy is one I fell into when building Lookout, and GMail is the only system I know which does this too.

My previous posts on GMail bugs can be found here, or here, or here.

And today, on multiple mail sends, I’m getting this error, repeatedly, when trying to send email, “Oops… the system was unable to perform your operation. Please try again in a few seconds.”

I’ve waited more than a few seconds. At least fix the error message!!!

Fix for Windows – Eliminate the Registry

The Windows Registry has been a computer administrator’s nemesis since about the time it was invented. It started with good intentions, but turned into a cryptic, haphazard mess. Its like a kitchen sink with a broken garbage disposal.

One of my biggest gripes about Windows is that you can’t re-install the OS without replacing all the applications. Have you ever been reluctant to reinstall because you knew that as soon as you do all your applications will be broken and need to be reinstalled too? Why is this? Shouldn’t you be able to reinstall the OS without breaking the apps? Unfortunately, the registry is owned by the OS, and because of this coupling, you can’t.

Its fixable – search

The good news is that this is fixable. The registry just needs to be rewritten. Today, the “registry” is a centralized index of attributes from every app installed on the system. What if, instead, the registry was a set of small files that resided on disk, each file contained a small set of attributes that are related somehow, and we maintained a search index to find things through all of these files automatically. Each application would have it’s own “.reg” file(s), which could reside with the application. If you move the application to another location on disk, its registry file would move with it. If you delete an application, its registry file would be deleted with it. Make sense? Now, we’d maintain a central index which would seek out these special filesystem files and index the data. You could still run a virtual “regedit” application, and it would look identical to how it looks today. Its just that instead of a central storage mechanism, it would use a distributed storage mechanism.

Benefits:
1) Containment of registry settings. Today, if you look at the registry, you might be able to guess where a given registry setting came from, but you can never be sure who really owns it, if it is still relevant, or if there is harm in deleting it. With this new model, where .reg files reside side-by-side with the application, its inherently obvious where the setting came from.

2) Ability to migrate the registry with the application. Today, if you want to move an app from drive C to drive D, you probably have to reinstall. There are other factors too, but one obstacle is the fact that the registry settings have to change, and you have no idea where they are. Adding a few variable substitutions to the registry files for things like (%MYPATH%), and you can now move apps and their registry settings by just doing a filesystem copy. You can now actually backup your apps.

3) Simpler Security. Security of the registry would now be handled by filesystem protections. IT folks could set the registry settings that they want, and use filesystem protections to make sure they can’t be modified.

4) Conflict Resolution. What happens today when application A wants a registry setting to one value and application B wants another? Well, you pick one and lose the other. In the new model, you still have two values, and you’ll need a rule to determine which takes “precidence”. But, if you open up regedit, it will be able to tell you not only which items have conflicts, but where the conflicts are, and what the conflicting values are! Now, you’ll be able to pick the right setting with knowledge about why there was a conflict, rather than having to debug an obscure problem that you didn’t even know about.

What do you think?

Example:

    /Documents and Settings/

      UserBob

        Application Settings

          Microsoft

            Word

              word-usersettings.reg — word might chose to store some registry settings here so that they can be written by a non-admin user

          Intuit

            Quicken

              quicken.reg — quicken might choose to store registry settings here

      /Program Files/

        /Quicken/

          [application files go here]
          quicken.reg — This file contains all the quicken registry settings

        /Microsoft Office

          [application files go here]
          office.reg — This file contains all the office registry settings