Monthly Archives: August 2007

Did you know… series from Sara Ford

Sara Ford, an SDET at Microsoft who I’ve been subscribed to for a long time, has lately been writing a bunch of posts all starting “Did you know…” like this one. Each posts touches on a single VS.NET feature that is likely overlooked by many. Over the years I blogged about similar features in Delphi and although I’m not currently using Delphi I’m sure a series of posts like would be well received.

So, Nick there you go, a near endless stream of potential blog posts. Have at it man!

Btw, I’ve been following my own advice and trying to learn things I didn’t know about VS.NET particularly related to code editor features. Many years ago I added the Visual Studio key binding to Delphi which made transitioning to VS.NET more or less pain free at least regarding the most common IDE/debugger shortcuts. 

Sara, if you happen to read this thanks for your posts on Katrina and I hope in the near future you find both physical and mental healing. Keep those posts coming!

Nikon RAW file codec for Windows Vista

This morning I copied a few Nikon RAW .NEF files to my computer and browsed over to Explorer to try and view them but they weren’t linked to any application. So off to Google where I found this post regarding a codec Nikon released for Windows Vista RAW file support. I’ll admit I had never actually run the Windows Photo Gallery application that comes with Vista since I don’t look at photos much on this machine but as soon as I launched it I was prompted for an update (as indicated in the blog post) which directed me to Nikon’s download page for the codec (that’s the English version).

Our minivan pick is the 2007 Honda Odyssey EX-L

2007 Honda Odyssey

Awhile ago I blogged about looking for a mini-van, either a Honda or a Toyota. After a lot of research, largely by my wife since it’s her car, asking friends and neighbors regarding their choices we decided on a 2007 Honda Odyssey EX-L. We purchased it using a broker located in Seaside and believe it or not it was an enjoyable experience, a first for my car buying career. It was delivered on time to our house where we filled out all paper work at our kitchen table in about 35 minutes at a significant savings over all of the dealers we talked to. The delivery driver was very knowledgeable and took us through a tour of all the available features which, btw, was about our third such tour having been to several dealerships. My wife, once very skeptical about becoming a mini-van driver is now asking why we didn’t do it sooner.

The Odyssey drives nicely and the interior is very roomy. The turning radius is very good turning much tighter than our Toyota Highlander. For me the only real bummer is that lack of memory seats especially considering my wife and I differ in height by slightly over a foot. That option is only available with the higher end Touring Edition but we felt it wasn’t worth the multi-thousand dollar price difference for that feature alone. I find it odd Honda excludes this feature on the EX-L since it’s actual cost must be pretty small considering all of the mechanical equipment is in place. One of the dealers told us that the Odyssey is the only Honda vehicle where that feature is missing in all but the most high end car. Apparently, several other lines offer it below to top end.

Another one of the major reasons we decided not to go with the Toyota was the cost was significantly higher for what we considered the same features.

Now, I just need to get a for sale sign on my ’97 BMW 318is. It’s in good shape and has only 80K miles on it.

Microsoft Expression Design and Blend not ready for prime time

The last two days I attended Microsoft Expression Design and Blend training with several colleagues from Falafel and my overwhelming take away was, these tools aren’t ready for prime time. My only guess is that Microsoft is trying to get these early beta quality tools out there to try and build mind share. Not only are these tools lacking in many major areas, a point made abundantly clear by the instructor’s constant stream of workaround and head scratchers, the high level strategy of where this product line is headed and how it’s going to enable designers and developers to work better together seems to have been left on the cutting room floor. Granted, I understand these are 1.0 products but XAML has been under development at MS for many years now and these products are lacking in some of the very basics.

Missing Workflow

In my mind the first and major flaw is the lack of support for iterative development. This is perhaps best illustrated by the fact Blend can’t open .design files produced by Design nor can Design open XAML files directly. In fact, to get from Design to Blend you actually have to export from Design to XAML. How this makes sense is simply beyond me. There doesn’t seem be to any real work flow from Design -> Blend -> VS.NET so I’m not entirely sure how you would incorporate these tools into a development process.

Flawed UI

Microsoft Expression Blend UI controls

The UI of these products as compared to VS.NET 2005 is severely flawed. From the non-standard UI controls and menus to the almost complete lack of keyboard support make using these products tiresome. Many elements of the UI are tiny glyphs some of which have function (circled in red) where others serve as labels (circled in yellow).

Microsoft Expression Blend UI

Microsoft Expression Blend UI

Another sore point for me is docking, it’s not implemented. Seriously, you float the various property windows but you can’t dock then in anything but their predetermined location. Oh yeah, and they always float on top.

The UI has a number of confusing aspects, one being the difference between a tab and a button. Pictured to the left is an example of where “Event” is a button and “Project” is a tab where the glyph will cause the window to float.

Btw, what’s with the Gothic styling?

Poor Quality

With VS.NET 2003 Microsoft had some major quality issues and with 2005 they left the product in beta for a very long time to work out the kinks which I think really paid off. The Expression products are tied to a completely different quality metric that seems unrelated to Microsoft’s developer tools. While I didn’t experience crashes there were plenty of times where I was left wondering exactly what had happened and how I got the design surface into a particular state. I’ve already mentioned the keyboard issue but it’s so bad it’s worth repeating. The property editors are largely mouse only including Blend’s hierarchical view of your UI layout. Additionally, the selection logic is totally flawed with both a highlight rect and a selected item at the same time. Expression also brings to the table a context menu style I’ve never seen before in Windows where clicking and holding causes a context menu to appear though you can also right click as well. 

Conclusion

First, if you I’ll add that Joshua (didn’t catch his last name) from IT Mentor was a great instructor and very knowledgeable about the Expression products so kudos there.

While there is lots of promise in XAML for UI design and development this first cut for these tools isn’t up to par in my book. I think there are some nice concepts embodied here but they have a lot of maturing to do before they can be considered widely useful for day-to-day design and development of Windows applications. I do find it rather ironic that these tools which are designed to help you create high quality UI’s have so many seemingly obvious UI problems. Bottom line, if you’re considering Design and Blend be sure to take full advantage of the trial period!

Delphi Custom Search Engine – update

Awhile ago I created a Delphi custom search engine and when I went to create a new search engine I took a peek at its statistics on Google Coop. Much to my surprise this search engine is actually averaging 17 searches a day. Sure, that doesn’t exactly sound like much but I was really expecting zero as I never got much feedback about it. I’m glad there are at least a few people out there using it. Here is a chart of it’s usage: 

image

I think the April results are so skewed because I was testing it a lot and it’s when I first blogged about it. I really like Google Coop and have created a custom search engine for my OPML allowing me to do easy blog searching. If you’re using the Delphi search engine and have sites you’d like added to the list just leave a comment and let me know or if you’re using it and find it effective that would be fun to know as well.

Btw, I tried adding some JavaScript to this post to display the top queries but it seems Google’s JavaScript is busted. Oh well.

Working with new developers means new tools, at least new to me

Having started work at Falafel I’m obviously working with a new, as in new to me, group of developers where previously I’d been working with many of the same guys (no women in Delphi R&D) for the past 7-8 years. As with meeting any new group of software developers you’re bound to learn about tools, utilities and technologies you either haven’t heard of, never had the chance to try out or had no specific use for at the time.

One of those is Notepad++ which I finally decided to install it after seeing Lino fire it up and tweak a web.config file with syntax highlighting and more. I’ve also started using Microsoft’s LogParser 2.2 which I remembered reading about long ago but never really had much use for until recently when got into ASP.NET development on a large deployed application developed by Falafel. I now wish I’d looked at it more closely a long time ago as it’s an incredibly powerful tool.

Some other tools I’ve been using recently are NUnit and FxCop which I’d read a lot about but since I didn’t work much on managed code while at CodeGear I never had the opportunity to use in production until now. Lastly, there are the portable versions of some of my most often used apps which I think are great and I’m using everyday.

Anyway, as you can probably tell I’m kind of like a kid in a candy store right now and really enjoying the chance to work with a whole bunch of cool “new” tools, and people.

Using Windows Live Writer on an ASP.NET blog? Check out Phil Haack's HTMLScrubber

I’ve been using dasBlog which runs on ASP.NET and posting to my blog using Microsoft’s Windows Live Writer (WLW) which is a very capable blogging client. Of course, the only downside is that it has some really annoying markup quirks like inserting non-breaking spaces (&nbsp;) and empty paragraph tags (<p>&nbsp;</p>) all over the place. Well, thanks to Phil Haack, who happens to be the dev lead on Subtext another great ASP.NET blog engine, has kindly provided an HTTPModulethat takes care of some of these markup-isms and will work for ASP.NET blog engines that support the MetaWeblog API

If you’re writing with WLW and using an ASP.NET based blog engine you should check it out. But I can’t really complain the price of Live Writer is definitely in the sweet spot.

Thanks Phil!

Updated list of my FireFox Add-ons

I hadn’t updated my list of FireFox add-ons for quite awhile and with the release of Yahoo’s YSlow for Firebug and my recent excursion into Selenium I decided it was time to refresh my list and at the same time I’ve moved it to my wiki so it will have a history of changes. After using YSlow I made a number of changes to my blog to improve load time as well so hopefully you’ll notice at least some slight improvement.

Anything I’m missing?

Bandwidth speed consistently faster in IE than Firefox is a USB drive to blame?

linksys wrt150n

I recently purchased a LinkSys Wireless-N router ($99 on sale at Radio Shack) so I can roam around the house with my laptop. As a result I decided to do some bandwidth testing using broadbandreports.com‘s speed test as there is a server in Palo Alto, ~26 miles from my home, and it seemed like the results I was getting from Firefox were a bit slow. I started up IE to do some comparisons and found a not insignificant difference. As you can see on the graphic ComCast is my ISP which is easily three to four times as fast as what I was getting with my old DSL connection.

Results Using Internet Explorer 7.0.6000.16473

Results Using Mozilla Firefox 2.0.0.6

These results have been fairly consistent across a number of tests. I’m wondering if there is perhaps a performance penalty for running Firefox from a USB drive? All of these tests were conducted on my laptop.

I’ll have test again at the office (also wireless) tomorrow and see how things compare. Of course, I’ll probably install Firefox for a true apples-to-apples comparison.