-
Next week I will be in New York City meeting customers and I will be holding a free half-day mini-workshop at the Microsoft office on 6th Avenue to teach people about building Silverlight and WPF applications with Expression Studio and Visual Studio. ...( Read More...
-
I love using Expression Blend. With both a design education (architecture) and a career in software development, I've become somewhat of an expert on using Microsoft's Expression Blend for designing WPF and Silverlight user experiences. Over...( Read More...
-
If you have any interest in Expression Blend or how I made these journals , you should vote for the two panels that I've submitted for the South by Southwest (SxSW) 2009 interactive festival : Extreme Expression Blend for Silverlight Designers - as many...( Read More...
-
I created something cool that I'd like to share with you. Imagine if your company had a beautiful luxury product that had intricate workings and you wanted to show how it worked as well as have a way for the product's owners and fans to show it...( Read More...
-
I know it's short notice, but next week I am running a 2-day training on Expression Blend 2.5 and Silverlight 2 in San Francisco for Interactive Designers . I have a few openings left so if you are interested in coming May 20 and 21 to the Microsoft...( Read More...
-
If anyone went to the Google home page today (I'm sure there were a few) they would have found the Google banner commemorating 50 years of the LEGO block. LEGO blocks were my favorite toy as a child; I spent hours building, rebuilding, designing, creating,...( Read More...
-
If you want to see some great graphic effects in Silverlight and learn how to do them, you've got to go over to this website and see a tutorial on how to do this effect in Expression Blend and Silverlight....( read more ) Read More...
-
This week, I invited designers and developers in my Media and Entertainment accounts and creative agencies that work with them to a workshop in Los Angeles where they learned about Expression Blend and Silverlight. It was a great mix of designers and...( Read More...
-
We just completed an 2-1/2 day Expression Blend and Silverlight training course in Denver for some of our communications sector customers and really saw some eyes light up. Our intention was to give our customers some hands-on experience with Expression...( Read More...
-
Last month, I wrote this blog post on how I was using the Webdings typeface to create graphics for Silverlight applications. Well, on Friday I got my MacBook and instantly saw that with Silverlight installed, Webding characters were not showing up in...(read more)
-
As you can see, I have been experimenting with posting video on my blog now that I have a HD Video Camera ( JVC GZ-HD7U ). I have been trying various encoding formats in Expression Encoder to get a good balance of bit-rate and quality. Here is my workflow:...(read more)
-
Once you start working with a good design tool enough, it changes the way you think and see the world. Learning to draw nude figures gave me an appreciation for drawing and then seeing shade and shadow. With demonstrating and using Microsoft Expression Blend with Silverlight, that has happened to me. In my previous post, I was explaining how I could see MindManager maps in the XML and how it was similar to the scene in the Matrix. Why couldn't I show what I meant with Silverlight? It was remarkably easy: about 20 minutes of my time.
I created one XAML file for the background and one for a character. The background was just black. The character had the size, coloring, gradient opacity, and animation. All I would do is continually create characters and put them in randomly:
function DropCharacter()
{
var host = m_root.getHost();
var character = host.content.createFromXaml(m_characterXaml, true);
var text = character.findName("Characters");
var Charset = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890~!@#$%^&*()_+{}|[]\:\";'<>?,./";
text.Text = "";
for (var index = 0; index < 10; index++)
{
var charIndex = Math.floor(Math.random() * Charset.length);
text.Text = text.Text + "\n" + Charset.charAt(charIndex);
}
var dropCharacter = character.findName("DropCharacter");
dropCharacter.addEventListener("completed", function(animation, nullArg)
{
m_root.children.remove(character);
});
var left = Math.random() * m_root.Width;
var top = Math.random() * m_root.Height;
character["Canvas.Left"] = left;
character["Canvas.Top"] = top;
m_root.children.Add(character);
setTimeout(DropCharacter, m_frequency);
}
I have attached the source code so you can see how it's done. If you want to put the falling characters on your site or blog, just put this tag in the HTML:
<iframe align="right" src="http://silverlight.services.live.com/invoke/216/matrix/iframe.html" frameborder="0" width="150" scrolling="no" height="100"></iframe>
All I ask is that you link back here.
-
I just came back from an all-day Silverlight workshop that I gave at one of my customer's offices for about 25 people. I got some great confirmation about the designer-developer workflow that we are proposing with the Expression Studio. One of the more enthusiastic participants in the training was an interaction designer. She was the only one that came with a Mac notebook; everyone else had windows notebooks. She promptly launched Expression Studio in Vista from Parallels (the system that lets you run windows on a Mac). She definitely wasn't about to give up her Mac for a Windows notebook but she really understood what it means to have the graphic designer create geometry and graphics that were used directly by the interaction designer (her) and handed off to the developer to hook up the application logic. It meant that she could confidently create designs that she knew were going to be implemented. This design fidelity - the ability for her design intent to be carried out in the final software product is what she was excited about.
This reminded me of one of the main issues that prompted me to go into software instead of architecture after getting my professional degree in architecture: the problem was the in order for a three-dimensional design to be created in three dimensions, it needed to be abstracted into paper (blueprints). Going from 3- to 2- to 3- dimensions is inefficient, inexact, and therefore problematic. But that process is a standard practice all over the world for getting buildings built. One architect, Frank Gehry found a way around the 3-2-3 problem by keeping the building model digital from design to construction. That enabled the kinds of designs like the Bilbao Guggenheim museum.
With the Expression Studio, an all-digital workflow is possible. What kinds of amazing designs will start to see coming from designers using that tool set? Who will be the Frank Gehry of interaction design? Amaze me!
-
I was having dinner with a friend yesterday (non-Microsoft) who manages a software development team and he told me that he was excited about the potential of Windows Presentation Foundation (WPF) and Expression Blend for his company's products. With that excitement also came some questions about how he could integrate the designer/developer workflow that Blend supports into his existing team. For him, it was clear how the interaction designers would use Blend to create XAML that would then be wired up to business logic by the software developers. What wasn't clear was the workflow further down in the development process once bugs and enhancement requests are then submitted against the code in development. Would the interaction designer then be responsible for fixing bugs and making changes in the XAML?
I answered him that in the short term the developer would use Blend in conjunction with Visual Studio. In my opinion, the interaction designer would probably not be involved in minor maintenance and bug fixing for the XAML, only major interaction changes. Because developers would get Expression Blend as part of their MSDN Premium subscription, they could use Blend to do visual XAML editing. Another option is to use Visual Studio 2005 which does have a XAML visual editor as a free download, part of the .Net 3.0 Extensions, but it is not as robust as Expression Blend. The upcoming version of Visual Studio, codename Orcas, will have a much more fully functional visual XAML editor for WPF.
Now that Microsoft finally has tools and technology that separate interaction design from code development, I think that we're going to see many companies reexamining and changing how their software development teams work to build better user experiences. Putting that in context with yesterday's release of the iPhone, we really see that great user interaction does matter. I see the increased importance and legitimacy of this very important role in information technology, so half-way through 2007, I would like to name this year:
2007: The Year of the Interaction Designer
Let's see if it sticks!
-
Just when you get really good at a tool, you find something better. This happened to me when I moved from C++ to C# for desktop application development. I see it happening again with Expression Blend which you can use to design windows user interfaces and Silverlight applications.
Here is simple application that I built recently to create Silverlight streaming applications and upload them to http://silverlight.live.com. I built it using C# and Windows Forms on Visual Studio 2005. This week I am learning about .Net 3.0 which includes WPF.

The application that Microsoft delivered for designing WPF applications is called Expression Blend and it is aimed at User Interaction Designers like Lars Jensen and Gerelee Goltsev at Mindjet (You'll see their talent when MindManager 7 comes out at the end of the Month with the Office 2007 Fluent Ribbon UI). Typically user interaction designers use tools like Photoshop to communicate design intent to software developers. They typically don't use the Form designer in Visual Studio. I have used Microsoft Visio in the past to design interfaces and that worked well for me. The problem is that there tends to be a disconnect between the tools used to design the UI and the tools used to implement the UI. The workflow is not fluid because the design surface that the user interaction designer works on is not the same design surface that the developer uses to builds the software. The creators of Expression Blend at Microsoft knew that and created it to address the design/build workflow that is common in software development.
As an exercise in learning WPF and Expressions, I reimplemented the user interface in Expressions:
I experimented with using a gradient background. This was done entirely in Expressions Blend. I know when we did visual effects in MindManager like gradient backgrounds, it was done in C++ code and not in the design tools, where it should be done. Now If I want to make any changes to the user interface, I don't have to touch the C++ or C# code at all. Designing and making changes to the UI of an application just got much easier!