2 May
How’s that for an inflammatory title?
Let me prefix this post with a brief disclaimer. I like Microsoft’s .NET platform. C# is a great language to work in, it’s flexible & powerful. Plus, the .NET framework contains some great functionality that makes my job so much easier. In short, C# rocks.
Having said that, I have some issues with ASP.NET. Deane Barker from Gadgetopia has highlighted some of these issues, and while I’m not quite as down on it as he is, I think he makes some good points
ASP.Net is such an abstraction. It’s like one day Bill decided that we all knew too much about how the Web worked, and he needed to invent a framework that changed all the rules and hid all the scary HTTP stuff so that a generation of Web developers that he trained on his stuff exclusively would have a very skewed perspective about how the Web actually worked.
I hope that didn’t sound arrogant, but I do think that if you’ve never done any Web development except ASP.Net using Web Forms, then there’s a lot you missed about Web development.
I think the UpdatePanel released with the ASP.NET AJAX Extensions really demonstrates this issue. The UpdatePanel is really powerful. It allows you to write your code essentially the same as you always have, with a few small modifications. You then just wrap your ASP/HTML controls in an UpdatePanel and hey presto, you’ve got them running as AJAX controls. No page refreshes, no postbacks. Except that last one isn’t true, it just looks true. On each AJAX event (that is, any event that’s wired up in the code behind for a control that’s a trigger for an update panel), the page does a postback. The full page load life-cycle, including the view state. It has to be this way, or how else could you still access all the values and states of the controls in your code behind methods?
This is just the problem, it makes the development of AJAX-type sites too easy. You don’t have to know what’s going on behind the scenes, you don’t have to understand the asynchronous calls made & the HTTP processes going on.
Now, this may not be all that important if you’re on a small site, with very few steps in the page life-cycle implemented, and small view state. But if your site is large and complex, and you have a lot of controls on the page (ie large view state) this becomes a real issue. If you page currently takes a couple of seconds to load, due to complex processing and data connections, then on every AJAX call, this is how long it’s going to take. Obviously you won’t need to wait for the full page render time, but this is not usually the most time-consuming part of the page load process. Also, you should always make sure you don’t double handle stuff by wrapping as much as possible in a if (!IsPostback) block, but if the page is complex, this will still not always be enough.
1 May
Cracking out the retro music this week. Songza is letting me pull out the old music that I haven’t listened to in ages. Was listening to They Might Be Giants - Istanbul when it recommended Neil Diamond. I was never a massive Neil Diamond fan, but Hot August Night is a great live album, so here’s a couple of my favourites.
Now Songza’s got me on to Charlie Parker, gotta love the old Jazz.
30 Apr
Despite Microsoft Senior VP Chris Capossela saying that a search interface for the new Office ribbon device was unnecessary, Microsoft Office Labs yesterday released the internal project called ‘Scout’, now given the far less interesting title ‘Search Commands’. What is it with Microsoft having cool development names and then giving the products really boring release titles?
Anyway, the plugin adds another tab to Word, Powerpoint & Excel. It’s added as the last tab, but helpfully, you can just click ‘Windows Key + Y’ and it will jump to the search box from the application.
All it really is is a search box, a bunch of suggestions plus a gigantic help button. It is very useful though. Just start typing in the box and it will come up with a list of commands related to what you’ve typed in. It starts with partial matches and narrows down as you type. What is particularly handy is that it isn’t just doing a text match on the name of the commands, it’s doing a contextual match too. The example given in the help tutorial is that if you enter ‘background’ it comes up with a bunch of commands related to document backgrounds (in Word). This includes things like Watermarks, changing themes and shading. I’m not sure how this is done, there must be some sort of categorisation for the application’s commands behind the scenes.
22 Apr
Microsoft has announced that Windows XP Service Pack 3 has have been RTM. This means that OEM providers and Enterprise customers will be getting it in the next couple of days, while it is due to be released via Windows Update & the Microsoft Download Centre on April 29th. A PDF with an overview of the contents of the Service Pack is available.
This is a much smaller update than the previous 2 SP releases, especially SP2 which added a lot of functionality, especially security. According to the PDF
With few exceptions, Microsoft is not adding Windows Vista features to Windows XP through SP3. As noted earlier, one exception is the
addition of NAP to Windows XP to help organizations running Windows XP to take advantage of new features in Windows Server 2008.
21 Apr
Apparently after listening to Nessun Dorma I’d just love to crank up Follow Me.
Not really seeing the similarity here.
18 Apr
A new music site launches, so what do people use it for? Rickrolling of course!
I’m liking Songza, it’s got a slick interface. I can do most things on the page with AJAX, so I can keep listening while I line up other songs to play. The speed is good & the audio sounds like standard MP3 quality.
You can register for an account now, here’s my profile. You can share the songs you find, the site gives you links to Twitter the songs, email them or embed them in your own site.
Here’s some Jonathan Coulton for your audible pleasure:
There is embedded content here that you cannot see. Please open the post in a web browser to see this.