Windows Live

If you haven’t seen it already, Windows Live launched today. It looks pretty cool. But its all “in Beta”.

The best new part of Windows Live is the new Hotmail look. If you use hotmail, you should definitely check it out – its way better. To see it, you have to signup, however, so just login to your hotmail account here. You have to wait for approval before you’ll get the new look.

PS – the live.com site says, “Firefox support is coming soon. Please be patient :-)”

PPS – don’t forget to check out start.com. It’s a better “home page” than Yahoo or Google.

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

Dynamic Bridge Tolls

On my way into work today, I was thinking about bridge tolls. There has been talk of raising the tolls on various Bay Area bridges to $4 or $5 or even $6! Yikes!

Now that we have FastTrack, it seems that there may be more creative solutions we can come up with. For instance, what if the toll is variable? Those crossing at 5am get to cross for $0.50. At 6am, its $1.5, at 7am it jumps to $3, at 8am its $6, at 9am it drops to $3, etc etc?

I found a similar proposal for the New York area from the Tri-State Transportation Campaign which had some good data in it here. They divided their plan into “off peak” and “on peak”, at $4 and $6 respectively.

Using excel, a little math, and a bit of arrogance, I am coming up with this model. My goals are to increase revenue, but also increase vehicles-per-hour over the bridge.

1) If you don’t use fasttrack its $7.50. This is because you are costing us a lot of money and slowing everyone down. Get fasttrack.

2) Peak hours (7am to 9am): $7

3) Off-Peak hours: $2

Now this is a no-comprimise plan with teeth! A commuter can save $25 per week by shifting to off-peak driving hours.

Using the same percentages for vehicles per hour as the TSTC used in New York, my model would produce a 5.7% increase in revenues over the current, static $3 plan. At the same time, it puts such a heavy incentive to get drivers onto FastTrack and to not use peak hours, I think we’d see a significant decrease in overall bridge wait times.

But what do I know….

Really Extreme

But what if we wanted to get really radical, and have a completely variable price that adjusts in real time?

Google is an interesting example of a company that adjusts their prices in real time. They deal with a huge volume of “ads”, and they are constantly figuring out which ad is best optimized for their business. This is done in real time.

What if all California bridges were linked electronically. As tolls are collected (either digitally via FastTrack or via toll-takers), the central system adds up the money. At the same time, the central system knows how many vehicles per hour are flowing through any bridge.

Each year, the governor types in a number for how much revenue per day he wants to get from the Bridge system. Then, the bridge system uses its historical models, current traffic flow rates, and the target revenues to calculate how much it should be charging drivers to cross the bridge at that instant.

Imagine the case where a bridge is extremely congested. The bridge system would automatically start raising the toll – in REAL TIME. This would have the effect of also lowering the tolls on the other non-trafficked bridges also in REAL TIME. We could set limits on the toll so that it never exceeded say, $15. But when it gets congested, commuters need to find another way to get home.

The advantage of this system would be that bridge tolls would be almost free when crossing if there was no traffic. But, when congestion occurs, the price would get higher and higher. Its actually a very fair way to deal with pricing.

Anyway, this idea is wild and crazy. The state of California isn’t very capable for creating real-time, dynamic bridge crossing toll algorithms. And we can get “close enough” with something simpler and less politically damaging anyway…