Tagged with Blend
If you're a XAML developer and have proudly stated that you hand-code all your markup, it’s time to learn how to be more productive. I’ve authored a new course for PluralSight. If you have a subscription, you can view it my new “Blend for Developers” course now:
Hope you enjoy the course!
DevProConnections magazine published my article on Sketchflow back in January. It finally made it to the website. If you're new to Sketchflow and want to learn more about it, check out the article here:
If you're building Internet applications, you've probably been bombarded with lots of new technologies the last few years: Silverlight, Flex, ASP.NET MVC, jQuery, etc. While all of these technologies have their use-cases, many of them are pointing to something that is new and important.
The central idea of separating concerns is not new. Back in SmallTalk when Model-View-Controller was born, the benefits of isolating layers of an application were pretty apparent. The problem was that it wasn't easy to implement. The problem with implementation was never the code...or was exactly the code. The problem is that when you are working on a problem in the user interface, it is far to easy to try and solve it directly in the code. Its not laziness or lack of talent. Its simply a matter of focus sometimes. Under the timeline gun its easy to be myopic about a problem. Its simply too easy to just try and solve a problem by writing code in the user interface (or the View).
I am excited to announce that my new DNR-TV episode is up at .NET Rocks. Carl and I visited while we were both at DevTeach to show off Blend's new SketchFlow functionality. If you have time, give it a spin!
It looks like the Expression team is skulking around and releasing code. They've just released a bunch of behaviors on the new Expression Blend Samples CodePlex project. The number of sample behaviors and triggers is just staggering:
I had a great time at DevLink this year. Met up with lots of great heartland folks and had some really interesting conversations (about Ruby and F# specifically). If you missed DevLink this year, you missed a great conference. John Keller and company put on a great show (for only $100 conference fee). The .NET Rocks panel at the end of the three days capped off a great few days in Nashville.
While I was charming my way through Nashville, I got around to actually giving a couple of talks at the event. The code and slides for my MVVM and Blend talks is now available on my Talks page here:
Recently while in Vancouver for DevTeach, I sat down with Carl Franklin and recorded a couple of DNR-TV episodes. The first one is on Behaviors (and how to write them). If you're interested in Silverlight, Blend or Behaviors...head over the DNR-TV site and take a look.
In my earlier blog entry, I mentioned the Blend SDK that is shipping with Blend 3 RC. For those of you who won't have access to Blend, the SDK is supposed to be available to you. But not quite yet.
I've been told that the SDK will be available as a separate download once Blend 3 ships (no date yet). That means if you want it you need to install the Blend 3 RC that shipped with Silverlight 3. You can find it on the Silverlight Getting Started Page:
I am here at DevTeach and having a great time. I got in a discussion with several of the speakers about the common complaint of some Silverlight/WPF folks that they want Blend to be in Visual Studio; or why Cider has always been disabled by most dev's.
I hear the complaint a lot that developers want the functionality of Blend hosted in Visual Studio. While I understand the desire, I've never been bothered by the dual programs. In fact, I think its better. Blend needs to be separate because its primarily for a Designer/UX role that isn't comfortable with the breadth of Visual Studio.
In the first part of this article, I showed you how to build a very simple behavior using the Behavior<T> class. That class is useful for creating simple behaviors that just require that the behavior know about attaching and detaching of the item.
One of my favorite features of Silverlight 3 (and by extension Blend 3) is the new support for Behaviors. Behaviors are a way to allow designers to add functionality to XAML elements without code. In Blend 3, a couple of built-in behaviors are included (ShowMessageBox and ExecuteMethod). But of course I wanted to write my own behavior.
Also announced today was a preview version of Blend 3. Blend 3 is going to support better experiences for designers and developers. There will be lots of sessions and videos at MIX09 about these features but for the simple list here I go:
I just got the word that I am speaking at DevTeach in Vancouver, BC this June. Its a great conference with lots of your favorite speakers including Tim Huckabee, Ted Neward, Julie Lerman, Miguel Castro, Rod Paddock, Kathleen Dollard, Orin Eini and Beth Massi.
Mike Swanson has updated his excellent plugin to address some issues with the output to make the XAML smaller as well as fix some issues with the way that PathGeometries are created that makes them more Blend friendly. In case you haven't been watching closely (and I wasn't), the plugin now supports export of Silverlight XAML which means that Expression Design isn't the only way to get Illustrator files to Silverlight XAML!
UPDATE: The client doesn't mind that I mention them so I'll tell you that its the great people at SchoolMaster. Siebrand Dijkstra and his crew are doing some interesting things with Silverlight.
I love teaching the Silverlight Tour as pretty much every class I teach I learn something new. I get used to certain features of Blend that do what I need but because of some bugs, I have gotten too good at hand-editing my XAML. In my current class (a private class for a Dutch software company), one of their very bright engineers showed me this trick:
I was explaining how you can specify the rows/columns in the main grid by clicking on the top/left bars as seen below:
The feedback system that Microsoft uses seems broken. It works well in letting us know what they are doing, but the MS team never seems to tell us why they aren't going to fix something. Its really frustrating to spend the time to try and alert them to a problem and to feel brushed off.
Don't get me wrong, I understand why development teams have to prioritize some bugs and features over another...but at least a single sentence from the team saying why they didn't think a bug is worth fixing isn't much to ask.
There is an updated build of Expression Blend's August Preview. For some users it complains that wants a CD key and has an expiration date soon (mine is at seven days). It was supposed to work without a CD key and it looks like they've fixed it. Tim Heuer mentioned the new build so if you're having the problem, please download this new version
I've created a simple template for creating a new WPF/E template for Blend. Simply download the .zip file and extract it your Blend directory (usually c:\program files\microsoft expression\blend 1.0\). Once you do that you can "Add New Item..." and add a WPF/E Asset like so:
I've blogged about how short-sighted it seemed that the Expression tools were not going to be available to MSDN Subscribers. I am glad to report that they have come to their senses! I think it is a great comprimise to include Blend and Web in MSDN. Expression Design and Video will still require additional licensing outside of MSDN, but they are less developer tools anyway.
I want to thank everyone inside of Microsoft who I know lobbied hard for this. It was a big political fight and it required opinions across the company to sway the decision. I for one will appreciate the benefits of this fight.
While I like the Expression Studio toolset I am dismayed that these tools will not be available for most developers without the extra expense. It seems at this point that Expression Studio will *NOT* be available as part of MSDN Subscriptions, but instead will require separate purchase options. It would seem to me that Expression would widen the MSDN subscription base to include designers in organizations and improve early adoption of the tools as it would get them in people's hands faster.
I hope Microsoft revisits this decision and reverses it.
For me, one of the compelling "WPF/E" stories is the toolset. Like WPF, the Expression toolset is meant to fully support "WPF/E". Currently the new Expression Design (was Expression Designer) support export to "WPF/E" XAML. Expression Blend at this time doesn't support "WPF/E" natively but with a little coaxing I have demos that show it working that i'll be showing off soon.
The interesting bit is Expression Media which will enable Video producers to create video pre-built with "WPF/E" XAML wrappers ala SoapBox and YouTube.