Simple and intuitive image-based navigation

September 30, 2010

My fiancé has been hard at work setting up her online business, selling vintage knitting and crochet patterns.  She has hundreds of patterns that the customer can browse.  The original catalog UI was basically just a huge hierarchy of categories, such as Knitting/Women/Dresses.  We tossed around a few ideas, and landed on something much more user friendly.  Instead of presenting lists of words, we decided instead to show pictures.  She rolled up her sleeves, learned some HTML and Javascript, and made it happen.  The result is very cool and much more user-friendly.  I will definitely use this approach in other UIs that I build in the future.

If you want to check it out, go here: http://shop.princessofpatterns.com/pages/catalog

Sorry if this post seems like a thinly disguised plug.  I’m just very excited about this, and proud that my cohort in crime is turning into a developer!

If you know anybody who is interested in knitting or crochet, please pass the link along.  🙂


Consuming resources from external assemblies in Silverlight 4

September 24, 2010

There’s a bug in Silverlight 4 that prevents you from being able to use resources that are declared in a ResourceDictionary in a referenced assembly.  The error is a XamlParseException whose message is “Failed to assign to property ‘System.Windows.ResourceDictionary.Source’.”.  The problem is that if you have a Silverlight class library whose name ends with “.Resources” it blows up at runtime.  To fix the problem, you must change the assembly name (in the project properties) so that it does not end with “.Resources” but, perhaps, ends with “.Resources.YouHaveToBeKiddingMe“. 😉

Here is an example of using a resource dictionary in an external assembly that will blow up at runtime:

Here is a fixed version:

If you compile a Silverlight application against a project whose assembly’s name ends with “.Resources” that DLL won’t even get included in the XAP or listed in the AppManifest.xml file.  It simply gets ignored, which lead to hours of head-bashing debugging for me.  I hope this workaround saves others the grief!


I’ve gone Mac (will I ever come back?)

September 16, 2010

I couldn’t resist any longer.  I bought a Mac.

Fear not, I’m still madly in love with WPF and rather fond of Silverlight.  But let’s face it, Apple is doing very, very well these days.  Everyone and their grandmother has an iPhone or iPad or MacBook, etc.  For the sake of career growth, job security, skills development, not to mention a shiny new toy, I decided to take the plunge.  I’m really excited about learning Objective-C, Cocoa, CocoaTouch, MonoTouch, and all the rest.  It’s like Christmas morning for me!

My journey of  learning how to tell an Apple device what to do will be logged in my new blog called iJoshSmith.com.  If you’re interested in seeing what it takes for a WPF/SL/.NET dev to warp his mind into Appleness, check it out!