I've spent the last couple of bus rides to/from Redmond reading product specs for Cider. "Cider" is the code name for the WPF visual designer for developers -- I'm not sure if it has an "Expression" name yet. "Sparkle" is the visual designer for multimedia/graphics artists, and its official name is "Expression Interactive Designer." Sparkle and Cider are designed to interop seamlessly, creating a collaboration environment for software developers and graphics designers. The goal is to reduce the impedance between these two disciplines to almost nothing.

Underlying Cider is a new design-time infrastructure, which is really turning out to be intriguing. I documented the Whidbey designer infrastructure (check out the portal), and it's very interesting to see how the Cider folks have evolved the object model.

"Evolved" may be the wrong word. They're creating an entirely new object model. Cider is really applying lessons learned from Whidbey. The goal is to create a designer infrastructure with these characteristics:

  • Generic
  • Simple
  • Flexible
  • Reliable

Clearly a tall order, but reading Brian Pepin's specs, it looks achievable. I have to say it's always a pleasure to read Pepin's specs, because he's a top-notch architect, and also because he's an excellent writer. My former boss used to say that if Pepin ever wants a job over here in User Education, he's always welcome. 

This new architecture is so ambitious that it's not an exaggeration to say it may form the basis for design-time systems into the foreseeable future. I intend to do it justice in the doc set.