Welcome to Pete Brown's 10rem.net

First time here? If you are a developer or are interested in Microsoft tools and technology, please consider subscribing to the latest posts.

You may also be interested in my blog archives, the articles section, or some of my lab projects such as the C64 emulator written in Silverlight.

(hide this)

Silverlight 3 Book – Tell me what you want

Pete Brown - 11 April 2009

I’ve officially embarked on writing the second edition of Manning’s Silverlight 2 in Action. The first edition was written by Chad Campbell and John Stockton and is considered by many to be one of the best Silverlight 2 books available.

With Chad taking time to speak more, and John expecting a special delivery of his own, I was asked to write the revision. I’ll be revising it to update to Silverlight 3 (and a few things announced alongside Silverlight 3), and to include material that I think, and you the community thinks, is important.

So, what do you want to see in a Silverlight 3 book? What content would make you say “ok, have to have this book”? What content would make it something you’d recommend to your team?

If you read Silverlight 2 in Action, what did you like? What did you dislike?

If you’re just getting into Silverlight, what do you find to be the hardest things to pick up?

I can’t promise I’ll get every suggestion into the material, but I’ll certainly try. I want to write a book that you all want to read and want to recommend to others getting into Silverlight 3 development.

Comment below and tell me what you want – be brutal, be nice, be verbose or terse – just tell me what works for you. :)

posted by Pete Brown on Saturday, April 11, 2009
filed under:      

25 comments for “Silverlight 3 Book – Tell me what you want”

  1. Laithsays:
    <p>Here is what I'd like to read about: </p><p>1. Advanced techniques in restyling controls. For example, the DataGrid is extremely difficult to style and customize, and there's not much information about this on the Internet. It leaves you in trial n' error mode. </p><p>2. Data! Getting info back n' forth from the client properly, securely, and efficiently. Tutorials online always give the same "Hello World" example. We need something that shows off using more than one database table and with relationships that need to be loaded on demand by the client. What's possible, what's not, what's good, what's bad. </p><p>3. How do we include animations as part of the flow? For example, when the user clicks a save button on a form that's two-way binded to an entity, every element that's binding to that entity will automatically change. How can we include animations as part of the sequence of events? When the user clicks save, I want to run a few animations before data binding occurs. It leaves us with a lot of "On storyboard complete, do this... on storyboard complete, do that". </p><p>4. Pitfalls. It takes a considerable amount of time to create controls with animations, and sometimes only at the end do you realize that "it can't be done this way". This is wasted time. It would be good if we had a few tips in advance. </p><p>5. MVVM in detail. Again, all tutorials online are "Hello World" examples. I'm trying to build something massive and sexy, but I only have basic tutorials to learn from. It leaves me guessing. I think I can come up with a few hundred points, but this is a quick list of things that are bothering me and holding me back. :) </p><p>Regards, </p><p>Laith</p>
  2. Jimmysays:

    I second Laith on 2 and 5.

    Also, something about developing in an async world. What to look out for when coming from Windows Forms / other "old" technology.

  3. Pete Brownsays:
    From these and comments elsewhere it seems like MVVM is a technique everyone really wants to have in there. Sounds like a good topic to me.

    Thanks for the great feedback. The datagrid restyling might make for better blog posts than a chapter in the book, but I totally get the need. I agree with #2 and have some ideas there. #3 is an interesting topic I haven't really thought about. #4 good advice, I agree. #5 MVVM : yep, I'm thinking I'll add a chapter that covers MVVM, Testing and Debugging (tools/techniques) in Silverlight apps.

    @Jimmy Great, thanks!

    @Antonio Got you on #1, #2 (now) and #3, so I think I'm on track so far :)

    Thanks all! I'm really interested in any more feedback you or others have. Plus, once the early access versions of the book come out, let me know what you think.

  4. Parag Mehtasays:
    Hi Pete,

    As reader of Silverlight 2 in Action, I think this book should be a sequel as well as a refresher from previous version.

    One thing you can take out is some of the beginner topics. I think "in Action" shouldn't be aimed at beginners and should expect some familiarity with Silverlight.

    My Wishlist :
    => End to End Demo like gentleman above said. May be using a a POCO and then getting data back from server, mainly it shouldn't be tied to a framework like .NET RIA services.
    => Tricks to "Optimize" XAML and build outputs by usin common accepted techniques, using PNG vs XAML for icons and stuff etc
    => Lazy Updating Patterns (Like updates only after a batch of changes are done on UI etc).
    => MVVM as the guy above suggested.
    => Networking side : Implementing Push Model from Server : Best techniques without using Sockets etc.
    => How to do Offline Applications with Ocassionaly Synched to the server. etc.

    That's all I have in mind right now. But I hope next version of the book is going to be like or even better then the previous version.
  5. Rachida Dukessays:
    Thanks for giving us the chance to give you our ideas about the next book.
    I will agree with all previous suggestions.
    1.The best practices to use .NET RIA Services in silverlight 3
    2. An to end to end application sample like the one from Mix 09 called: Building Amazing Business Centric Applications with Microsoft Silverlight 3
    3. authentication in silverlight 3
    Rachida Dukes
  6. Owensays:
    Haven't read SL 2 in Action, but most SL books I've looked into assume that you're relatively familiar with WPF and some of them focus heavily on interaction with Blend. It'd be nice for a book to assume neither.
  7. Ben Hayatsays:
    Pete, I think you are capable of writing about any of those topics, however seeing your strength, I think you should write a separate book on Developing Enterprise LoB application that follows a modular and 3-tier system. There will be many books on SL3 features, but building business apps will go beyond all those. Just my two cents!
  8. Mike Greenwaysays:
    Hi Pete
    I'm new to everything WEB, hence the following.
    • Most the example stop at the VS development server, they forget that I need to get it working on my hosted site and when you want to include your own WCF service it get much more difficult.
    • Everybody talks about the delayed downloading of components and then tells you nothing on using them. I finally found a way to uses dynamic components without reflection and enjoy strong typing, but I'm just making it up as I go along.
    • What is the easiest way to work with a collection of objects on the server. I want SL to pass a query to the server and return a subset of a collection. Every body starts with databases on the server, I don't want no stinking database.
    Thanks for listening
    Mike Greenway
  9. Stefan Turalskisays:
    Hi, even having MVVM covered it would be nice to cover testing technicques. How to check if my data binding is shown as I have expected? I will guess that there is someone with nice pet project that have done so...

    Maybe a little bit about Silverlight in Azure colours? As .NET RIA might be still in beta stage, basic Azure services should be around when S3 will go gold.

    Some cool (3D) transformation examples would be nice too.

    And as it was mentioned, the very basics could be removed. By the time that Silverlight 3 will be out there, all should be able to create basic 'hello world' apps.

    Waiting for great book :-)
  10. Mike Bluesteinsays:
    I really think at least a chapter on Prism would be good. I also think dynamic languages have been short changed from all parties (authors, Microsoft (other than the DLR group itself) and the non-Microsoft communities (namely python). There's a lot that could be done here and a little more coverage for the mainstream (early adopters won't wait for a book anyway and they/we are often viewed as an edge case) would help I think. Some sort of example that pushes the limits of the out-of browser model would be good too. The duplex example in the first book wasn't so good (although the overall book is great) and without some wcf background I don't think I would have been able to figure it out (fortunately I did with some help from the fine folks at Microsoft). They are making this easier in SL3, but a better example (including some discussion of internals) might be good. Any discussion of the Silverlight FX project would be cool too, even though it isn't officially part of Silverlight, I think it's cool. Maybe a little discussion of the control model and control development in general might be a good addition as well. Can't wait to read this book Pete!
  11. Pete Brownsays:
    @Rizaan did you see my articles on styling charts? You can find them on David Anson's blog, along with a bunch of others:

    <a target="_blank" href="http://blogs.msdn.com/delay/archive/2009/04/24/my-new-home-page-extended-updated-collection-of-great-silverlight-and-wpf-charting-resources.aspx">http://blogs.msdn.com/delay/archive/2009/04/24/my-new-home-page-extended-updated-collection-of-great-silverlight-and-wpf-charting-resources.aspx</a>
  12. Pete Brownsays:

    Thanks for the feedback

    I won't have time to build up a full LOB app in this book, but that's good info to have. I will cover some info on patterns to use, how to use .NET RIA Services for LOB apps, validation etc.
  13. Davesays:
    Don't assume we are coming from a web development background. I think I am like a lot of .Net C# programmers with very little web development experience that see Silverlight as an opening into the world of web development.

    Also I would like more about how to use web services (WCF) to call methods on the server in a 3 tiered fashion. Almost every example I see shows off how easy it is to setup bindings directly to the database on the server. Do people really let the UI talk directly to the database in a commercial app?
  14. Pete Brownsays:

    Good feedback, thanks.

    I assume the examples/demos you're talking about are not Silverlight. Silverlight doesn't have the ability to talk directly to the database; it always has to go through another tier whether that be WCF, Rest, or a library like RIA Services or ADO.NET Data Services (which use Rest)

    As to what people do in commercial apps, well, let's just say I've seen some real messes out there. Not everyone does that they *should* do :)
  15. eksays:
    It would be nice if you could build a case for why would any one use Silverlight for LOB - Really.

    It does not provide an easy to design application (no drag drop editor) and the samples I have seen so far (even with 3rd party controls) look like early Windows 3.1 look - Animation and colors are never part of a LOB requirements so why would it be useful.
    Part of the justification should include justifying the investment in training and tools!
    A good topic may alos be report generation and printing!
  16. John Bairdsays:
    <p>EK, Our company is building a multi-million dollar LOB app in Silverlight. We are porting our aging VFP framework and app into Silverlight and we made the concious decision to use Silverlight for a number of reasons. </p><p>The power in Silverlight is the speed at which you can declaratively build an application in XAML with support in the code-behind. </p><p>There is a cost in the learning curve and the ramp up with tools and controls, but there are 3rd party control packs (Telerik and Infragistics) in particular which have made great progress in their support for Silverlight development. </p><p>That said, I believe the power of Silverlight is in its templating and binding capabilities. You can do almost anything you can imagine with Silverlight, which you simply can't or would involve so much effort as to render it non-applicable in WinForms or WebForms. </p><p>Its also nice to be using technology built for the current technology climate rather than one built 10 years ago and is reaching its longevity point. Those of us who have embraced the development power of WPF/Silverlight will reap the benefits in the near term. </p><p>There is an old adage, "If you think education is expensive, you should try the alternative." In this case, I believe it could be amended to refer to technology. </p><p>Hope this helps, </p><p>John</p>

Comment on this Post

Remember me

1 trackback for “Silverlight 3 Book – Tell me what you want”

  1. Community Blogssays:
    In this Issue: Ashish Shetty , Nikhil Kothari , Chris Cavanagh , Rishi , Nigel Sampson , Tim Heuer ,