Category Archives: Silverlight

Almost My bad play on words aside, really is almost famous. I say “almost” because it’s a closed beta and there are several things that might hold it back. It appears that it doesn’t work on any version of IE yet and it’s not clear if that’s in the plans or not. It also gets its performance from making an end-run around a lot of CSS, using matrix3D transforms to GPU-accelerate various operations. The end result is some code that is pretty obtuse looking and not very semantic. You can’t argue with the results though. I’m speaking in broad terms here but you can google for a preso they did late last year that delivers a good overview of what they’re up to. The other big question in my mind is how the more standards-focused folk will feel about this.

But what is It’s a javascript library that brings optimized performance to the types of apps that we were building in Flash, WPF, and Silverlight years ago. I was surprised by how excited I was to see this today. More than ten years ago, I was building some pretty advanced UIs in web pages using Flash that even now are impossible with pure HTML and CSS. looks to be a way to bring UI innovation back into web browsers without plugins. If so, I’m pretty sure I won’t be the only one excited about the possibilities.

I’m curious how this will all play out with Responsive Design and Progressive Enhancement though. It’s still a beta so we’ll have to wait and see.

Leaving Microsoft

admiraltwin_redrocks.jpgToday, six years to the day that I started at Microsoft, I’m leaving. I wanted to take a moment to thank all of my friends from my time at Microsoft for the things that they’ve taught me and the assistance that they granted. I sent an internal email already but many key people are no longer at Microsoft so I’m putting this out there for those of you that left ahead of me. In fact, those who know me and know the strategic shifts Microsoft announced earlier this year shouldn’t be surprised to see me leave now. But it was actually over a year ago that I decided I was ready for the next thing. It just took me this long to figure out what that should be.
Most at Microsoft have only ever known me as a business/marketing guy but the rest of my last 20+ years have been as a developer, a product designer, and even a long run as a professional musician. (Attached is a picture of my band playing at red rocks–I’m on the left). I’ve never stopped writing and recording and I actually even considered cashing out from the corporate world and going back to my roots as a songwriter; moving to LA or Nashville. I may yet, but right now there are some opportunities in the tech startup space that were too good for me to pass up.
Starting next week, I’m going to join buuteeq as chief experience officer. This gets me back to my product design/user experience roots and throws me into the middle of the rapid innovation that is the modern startup experience. There’s a lot to do, but I’™ll be able to simply and directly impact the customers and the business. Being a startup focused on the global travel industry, it also encourages me to take my family to see the world a bit. I’ll be managing a design team in Santiago so we’ll be moving there for a few months in January. Luckily that’s summer in Chile (we’ll be thinking of you seattlites then). buuteeq also has a policy called Trotamundo where you get a personal budget for travel to exotic locations to check out the hotels there. I plan to hit my numbers on that. And of course, it will be my third time working with Forest Key, now the CEO at buuteeq. They’ve assembled a good team there and I’m looking forward to the work at hand.
Reflecting now, it feels a little as if everything I accomplished at Microsoft is sand in the desert and has been wiped clean already. It’s almost as if I was never there. It’s a great lesson on permanence. Ultimately, the lasting results are the things I learned and the relationships I made while at Microsoft. With that in mind, I want to thank all the folks I worked with over the years there again, and wish you all the best of luck in your endeavors. Special thanks to Brian Goldfarb, the Silverlight/.NET/Expression product teams, and the folks on my team (John, Pete, Chris, Chris, David, David, Mik, Tara)–if it wasn’t for the pleasure of working with you all, I wouldn’t have stayed two years too long at Microsoft. :)
My page has links to my social media and you can find my email address on my site here.

Silverlight helps jobhunters

Found this article that says half of IT jobseekers still find work quickly. Favorite quote:

The survey found that the most in-demand skills are in software development and testing–in particular, those with experience of agile programming, Scrum methodology, and Microsoft’™s .Net, Silverlight and SharePoint tools. Business analysis and project management expertise are also proving popular.

Half of IT jobseekers still finding work quickly –

Silverlight in the News

I had a few interviews recently which have started to show up in print/online. I point them out because I think this blog is mostly read by my mom and my sister. Actually, they probably don’t read this either but when my memory finally goes completely, I can meander over here and read about how I had an interesting time in the software industry. So back to the interviews: the best surprise was a story in USA Today that had started out as a piece prompted by Adobe about Flash video but ended up titled “Microsoft’s Silverlight heats up fight for online video players“. A thirty minute interview landed me the shortest quote I’ve ever had in an article but the title alone was well worth the time invested. Ironically, that little election thingie we had last week meant that I couldn’t find a single copy of the newspaper on a stand anywhere.

On a related note, a story in the UK Register mentioned that Adobe held a press conference in San Jose to tell the press that Silverlight is unsuccessful and they’re not worried about it. Holding a press conference is absolutely the best way to convince people that you’re not concerned about something, right? Mission accomplished! Hi fives all around! To be fair, I wasn’t there and maybe the point of the conference was about global warming or how great Adobe’s cafeterias are (the Macromedia cafeteria in SF was pretty darn good I say). Either way, I don’t think we’ll be adopting that sort of PR strategy any time soon.

Moving right along, we also have an article here that talks a bit about our recent launch and why developers should care: .NET Out of the Box

More to come soon…

Flash, HTML, Ajax: Which will win the Web app war?

I ended up being quoted a few times in this recent article about modern web app technologies. I’ll provide a bit more context here.

…Microsoft sees things differently, believing that programmers are best off ditching HTML and JavaScript as soon as Web applications start getting rich.

"It’s amazing what people have done with HTML, which was never intended to do rich Internet applications. And Flash was originally created for lightweight animation–literally for Mickey Mouse on the Web," said Brad Becker, who as group product manager for rich client platforms at Microsoft helps oversee Silverlight. "But these technologies were designed for something else, and people are really hacking them to do more”

Each of these technologies had an original purpose that it was intended to fulfill and I believe all of them are good at doing what they were intended to do. This point is something I hope people really think about. It reminds me of the fact that I once sawed a branch off a tree with the little saw on my Swiss Army knife. Once.

Flash began as “Smart sketch” and then became “FutureSplash Animator” and then “Flash”. It’s a tablet sketch app, tweaked to become a lightweight web animation player, that’s had coding bolted on to it. It’s completely optimized around animation and does a great job with traditional cartoon animation on the web. When you dive deep into a Flash app though, you’re still knee deep in “movie clips”, “timelines”, and “frames”. Makes perfect sense for animation but it’s a bizarre model to build applications on top of.

HTML was designed to present hypertext. The first version didn’t even have an image tag, let alone support for the sort of things people are doing today with AJAX. And when it comes to hypertext (with images or not), HTML is still king. Adding JavaScript can enable better user experiences but at great cost to developers.

Just because Google is doing something doesn’t mean it’s the right way, though, Becker said. "If you look at Google Apps, they’re doing great things, but how many shops out there have the Ajax chops that Google does?"

Small bits of AJAX are easy to put together. True RIA’s are hard. “divs”, “paragraphs”, and JavaScript-overridden hyperlinks are strange building blocks for RIA’s that aren’t page based hypertext documents. There are good frameworks out there that abstract away some of this misalignment (including our very own AJAX framework for ASP.NET) but frameworks can only abstract so much without impacting performance and flexibility. And a lot of businesses are rolling their own frameworks which is usually a wasted effort–maintaining a framework to keep up with multiple versions of multiple browsers is a lot of busy work that could instead be spent building the actual apps your customers need.

I’ve built true RIA’s in AJAX, I’ve built them in Flash. These project were completed successfully but it was a lot like sawing that tree with the Swiss Army knife. Flash and HTML are great at what they were intended for but they’re both convoluted when it comes to building real applications. There’s good news though; things don’t have to be so hard:

That’s exactly what Becker promises. "We’re going to be iterating pretty quickly, and each version is going to add new features and functionality," Becker said. The final version of Silverlight 2 will be released later this year, added Brian Goldfarb, group product manager for developer platforms at Microsoft.

This has been a very nice surprise for me—how quickly Microsoft has been able to innovate with Silverlight and deliver stable iterations of the platform. That’s because we took a decade of experience from .NET and Windows Media and used that expertise to build a modern platform that was designed for today’s rich web applications and media experiences. It’s the only platform out there that was actually designed for building modern web applications.

Flash, HTML, Ajax: Which will win the Web app war? | Business Tech – CNET

Silverlight Gets Serious

So today we announced Silverlight 2 Beta 2. There are a lot of features that are noteworthy but the most exciting thing is that this release is the first release of Silverlight 2 that has a go-live license. When this release is available later this week, you’ll finally be able to create and commercially deploy Silverlight 2 applications.

Another thing great about the keynote at TechEd today was the repetition of our vision for developers: Learn Once, Apply Anywhere. These four words are the way that I simply express where we’re going with our platform and tools. As a developer or a business, you want to make a bet on one thing and have that bet pay off everywhere that you or your business need to go. With Microsoft, you can learn one set of tools and platforms to target everything from your servers to your clients whether they’re browser based, desktop, or mobile. This is something that no one else can offer you.

So on to the details of the fun stuff that’s brand new in Beta 2:

· UI Framework: Beta 2 includes improvements in animation support, error handling and reporting, automation and accessibility support, keyboard input support, and general performance.  This release also provides more compatibility between Silverlight and WPF.


· Rich Controls: Beta 2 includes a new templating model called Visual State Manager that allows for easier templating for controls. Other features include the introduction of TabControl, text wrapping and scrollbars for TextBox, and for DataGrid additions include Autosize, Reorder, Sort, performance increases and more.  Most controls are now in the runtime instead of packaged with the application.


· Networking Support: Beta 2 includes improved Cross Domain support and security enhancements, upload support for WebClient, and duplex communications (“push” from server to Silverlight client).


· Rich Base Class Library: Beta 2 includes improved threading abilities, LINQ-to-JSON, ADO.NET Data Services support, better support for SOAP, and various other improvements to make networking and data handling easier.

· Deep Zoom: Beta 2 introduces a new XML-based file format for Deep Zoom image tiles, as well as a new MultiScaleTileSource that enables existing tile databases to utilize Deep Zoom. Better, event driven notification for zoom/pan state is another improvement in Silverlight 2 Beta 2.

Adobe Blurs Line Between PC and Web – New York Times

So, I don’t normally blog about competitors but I’m quoted in the New York Times today and they promoted me to executive and dubbed me the father of Flash, or somesuch. Ah, here it is:

Finally, there is Microsoft. It is pushing its competitor to Flash, called Silverlight. Three years ago, Microsoft hired one of Mr. Lynch’s crucial software developers at Macromedia, Brad Becker, to help create it. Mr. Becker was a leading designer of the Flash programming language.

Sweet, I was crucial. Then it got picked up on Slashdot:

The article has quotes from the developer behind Microsoft’s Silverlight (he was a colleague at Macromedia of Adobe’s Air guy)…

Now I’m THE developer behind Silverlight. Nice! To set the record straight, I was officially the product designer for Flash, Flex Builder, and what became known as Flex. And although I’ve had a surprising amount of face time with executives here at Microsoft (including a very interesting hour long chat w/ Bill Gates and Ray Ozzie) I am not an executive myself. Nor am I a developer anymore, let alone THE Developer. I’m a group product manager. But enough about me…

The NYT article continues by saying there’s a million Flash developers which is completely crazy unless every single box of Flash ever sold was to a professional developer and they’re all still using it. Essentially they’re including hobbyists when comparing to the number of actual active pro devs. But that’s a red herring anyway since AIR is really about Flex and there are virtually no Flex developers out there. In fact, lack of developers is Flex’s second worst problem.

The article picks up a quote from me:

Microsoft executives said they thought the company would have an advantage because Silverlight has a more sophisticated security model. “Desktop integration is a mixed blessing. There is potentially a gaping security hole,” said Microsoft’s Mr. Becker. “We’ve learned at the school of hard knocks about security.”

Technically I think I said that .NET has a more sophisticated security model. Although Silverlight is a part of .NET, it’s running in the browser so it inherits the browser security sandbox and then restricts that even further to keep things legit. Microsoft has indeed learned at the school of hard knocks when it comes to security. No process is perfect but the rigor I see here around security is an order of magnitude greater than any other software shop I’ve worked at. Of course, even without that, the bar is pretty low when compared with AIR from what I understand. It appears that with AIR, an app either has full access to your file system or no access at all. I imagine that’s something they’ll have to fix in the next version. In the meantime, though, this is something really obvious to everyone. Except, possibly, the end users out there that might run untrusted apps that they find on the web. It will be interesting to see what comes of this.

Most importantly though, I was so busy at work that I didn’t get a paper copy of the Times and last night everyone was sold out. How’s that for irony?