Saturday, July 14, 2007

Silverlight 1.1 in Action - The Book


I am currently working on a book that will target Silverlight 1.1, called "Silverlight 1.1 in Action" and I am seeking some feedback from the community. The first half of the book will address the UI elements of Silverlight, while the second half will discuss the .NET Framework provided with Silverlight 1.1.

Because the first half of the book is squarely focussed on UI components, I thought it would be nice to add some additional value to the book by explaining how to create the various UI components using Microsoft Expression Blend. The incorporation of Blend has caused some internal debate between me and myself. However, I feel that incorporating Blend is important because it may introduce readers to a new, productive tool, while at the same time, helping readers build a vocabularly that can help to communicate with designers more effectively. Essentially, for each UI element, I want to provide the following:
  • An illustration that shows the UI element that is created
  • The XAML that corresponds with the illustration
  • A walkthrough of how to use Blend to create the UI element.
My debate is as follows:

Option 1 - Provide all three items (the illustration, the XAML, and the walkthrough) for each UI component. Here are the advantages/disadvantages I see with this approach:
  • Advantages
    • Readers do not have to flip to the back of the book for Blend content.
    • Encourages the use of Blend while reading the text
  • Disadvantages
    • Takes up a lot of space. This may cause the reader to skip pages to get back into the developer focussed content.
Here is a sample of creating a MediaElement to give you a feel for how this may look in the text if Option 1 is used.

Option 2 - Provide only the illustration and the XAML in the text. Then, reference a walkthrough which is provided in an appendix, instead of in the actual text. Here are the advantages/disadvantages I see with this approach:
  • Advantages
    • Keeps the reader focussed on the developer related content.
  • Disadvantages
    • Treats Blend as a second-rate citizen (it's not, it is especially helpful if you are creating animations)
    • Causes the reader to flip between the actual text and an appendix, this searching can be annoying.
Here is a sample of creating a MediaElement to give you a feel for how this may look in the text if Option 2 is used:

Personally, I am leaning towards Option 2, however, I wanted to seek some feedback before going too far down this path. I look forward to your comments and thank you for your help!


aaron said...

I vote for Option 2 for similar reasons: large "tangents" from the text can be distracting and cause readers to either get frustrated and give up (at worst) or have to spend time skipping to the continuation of the text (at best).
Also, while Blend is a crucial tool for XAML development (design, really) your book is about Silverlight, not Blend, and if I bought it for its Silverlight content I'd be frustrated with all the embedded Blend content (especially since Blend is a product you must purchase).
Since it's still very relevant, I think it's a great idea to include the walkthroughs in an appendix or something.

Just my random thoughts. :)

Anonymous said...

I have to agree with you and also think Option 2 is the better decission.

Good luck with your book. Can't wait to read it!


Marc said...

Option 2 all the way or as you say the front may get a little bit bloated and skippy.


Personally, I would like option 1, but since this is a paper back book and not a web page/pdf, I guess option 2 is more suitable.

Peter Kellner said...

I'd leave out blend (and shorten your captcha string too)

Chris Woodruff said...

I would first ask for whom this book is written. If you are writing it for developers who have minimal design experience or designers that have minimal development experience? I am a developer with some design work in the past so this comment will be from my perspective.

I like the #2 option but I am finding that the Blend tool is so foreign to a developer type as myself that if you do not incorporate the walkthrough in the book this may lead to developers not getting good knowledge of the tool.

Might be good to look at a middle solution where the walkthroughs are in a walkthrough appendix in the back of the book and you reference that in the main book.

Looking forward to seeing yours and other Silverlight 1.1 books hit the market.

Anonymous said...

I'm a developer and with the advent of WPF and SilverLight, I also want to become a designer. I've been designing UIs for apps for years and why not become a better UI designer using new technology. However, no one seems to care to convert developers into designers, and I think if you stop and think about this point, you'll get a huge audience of developers who can step to the other side and do designing and developing at the same time. My vote is for option 1 to handhold the developers into becoming a designer!

My two cents!
Good luck and I look forward to your book!


Anonymous said...

My vote goes to example 1. I hate having to flip backwards and forwards through books.

Jaysoft said...

I agree with option 2. As you said this is a Silverlight book and while Blend is important in this space, there will also be numerous Blend books out there soon.

I prefer books to have focus, not cover lots of other stuff. For example, I am very interested in Silverlight, but not for creating multimedia experiences, so I will never use Blend. For me at least, the Blend bit would be just so many dead trees wasted.

Chris said...

I guess i would vote for option 2.

Although, another idea would be to go with option 2 but provide a cd/dvd with the book containing the walkthroughs in video.

Personally, the video tutorials on channel 9 or thewpfblog have been very helpful in starting with blend.

Anonymous said...

I'm a developer that just installed Blend to try out Silverlight. I browsed here looking for some Blend tutorials. Right now, I don't care about the XAML, I just want to know which button to push.

So, I need option 1, but you could probably leave out the pictures to save space as long as you had:
1. Start a"New Project".
2. etc.


Mike said...

I would say provide either an appendix or a third part (UI, Blend, Development).

Either way I look forward to the book!

C# Disciple said...

I vote for option 2.... yet i guess an appendix with the blend walkthroughs would be nice

C# Disciple

Ian said...

Yes, IMO they are related but seperate technologies that i personally would wish to explore (to a certain extent) independently of each other.

So option 2 gets my vote.

When will the book be available?

Chad Campbell said...

I am shooting to have the book completed by the middle of Sept. Then, there will be a couple of months needed for actual publishing.

However, ultimately, it will be dependent upon how far along the Silverlight 1.1 release is in development. The second half of the book is really focussed on the .NET features and I would really like the content to be accurate.

Thank you for your interest!

Michael said...

I don't intend to do comlpex XAML without using a tool like Blend. I am reading a WPF book now and simply skip over the long sections of XAML they show.

Anonymous said...

Opt 1 is TOOO VERBOSE. imagine all the 'Step 1. Start New Project..." wasted space! Assume we know the basics of Blend (I do, they will) and CONCENTRATE on silverlight and few example procedures start-to-finish in Blend, especially when doing something just uniquely done for Silverlight.