shahine.com/omar/

homepage | Send mail to the author(s) contact

yet another Microsoft blogger

# Sunday, March 07, 2004

Thanks Comcast

The Sopranos in HD is just awesome.

Posted Monday, March 08, 2004    Permalink    Comments [0]  View blog reactions

 

# Saturday, March 06, 2004

Media Center Project

For the past few weeks I've been working on support for the Front Panel Display that my custom build Media Center has. For about a year it was dark (not doing anything). But a few weeks ago, I got hold of some code from Ian Kennedy to talk to the display using C# and managed code. I also got hold of some sample code on how to write a Media Center Sink using managed code (you need to expose the class library as a COM object). All of this is documented in the Media Center 2004 SDK but all the code and related samples are in C++ (not something I care to know anything about, ever).

For me this was a great programming exercise. I wrote an Interface (allowing others to write plugins for their particular Front Panel Display), code to handle dynamic loading of assemblies, a state machine for aggregating Media Center State, Installer code for doing the COM registration using (non trivial for me), an MSI for doing all the right magic, and of course figuring out how to expose a C# class library as a COM object.

Would people be interested in having a look at this stuff? Is there anyone out there that is running Media Center and wants to write their own custom Front Panel Display? If so I might figure out a way to release this code.

Here is the result of the work I did. You can see that we are in a My Music session, playing Train Wreck from the latest Sarah McLachlan CD.

Posted Saturday, March 06, 2004    Permalink    Comments [5]  View blog reactions

 

Resharper

I've been using Resharper for a few weeks now and I'm impressed with the productivity gains I've experienced in Visual Studio. They continue to make bug fixes and feature enhancements on a regular basis. It's free to try the evaluation for now and I'm definitely going to buy it when it's released.

My favorite features are:

  1. Better syntax checking (akin to VB.NET) for C#. You don't need to compile before finding out you have errors
  2. Better code highlighting and code formatting
  3. Simple refactoring support (rename) which I do all the time.

Posted Saturday, March 06, 2004    Permalink    Comments [0]  View blog reactions

 

# Friday, March 05, 2004

My Inbox

Lets talk about my inbox for a second. I never let it get over 200 messages, but it's never under 100 messages. I literally struggle every day to keep this thing from exploding. I have dozens? hundreds? of folders and I think the max number of server side rules that exchange will let me and I still can't deal. When I first started at Microsoft it was under 30 each day. But as my roles changed, my interests grew and my responsibility increased it's simply impossible for me to get back to this. When we shipped Virtual PC 6.1 I managed to get my inbox down to 4 messages, but a week later it was back to 150.

Robert Scoble mentioned a David Allen Seminar today and that got me intrigued. I'm not sure where he took it but I think I really need something like this. I went to his web site and already read this document that talks about e-mail tips, and then there is his book, a downloadable “paper” on using Outlook and finally his software that apparently implements his philosophy of e-mail management. I'm tempted to just throw down the $70 for his Outlook software cause I'm pretty much desperate at this point.

My work discipline around e-mail is so bad that it's spilled into my personal life and my “home” e-mail account is just as pathetic as my work inbox. I avoid looking at my other mailboxes because I can't even deal with my work one. I don't get any joy out of e-mail like I used to when I was new to the net.

BTW - I've always wondered. When you die, where does your e-mail go? Who answers it? Does it just stop when your don't pay your bills and your ISP shuts it down ;-).

Posted Saturday, March 06, 2004    Permalink    Comments [2]  View blog reactions

 

# Wednesday, March 03, 2004

A new gadget weblog

A must visit site for any gadget loving geek! 

Paul Boutin points us at Engadget, a new weblog all about gadgets. This is done by a former co-founder of Gizmodo, which has long been my favorite gadget site. Subscribed.


[Scobleizer: Microsoft Geek Blogger]

Posted Wednesday, March 03, 2004    Permalink    Comments [0]  View blog reactions

 

# Tuesday, March 02, 2004

Problem with cell phone reception?

 Get your own indoor repeater for $500.

Posted Tuesday, March 02, 2004    Permalink    Comments [0]  View blog reactions

 

# Monday, March 01, 2004

Lenn and Jeff are new dasBlog users

Lenn Pryor, who has the unique roll of being Robert Scoble's manager, recently switched to dasBlog. Jeff Sandquist, one of Robert's co-workers also switched over from Radio. He posted a nice How-To on moving from Radio Userland to dasBlog (importing posts, comments etc). It's a little known feature that dasBlog can actually move all your Radio stuff over, as well as continue to upstream your posts to your Radio site (via upstreaming service) as well as map your Radio links to dasBlog links using custom http handlers. Clemens (dasBlog papa), myself and a few others actually moved from Radio to dasBlog using some of these tools.

Posted Monday, March 01, 2004    Permalink    Comments [0]  View blog reactions

 

Pictures of my car

Some pictures of the pile of snow that engulfed my car. It took about 1 hours to dig the car out (2 people). After I got the back out, the All Wheel Drive took over and my car just powered out of the hole it was in. I love AWD + All Weather Tires. Worth every penny ;-).

Posted Monday, March 01, 2004    Permalink    Comments [1]  View blog reactions

 

# Thursday, February 26, 2004

Digging out from under the snow

Never in my life have I seen so much snow (and I've seen my fair share). I've been up in Tahoe since Saturday, and it's snowed at least 6ft in the last 36 hours. I've been learning to snowboard (skiier all my life) and I have to say, snowboarding gets the nod over skiing. It's fantastic. Anyway, the snow is still coming down very strong. The bad news is that my wife did not fair so well. She broke her arm our second day out. Luckily, it was a good break (I didn't know there was such a thing) and should heal quickly. Tomorrow is our last day, and I'm looking forward to seeing San Francisco (although I hear the rain is horrible).

Funny enough I can get WiFi here, but no ATT service. Go figure.

Posted Friday, February 27, 2004    Permalink    Comments [2]  View blog reactions

 

# Friday, February 20, 2004

My Motorolla MPX200 died

Rats! As I get ready to go on a vacation this next week, my Motorolla MPX-200 smartphone just up and died on me. I had to dust off my old T68i (thank god for GSM and SIM cards, I can just swap them).

This is a real bummer though. I was planning on leaving my laptop at home and just getting by with my Smartphone for e-mail access to my MS Exchange account. Seems this isn't going to happen. I've come to depend on my smartphone in more ways than I can help at this point. It's my calendar, contacts list and lightweight e-mail device. It's also got a program called eWallet that stores all my bank financial info etc. In short, this thing is an invaluable tool. Not sure how I'll get by for a week w/o it. Luckily I can use Outlook Mobile Access (OMA) from my T68, but it's slow as molasses.

Posted Friday, February 20, 2004    Permalink    Comments [1]  View blog reactions

 

# Thursday, February 19, 2004

DOCTYPE switch and web design

A lot of people don’t know that the DOCTYPE switch in your web page can have a profound impact on how your page layout works. For example, the CSS Box Model will look different in WinIE 6 depending on the DOCTYPE switch. If you are doing web design today, make sure the browser you are targeting is not rendering in quirk mode.

Here is a great table of all the different effects DOCTYPE switch has on some different browsers.

Posted Thursday, February 19, 2004    Permalink    Comments [0]  View blog reactions

 

Referreral spam from John Kerry?

Yep, you guessed it. Seems that John Kerry’s blog is spamming my blog. I can’t think of any other reason this would appear on my Referrer log.

Posted Thursday, February 19, 2004    Permalink    Comments [1]  View blog reactions

 

# Wednesday, February 18, 2004

IMAP, Thunderbird, and mail clients

For much of my career at Microsoft I’ve owned mail related features. I pretty much designed all the IMAP support in Entourage with Mike Fullerton and Steve Friesen and I’m pretty happy with how it works. IMAP itself is a complex protocol to implement properly (it’s been redone about 3 times now). Each server has its own little nuances, but generally, I love the concept because everything is stored on the server.  I can check my mail from multiple computers and use web mail w/o needing my own personal Exchange account.

However, there are some frustrating things about IMAP such as the delete model. With IMAP when you delete a message, it’s simply marked for deletion. It’s just a flag. In many clients the message remains, and the client must purge the mailbox to get rid of it (purging the mailbox removes all messages marked for deletion).

In Entourage, we offer a delete model (on by default) that behaves like a local mail client (or Exchange). Messages are copied to the deleted items folder, marked for deletion, and the mailbox is purged. However, this is a lot of work for a simple delete. There is no IMAP MOVE command, only COPY. To make matters worse, when you COPY a message on many IMAP servers, you don’t know what the message UID (Unique ID) is in that new folder. This makes it very difficult to support actions such as Undo, or any complex message tracking like we do in Entourage. A way around this is to search the destination mailbox for the message and get the UID. Luckily Exchange now returns the UID by supporting some newer IMAP extensions (UID Plus).

For me, the main features I want in an IMAP client are the following:

  • Support for IDLE (clients don’t need to poll for new mail, they are notified when a new message arrives)
  • Delete messages by copying the message to the deleted items folder, marking the message deleted, and purging the mailbox so that the deleted message goes away.
  • Store Sent mail & Drafts in the Server Sent Items & Drafts folder.
  • Use internet style attributions (Outlook places all replies on the top of the message, ever other mail client allows you to insert the reply either interspersed or at the bottom).
  • Support for Format-Flowed.

 

To understand what Internet style attributions are about, and why Format-Flowed is a nice feature take a look at this pic from a plain text message that I’ve replied to 3 times in Outlook (the same thing would happen in Entourage, OE and a few other products).

Below is a screen shot of Thunderbird and what Internet Style attributions look like, as well as Format Flowed support (where text is wrapped properly). As you grow and shrink the window, the quoted text is dynamically re-flowed as it would be in a web browser. This is much better than the 72 or so character line breaks that can get to be a mess and you end up with text like so:

IMAP Server

So, the mail features I want in an IMAP server are:

  • Server side rules (all mail is directed to folders on the server).
  • Server side spam filtering
  • Backups.
  • Web based interface

I’ve been looking for a decent Windows IMAP Client for the past few years with little success. Luckily I have a great IMAP Server provider, Fastmail. They provide all the features above, and run a decent IMAP server.  I’ve been using them for almost 2 years now.

IMAP Clients

Client wise here is a run down on what I’ve tried (yes, this is by no means scientific, unbiased etc; it’s just based on my experience as a user with these products):

Executive Summary: Thunderbird is an almost perfect IMAP client for Windows. If you use IMAP, this is the product for you.

  • Outlook : Needs improvment 
    1. Does not support the exchange like delete model I reference above
    2. Does not store sent mail on the IMAP server, but your Exchange server or local folder is you don’t have an exchange server
    3. Message must manually be purged for each folder
    4. No internet style attribution.
    5. No IDLE support (at least I don’t think so) Larry Osterman informed me that Outlook does support IDLE. Thanks Larry.
    6. Hard to find messages easily (and no server side IMAP search). Thankfully, MSN Search Toolbar and a number of products like X1, Lookout, etc fill this void very nicely. MSN Search being my favorite.
    7. One of the best Junk Mail Filters (same technology we use at Hotmail)
  • Windows Outlook Express : Needs improvement
    1. Fast as heck
    2. Purges message when you switch from folder to folder, which is better than outlook.
    3. No internet style attribution.
    4. No IDLE support (at least I don’t think so) Larry Osterman informed me that OE does support IDLE. Thanks Larry.
    5. Poor Offline support.
    6. Hard to find messages easily (and no server side IMAP search). Thankfully, MSN Search Toolbar supports this.
  • Windows Eudora : Not acceptable 
    1. Slow as molasses
    2. Frequently corrupts local IMAP folders
    3. Horrible interface
    4. Funky IMAP support.
  • Entourage : Excellent
    1. I helped to design most of the IMAP support, so there is nothing wrong with it (hehe). Well nothing that I’m unhappy about.
  • Thunderbird : Good
    1. Fast
    2. Supports the delete model I like
    3. Junk Mail filter
    4. Internet style attribution
    5. Supports IDLE (turns out at the time that I wrote this post, Thunderbird did not support IDLE. However, this was recently added)!
    6. Easy to find messages and supports server side IMAP search!!!!
    7. Doesn’t support getting unread counts for all folders w/o manually tweaking the application preferences.
    8. Supports mailbox quota

Update: I updated this post to reflect some corrections, edits and changes.

Posted Thursday, February 19, 2004    Permalink    Comments [14]  View blog reactions

 

software is expensive

As a Microsoft Employee I am very spoiled. I have the luxury of being able to install most any piece of Microsoft software I want, or purchasing that software for about 10% of its retail cost. Over time I’ve come to realize that this is a pretty amazing perk since we make so many different kinds of Software (OS, Productivity, Games, Development Tools, etc). I can almost get by with not needing any other commercial software of any kind (kinda scarry). Of course there are some notable exceptions as I mention below.

The other day I decided I needed Photoshop CS. So I figured I’ll buy it. However at $600 or so dollars I have a hard time justifying that purchase since I’m only going to use it to edit digital photos (I’m really getting it so that I can use it to manipulate RAW images for my Nikon D70 which I plan on purchasing). I’ve previously owned PhotoShop Elements 1.0 which is a nice lite version of Photoshop, but even version 2 (which is $99) is 1-2 years behind the full version.

Since my wife is a Resident at UCSF she qualifies for the educational pricing of software. However, the Educational price for Photoshop CS is $300. Still not really justifiable for me. But then I remember, that I have an old 6.0 Mac version of Photoshop, and I can use that to do a one time cross platform upgrade for $169. Sold! I *can* justify it for $169. Of course, one upon a time I had to purchase this full version and that surely cost at least $500.

So what’s my point? Software can be expensive. If you are a geek and need lots of software to do various things, and there isn’t a good free alternative, and you don’t know anyone that works at X company that can get you the employee price, you are left in the position of every other normal person in the world that must pay retail. I guess it comes down to the value that is placed on software. And for something that’s completely intangible, it makes it very hard.

I know lots of people that find the price of software so far outside their ability to afford it that pirating is just acceptable. The mentality stems from the fact that because software is intangible, it’s possible to “borrow” it or whatever. People have no problem with the notion that hardware costs $$ and there is no way around that. However, much like the brain is able to think of $19.95 not being $20.00, we also think of the hardware purchase as the end of the money trail. But with things like PhotoShop, Microsoft Office and so on you can easily double (some day triple) the amount of money required to use your hardware for productivity and image editing. That’s obviously not something that the brain automatically factors in when going to get that computer.

Posted Wednesday, February 18, 2004    Permalink    Comments [6]  View blog reactions

 

Excerpts from a Dog/Cat diary

I’ve owned both, a Dog and now a Cat. I found this pretty darn funny. Our pet sitter, Layne (if you need a pet sitter in San Francisco, she is excellent) forwarded this to me a while back.

EXCERPTS FROM A DOG'S DAILY DIARY

8:00 am - Oh Boy! Dog food! My favorite!

9:30 am - Oh Boy! A car ride! My favorite!

9:40 am - Oh Boy! A walk! My favorite!

10:30 am - Oh Boy! A car ride! My favorite!

11:30 am - Oh Boy! Dog food! My favorite!

12:00 noon - Oh Boy! The kids! My favorite!

1:00 pm - Oh Boy! The garden! My favorite!

4:00 pm - Oh Boy! The kids! My favorite!

5:00 pm - Oh Boy! Dog food! My favorite!

5:30 pm - Oh Boy! Mom! My favorite!

6:00 pm - Oh Boy! Playing ball! My favorite!

6:30 pm - Oh Boy! Sleeping in master's bed! My favorite!

EXCERPTS FROM A CAT'S DAILY DIARY

Day 183 of My Captivity...My captors continue to taunt me with bizarre little dangling objects. They dine lavishly on fresh meat, while I am forced to eat dry cereal. The only thing that keeps me going is the hope of escape, and the mild satisfaction I get from ruining the occasional piece of furniture. Tomorrow I may eat another houseplant. Today my attempt to kill my captors by weaving around their feet while they were walking almost succeeded, must try this at the top of the stairs. In an attempt to disgust and repulse these vile oppressors, I once again induced myself to vomit on their favorite chair, must try this on their bed. Decapitated a mouse and brought them the headless body, in attempt to make them aware of what I am capable of, and to try to strike fear into their hearts. They only cooed and condescended about what a good little cat I was. Hmmm, not working according to plan. There was some sort of gathering of their accomplices. I was placed in solitary throughout the event. However, I could hear the noise and smell the food. More importantly I overheard that my confinement was due to MY power of "allergies." Must learn what this is and how to use it to my advantage. I am convinced the other captives are flunkies and maybe snitches. The dog is routinely released and seems more than happy to return. He is obviously a half-wit. The bird on the other hand has got to be an informant, and speaks with them regularly. I am certain he reports my every move. Due to his current placement in the metal room, his safety is assured. But I can wait, it is only a matter of time.........

Posted Wednesday, February 18, 2004    Permalink    Comments [1]  View blog reactions