Friday afternoon, a few coworkers (and our boss) stepped out of work to attend the MSDN Southern Fried Roadshow over at NCSU. Two session on Silverlight, and a session on VS2010 and ASP.NET 4 was delivered to a nearly full room.
After the short seminar, we had a small discussion on the usefulness of AJAX. I was in the minority of “getting” it and “liking” it. Now, I’m not calling for sites to be some massive AJAX project where every single function is transmitted over the net. However, I do find there are more valid places for it than we discussed.
Let me explain, one comment was, that all of your logic is available via view source and that by using a code-behind, this is protected. This, I disagree with the most. AJAX is not meant to be used to perform logical operations. If someone is putting Business Logic in the Javascript or in the AJAX calls, they are doing it wrong. The data being transmitted should ONLY BE THE VIEW DATA, nothing more. The data inserted into a control in an ASP.NET code-behind should be the same data you’d transmit. AJAX just provides a way to skip the update of the entire page.
The simple truth is, nothing should be done in excess. Client-side Javascript provides a great way to modify and enhance the user experience, communicate data back to the server and more. It can be overdone, but so can over-reliance of the postback.
MSDN Southern Fried Road Show
Session 1, Connected Silverlight Applications, detailed creating WCF web services that used a binary format to transmit data instead of using XML. While this was pretty interesting, I have to question a few assumptions. The idea that server cycles required to serialize data to XML (or JSON) is more of a problem than the bandwidth to transfer said data seems off to me. I mean, it is a lot cheaper to build a bigger machine than to buy more bandwidth; and that is server side, not even mentioning the client side. I think I just don’t fully grasp Silverlight (or Flash) as an application platform.
Session 2, Microsoft’s Prism for Component Applications, discussed Microsoft’s new framework, or development pattern, or silverlight/WPF building library. Therein is the problem. I don’t really know what Prism is. From what I can tell, it looks very interesting, but it will require more research.
Session 3, The Future of ASP.NET and VS2010 was by far my favorite. They discussed a few of the new features coming in VS2010 and ASP.NET. What am I looking forward to? ASP.NET AJAX 4. First, a disclaimer, I hated ASP.NET AJAX. The AJAX toolkit was a complicated mess and I could never get into it. I guess I’m old school and like to write my own Javascript. However, ASP.NET AJAX 4 has hit it out of the park. Live 2-way binding. I am looking forward to experimenting with this.
So there it is, I don’t get Silverlight, I like AJAX in moderation, and I hate postbacks.