OneNote Rocks

I need a better microphone for my laptop, but the ability to record the audio for a meeting and sync that audio with the notes you’re taking is brilliant. I’m using the 2007 version, but I think at least some of this functionality was available in the 2003 version.

del.icio.us Buttons and IE7

I like the del.icio.us Buttons for IE but they don’t work as well with IE7. Or more to the point, IE7 has changed the interface model on del.icio.us. Hopefully, del.icio.us Yahoo! will update the buttons sometime soon.

Basically, IE supports a variety of extensions. On such extension mechanism is a “Browser Extension” (catchy, ain’t it). While I’m sure there are other aspects to Browser Extensions, it puts a button on IE’s main toolbar. An example of a browser extension that I use is Password Scrambler. del.icio.us, in comparison, creates a toolbar with two buttons – one brings up the link post page while the other is a dropdown menu that brings you to various places within del.icio.us. Frankly, I only use the link post button.

The issue is that in IE7, they’ve moved around the main toolbar. Under IE6, I would position the del.icio.us toolbar right after the main toolbar. So it worked out great. Now, in IE7, the main toolbar is now to the right of the tabs. By default, the browser extension buttons aren’t visible, but they are available on the Tools drop down menu. So I don’t have one click access to the Password Scrambler any more, but I do have all those extra commands grouped together. But since del.icio.us has it’s own toolbar, there’s no place really to put it that doesn’t take up screen space. It can’t go on the command bar with the address box and the search box. It can’t go on the command bar with the tabs and the main menu. The only alternative is to have it on a bar by itself, which is a waste of space. Esp. since I only care about the link post button, which would fit nicely on IE7′s new Tools menu.

I investigated what it would take to do it myself, and frankly I’m slammed with much more important things to do. At least, more relevant to my day job. Anyone with a good suggestion here, I’d sure appreciate it.

Update: According to a comment left by britta, the del.icio.us buttons IE7 ready yet and they suggest using these buttons in the meantime. Thanks for the tip, britta!

Tonight’s Caps Game Live on the Web

This just came across my news reader:

Washington Capitals will face the Philadelphia Flyers in preseason exhibition tonight. Bummed that the game is not being televised? Never fear, WashingtonCaps.com is broadcasting the game via broadband off their website. However it is restricted to the Washington area only.
[Caps Live Via WebPuckhead’s Thoughts]

Wow! I mean, I still can’t watch the game <grumble grumble> and it is still pre-season, but this is pretty significant. More details in the press release:

The Washington Capitals exhibition game against the Philadelphia Flyers on Tuesday, Sept. 26 at 7 p.m. will be broadcast live on WashingtonCaps.com through the use of B2 Networks. This will mark the first time in NHL history that a game can be viewed exclusively via broadband.

The game can be seen free of charge on the Capitals’ website, WashingtonCaps.com. Fans will need a high-speed internet connection and Windows Media Player 9 or higher. Capitals’ radio network play-by-play announcer Steve Kolbe will call the game with Mike Vogel, senior writer from WashingtonCaps.com, providing analysis. Due to NHL broadcast restrictions, the game can only be viewed by fans living within the Capitals broadcast area.

B2 Networks is a provider of secure international television and video broadcasting systems, pay-per-view and billing systems. During the past 12 months, B2 has broadcast more than 3,000 hockey games from all levels including the championships from four leagues. B2 is the digital distribution rightsholder for the United Hockey League, American Hockey League, ECHL and USHL, along with baseball’s Northern League. B2 recently broadcast the National Lacrosse League championship to fans on four continents.
[Capitals Preseason Game to be Broadcast on WashingtonCaps.com via B2Networks]

The Caps and their owner are aggressively pursing avenues outside of the main stream media (which for the most part ignores hockey). First, they come up with Guidelines For Issuing Press Credentials To Bloggers and now this.

Of all the major sports, hockey seems to have the most to gain from both the HD revolution and media decentralization. Hockey is so fast and the puck is so small, you spend most of your time tracking the puck when watching in standard definition. In HD, you don’t have to watch the puck, you can watch the play. This isn’t to say that other sports aren’t gorgeous in HD, but the difference in the experience between SD and HD just isn’t as significant for other sports. As for media decentralization, the reason hockey has the most to gain is because it has the least coverage in the mainstream media today. So there’s no where to go but up.

However, the NHL broadcast restrictions stuff has got to go. Come on Ted, you’re a “pioneer of the Internet and new media”. Get those guys at the NHL to wake up and embrace the new media! How come EVERY game isn’t available this way?

Revisiting the AJAX Ecosystem

Seven months and one job ago, I wrote this about AJAX toolkits:

The network effect that Dion doesn’t consider is the component ecosystem phenomenon that Microsoft has a ton of experience with. Old school VB, COM/ActiveX and .NET have all had large ecosystems of components and controls evolve that extend the functionality of the baseline development platform. There’s no reason to believe that won’t happen with Atlas. I think it’s wrong to describe Atlas as a monolith or self-contained or enclosing. It’s an extensible baseline platform – i.e. the baseline functionality is set down once at the development platform and the ecosystem can extend it from there. Sure, overlapping extensions happen (how many rich text editor components are there for ASP.NET?) but at least they all have basic compatibility.

I bring this up now because I saw on Shawn Burke’s blog that they’ve shipped the September release of the Atlas Control Toolkit. There are now 25 different controls (they had 10 in their first release). But there’s something more significant than the addition of 15 controls overall:

Slider is just a super-useful little control.  There are so many times when you want to let users use this type of UI.  Another great thing about Slider is that it’s a 3rd party contribution, from Garbin, who did a great job on it. (emphasis added)
[Atlas Control Toolkit September Release]

I just wanted to brag that I called this 7 months ago.

Stateless != Stateless

A while back, I blogged that Services Aren’t Stateless, in response to some stuff in Thomas Erl’s latest book. At the time, I mentioned that I was looking forward to discussing my opinions with Erl when I attended his workshop. I’ve spent the last two days at said workshop. I’ll have a full write-up on the workshop later this week, but I wanted to blog the resolution to this stateless issue right away.

At the time, I wrote “I assume Erl means that service should be stateless in the same way HTTP is stateless.” Turns out, my assumption was way way wrong. When he addressed this topic in his workshop, he started by talking about dealing with concurrency and scalability, which got me confused at first. Apparently, when Erl says stateless, he’s referring to minimizing memory usage. That is, don’t keep service state in memory longer than you need to. So all the stuff about activity data, that’s all fine as per Erl’s principles, as long as you write it out to database instead of keeping it in memory. In his book, he talks about the service being “temporarily stateful” while processing a message. When I read that, I didn’t get it – because I was thinking of the HTTP definition of stateless & stateful. But if we’re just talking about raw memory usage, it suddenly makes sense.

On the one hand, I’m happy to agree 100% with Erl on another of his principles. Frankly, much of what he talked about in his workshop seems predicated on unrealistic organizational behavior and offer at best unproven promises of cost and time savings in the long run via black box reuse. So to be in complete agreement with him on something was a nice change of pace. Thomas is much more interested in long-running and async services than I originally expected when I first flipped thru his book.

On the other hand, calling this out as a “principle of service orientation” hardly seems warranted. I mean, large scale web sites have been doing this for a long time and SQL Session State support has been a part of ASP.NET since v1. Furthermore, using the term “stateless” in this way is fundamentally different from the way HTTP and the industry at large uses it, which was the source of my confusion. So while I agree with the concept, I really wish Erl hadn’t chosen an overloaded term to refer to it.