Passion * Technology * Ruthless Competence

Monday, April 20, 2009

The Lounge Survey

I just joined The Lounge advertising network so I wanted to pass along an opportunity to win a bunch of great technical books.

The Lounge is asking the readers of the blogs in their network to fill out a survey in order for them to improve how they target their advertising. It’s pretty much what you would expect from an advertising network focused on the .NET development platform: what language(s) do you use, what framework(s), what testing tool(s), etc, etc, etc. Takes like three minutes to fill out at most.

We all know that filling out surveys isn’t what most people consider “exciting” or “fun”. In order to incent you, dear Reader, to take a few minutes of your valuable time to fill out the survey, The Lounge is giving away all forty one of Manning’s “In Action” books, including IronPython In Action. Even if you don’t win, you still get 40% discount off any purchase from Manning.

So it’s up to you, a scant few minutes of your time in exchange for a chance to win enough technical books to keep you busy for months.

Posted By Harry Pierson at 10:31 AM Pacific Daylight Time

Monday, April 13, 2009

Joining the Lounge Advertising Network

For those of you who read this blog primarily via my RSS feed, I made a change to my homepage over the weekend. Goodbye adSense, hello The Lounge. The Lounge is an ad network run by James Avery’s company InfoZerk. I’ve known James for a while – he included my now-obsolete SccSwitch tool in his book Visual Studio Hacks.

From a financial perspective, I’m not really sure how much of a difference this will make. I guess I’ll see when I get my first check. Given how little I was making with adSense, I’ve got nowhere to go but up. Regardless, I feel much better working with a smaller ad network run by someone I respect and that is focused on the .NET platform.

Thanks for having me in the Lounge ad network, James.

Posted By Harry Pierson at 3:21 PM Pacific Daylight Time

Tuesday, July 29, 2008

Pushed the Wrong Button

I'm working on a new series of posts on parser monads, but I accidentally pushed out part thre (I hit "Publish" instead of "New" in WL Writer). I can't stop you from reading it, as it's already in Google and FeedBurner's cache. However, if you want any context at all, do yourself a favor and wait until I publish parts one and two first!

Posted By Harry Pierson at 5:06 PM Pacific Daylight Time

Monday, June 16, 2008

Morning Coffee - Post Vacation Edition

It's been exactly a month since my last post. A crazy month, hence the lack of blog posting around here. Sorry about that. My wife has been much more regular in her blogging than I have of late - she's posted a dozen times since my last entry.

Since I'm so far behind on blog reading, and email, and work, and pretty much everything, this is going to be a slightly different Morning Coffee - more forward looking than backwards. Back to normal Morning Coffee posts in a day or so.

  • Hawaii was awesome. I was going to post a trip summary, but my wife beat me to the punch. My personal favorite part was the air tour, but frankly it was all good.
  • I hear the weather in Seattle was awful while I was gone. My wife's best friend called it "Juneuary". However, the weather since we got back has been pretty awesome. I take full credit for bringing the good weather to Seattle from Hawaii. :)
  • I was in Amsterdam for work and I didn't have my family with me, but it was pretty good all the same. My good friend Matt lives in Amsterdam full time, so I got to spend a lot of time with him. I also discovered that I have a new favorite beer - Kwak.
  • I'm sure you're aware of these, but I should post the links anyway: IronRuby on Rails, IronPython Beta 3, Silverlight 2 Beta 2, Silverlight Dynamic Languages SDK Beta 2, ASP.NET MVC Preview 3.
  • I have 419 mails in my inbox - and I've been fairly diligent about deleting stuff that I didn't need to keep even on vacation. That's about 400 more than I'd like to have in there. Most of today will be spent digging out my inbox. Small miracle: I have nothing currently on my calendar for today.
  • I'm one of the content owners for PDC08. After getting my inbox cleaned up, my #1 priority is to see where we are on PDC planning. I have a feeling that's going to take up the majority of my time for the next couple of weeks.
  • I mentioned above that we shipped the latest beta of IronPython while I was away. As you can imagine, there's a bunch of PM work to be done as we get down to the release of IPy 2.0 (sometime this fall) as well as early work on the next version of IPy.
  • Outside of work, I've got a lot of writing to do. I'm finishing up an article on IPy and starting to really hunker down on a book that I'm writing.
Posted By Harry Pierson at 10:13 AM Pacific Daylight Time

Friday, March 21, 2008

Will The Real DevHawk Please Stand Up?

Sometimes when I blog about politics, I'll get a comment like this:

As far as I'm concerned, posting about topics such as politics or religions on a blog that's supposedly about technology is just looking for trouble.

As I've pointed out before, DevHawk is not "a blog that's supposedly about technology". It's a personal blog - my very tiny corner of the web, if you will - so I feel totally justified writing about technology, politics, hockey and whatever else I want to. I figure that if you don't like it, you're free to unsubscribe and neither of either of us will lose any sleep over it.

The flip side is that DevHawk has traditionally been the only place where I exercise such lack-of-restraint. When my blog was featured on MSDN Architecture Center, I cross-posted relevant content to a separate blog so as to create an topic-focused and safe-for-work subset of my "real" blog. It was always a hassle - especially tracking comments to the same post in two places - and I quit doing it shortly after leaving the Architecture Strategy Team.

However, now that I'm using Twitter, it doesn't feel like DevHawk is "my only place" anymore. My blog == my writing, my del.icio.us == links I find interesting and my Twitter == real time updates. I use FeedBurner to include my del.icio.us links in my blog feed and twitterfeed to include the blog feed in my twitter feed. Therefore, Twitter is the only place to get an feed of all three. Obviously, Twitter's feed isn't full content, but in an always connected world, clicking the link to read the blog entry in the browser isn't that big a deal. Besides, you can always subscribe to both the blog and twitter feed if you want full content + real-time.

I haven't fully integrated Twitter into my daily life yet, though I'm getting there - for example I twittered the results of my hockey game last night. But unlike other social software sites, I think I'm going to be using Twitter regularly. I'm on Facebook, but there's too much "you've been bitten by a Vampire!" type spam to really use it for anything but pure entertainment. Twitter is more like blogging, where there's an information exchange with only the people I subscribe to follow. Also, maybe it's me, but there doesn't seem to be the same stigma if you stop following someone on Twitter compared to rejecting them as a friend on Facebook.

DevHawk has been "me", but now it feels like DevHawk @ Twitter will become "me" which leaves my blog to become my endless book. It's not a bad thing, but it does feel a little strange.

Posted By Harry Pierson at 12:31 PM Pacific Standard Time

Thursday, March 06, 2008

Morning Coffee 155 - Dueling Conference Edition

  • If you don't want to watch the video of yesterday's MIX keynote but still want a sense of what happened, check out Tim Sneath's keynote liveblog. (via Sam Gentile)
  • Other announcements from Mix day one keynote that I missed (all via Tim Sneath)
  • Quick side note - Installing Silverlight 2 in order to check out the DeepZoom Hard Rock demo was smooth, fast and easy. It's hard to believe there's a whole CLR in there.
  • Now on to public stuff I saw @ TechFest:
    • One of the problems with touch screens is that your fingers obscure what you're trying to touch. Lucid Touch solves this by having you touch the back of the device, while rendering a virtual shadow of your hand - a technique they call "pseudo transparency". You really need to watch the video to "get" this. It's not currently feasible - the prototype uses a webcam on a foot long boom to track hand and finger position. However, they expect a future version will have some type of imaging sensors embedded in the body of the device.
    • The Berkeley Emulation Engine version 3 (aka BEE3) (video) is a high powered hardware simulator. Apparently several orders of magnitudes faster than conventional simulation. Frankly, most of this demo was over my head and I'm not really a HW guy. But it sounds really fast.
    • BLEWS or "what the blogosphere tells you about news". Given my interest in political blogging, it's not a surprise I was interested in this project. This tool categorizes news stories according to their reception in the political blogosphere. It provides a visualization showing not only how many links from a given ideological sphere there are, but how strong the emotions are running. Kinda like Memorandum on major steroids.
    • Music Steering (video) is an "interactive music-playlist generation through music-content analysis, music recommendation, and music filtering". Sort of like LastFM + Pandora on your Zune.
    • In-Depth Image Editing (team site) showed some cool photo editing software that reminding me of Microsoft Max.
    • MashupOS (paper) is a set of abstractions to improve the browser security model, allowing for isolation between blocks of code from different sources while still allowing safe forms of communication.
    • MySong (paper, video) "automatically chooses chords to accompany a vocal melody, allowing a user with no musical training to rapidly create accompanied music". Karaoke singers rejoice! Actually, it's pretty cool. You can adjust sliders to adjust characteristics of the generated music like "Jazz factor" and "Happy factor". Actually, I just want a happy factor slider in all my software.
    • I saw some cool projects from the Socio-Digital Systems group and MS Research. My wife is a sociologist and always says there's no way she could ever get a job in the big house. Maybe after she checks out this team, she'll stop thinking that.
    • The Worldwide Telescope booth was so crowded that I couldn't get anywhere near it. From what I could see from standing in the back, it looked fantastic. It's not live yet, but you can check out the video from the TED conference to get a sense of it.
Posted By Harry Pierson at 9:51 AM Pacific Standard Time

Tuesday, March 04, 2008

Lunchtime Coffee 153

Posted By Harry Pierson at 12:28 PM Pacific Standard Time

Tuesday, February 19, 2008

Morning Coffee 147

  • My son Patrick turns five today. The big treat was his cousin Jack coming up for a visit. Here's a picture of the two of them at Patrick's party on Saturday. My wife has all the details on her blog. Update: My wife just posted a whole slew of Early Patrick Pictures.
  • If my son is five, it means this blog is also five - I started this blog about a month before Patrick was born. I never remember to mark the occasion until Paddy boy's big day comes around.
  • Major props to the House of Representatives for growing a backbone and not caving to President 30% Approval on telecom immunity...yet. Personally, I'd like to see the House bury the measure completely, though I'm not holding my breath. But given that even the right-wing Washington Times reports "Analysts say FISA will suffice", maybe the House Dems will do the right thing.
  • After tearing it up since Thanksgiving, the Caps have gone a little cold. 5-4-1 in their last ten and 2-2-1 in their last five. In the month of February, they're 1-3-1 against SE division opponents. Good news is that they're still even with Carolina (two points behind with two games in hand), half a game up on Atlanta, a game and a half up on Florida and two and a half games up on Tampa Bay.
  • Bill Gates announced a new program called DreamSpark to provide college students access to all of Microsoft's developer and designer tools, including Visual Studio, Expression, SQL Server, Windows Server and XNA Creators Club membership. This looks like an outgrowth of the MSDN Academic Alliance program. I think it's a great idea. Update: Looks like high-school students will be able to access the DreamSpark program too. However, since they're minors, they have to get the software via their teachers. (via LiveSide)
  • The winners of the XNA Silicon Minds contest have been announced. Of the five winners, Specimen looks the coolest to me. I wish I had more time to get into game development. (Via LetsKillDave)
  • Speaking of game development, this week is the Game Development Conference, so be on the lookout for lots of game-related news. Xbox Live VP John Schappert is giving a keynote on "Unleashing the Creative Community". XNA GM Chris Satchell said last year they would "announce full details on, and ... vision for, opening XNA creations to the community" sometime this year. I'm guessing this is said announcement.
  • Speaking of Xbox, there's a rumor that Microsoft and Netflix will announce this week that Netflix is bringing their Watch Instantly service to Xbox 360. If true, sign me up!
  • Grigori Melnik announces the GAX/GAT February 2008 final release. Key feature is VS08 support. Is it just me, or does calling it the "final release" make it sound like they won't be upgrading GAX/GAT further?
  • Speaking of p&p, Grigori also announces the Feb 2008 CTP of Unity, p&p's new IoC container. I've seem lots of folks echoing the announcement, but not much in the way of specifics on Unity itself. For example, Chris Brandsma describes IoC and mentions Unity, but he doesn't cover any Unity specifics. :(
  • MSIT EA Nilesh Bhide has started blogging. His first post is on Customer perception of Service Quality in S+S/SaaS. I've worked closely with Nilesh in the past two years, so I'm excited to see him take to the blogosphere. (via Nick Malik)
  • I don't know how I missed it, but the MSDN Code Gallery launched last month. As Charlie Calvert explained, this is logical successor to GotDotNet's user samples area. Between Code Gallery and CodePlex, GotDotNet has finally been shuttered for good.
  • Telligent, makers of the very popular Community Server, have released Graffiti CMS, which looks like a more flexible content platform than Community Server. (via DNK)
  • In somewhat unexpected news (at least, unexpected by me) Microsoft has released specs for the Office binary file formats. I'm not sure why this is happening now, rather than say when we released the specs for the Open Office XML file formats. (via DNK)
Posted By Harry Pierson at 11:29 AM Pacific Standard Time

Thursday, January 31, 2008

Morning Coffee 141 - Lang.NET '08 Edition

header I was hoping to blog my thoughts on Lang.NET as the event went along. Obviously, that didn't happen, though I was pretty good about dumping links into my del.icio.us feed. The talks were all recorded, and should be up on the website in a week or two. Rather than provide a detailed summary of everything that happened, here are my highlights:

  • The coolest thing about conferences like this is what John Rose called "N3" aka "Nerd-to-Nerd Networking". It was great to meet in person, drink with and geek out with folks who's blogs I read like Tomas Petricek, Wesner Moise and Larry O'Brien. Plus, I got to meet a bunch of other cool folks like Gilad Bracha, Stefan Wenig and Wez Furlong. That's worth the price of admission (which was admittedly nothing) right there.
  • Coolest MSFT talk: Martin Maly "Targeting DLR". I was wholly unaware that the DLR includes an entire compiler back end. Martin summarized the idea of DLR trees on his blog, but the short version is "you parse the language, DLR generates the code". That's pretty cool, and should dramatically lower the bar for language development. Of course, I want to write my parser in F#, so I'm going to port the DLR ToyScript sample to F#.
  • Runner-up, Coolest MSFT talk: Erik Meijer "Democratizing the Cloud with Volta". Erik is a great speaker and he really set the tone of his session with the comment "Division by zero is the goal, not an error". He was referring to an idea from The Change Function that user's measure of success is a function of perceived crisis divided by perceived pain of adoption. Erik wants to drive that adoption pain to zero. It's a laudable goal, but I remain unconvinced on Volta.
  • Coolest Non-MSFT talk: Gilad Bracha "Newspeak". Newspeak is a new language from one of the co-authors of Java. It's heavily smalltalk influenced, and runs on Squeak. He showed developing PEGs in Newspeak, and they were very compact and easy to read, easier even than F#. He calls them Executable grammar, and you can read his research paper or review his slides on the topic. Unfortunately, Newspeak isn't generally available at this time.
  • Runner-up, Coolest Non-MSFT talk: Miguel de Icaza "Moonlight and Mono". The talk was kinda all-over-the-place, but It's great to see how far Mono has come. Second Life just started beta testing a Mono-based script runner for their LSL language (apparently, Mono breaks many LSL scripts because it runs them so fast). He also showed off Unity, a 3D game development tool, also running on Mono.
  • Resolver One is a product that bridges the gap between spreadsheets and applications, entirely written in IronPython (around 30,000 lines of app code and 110,000 lines of test code, all in IPy). Creating a spread-sheet based app development environment is one of those ideas that seems obvious in retrospect, at least to me. If you do any kind of complicated spreadsheet based analysis, you should check out their product.
  • If you're a PowerShell user, you should check out PowerShell+. It's a free console environment designed for PowerShell and a damn sight better than CMD.exe. If you're not a PowerShell user, what the heck is wrong with you?
  • Other projects to take a deeper look at: C# Mixins and Cobra Language.
  • I thought my talk went pretty well. It's was a 15 minute version of my Practical Parsing in F# series. Several folks were surprised I've been coding F# for less than a year.
Posted By Harry Pierson at 10:25 AM Pacific Standard Time

Wednesday, January 16, 2008

Morning Coffee 138

  • In writers strike news, the WGA has made side deals with Worldwide Pants (aka Dave Letterman's company), United Artists (aka Tom Cruise's company) and The Weinstein Company (previously known as Miramax). The WGA strategy of divide and conquer seems to me making slow progress. Update: The Weinstein Company was founded by Miramax's founders Harvey and Bob Weinstein after they left Miramax. But Miramax is still around. Thanks to GrantC for the correction.
  • They're still two games under .500, but the Caps completed a season sweep of the Eastern Conference leading Ottawa Senators last night. They're only 3 games out of the top spot in the (admittedly very weak) Southeast division
  • Big tech news today isn't coming from MSFT-land. Sun is buying MySQL and Oracle is (finally) buying BEA. Both deals seem like pretty significant culture clashes, though Sun/MySQL seems like the better fit of the two.
  • There's a new draft of Service Modeling Language 1.1 available. If you'll recall, this used to be called the System Definition Model, part of the Dynamic Systems Initiative. Hadn't heard anything from those folks in a while, good to see they're making progress.
  • Stephan Tolksdorf dropped me a line to tell me he was able to "vastly simplify" FParsec, and as a result it now runs on the current version of F#. Awesome!
  • Speaking of F#, Scott Hanselman has a new F# podcast, this time interviewing Dustin Campbell. Check out all of Dustin's F# posts.
  • I didn't know about the "Copy as Path" feature in Vista. Why is it hidden?
  • I was a big fan of the WDS deskbar shortcut feature - a feature that is missing in Vista. Enter Start++ by Brandon Paddock, which adds shortcuts to Vista's search box. It also supports "iPhone apps" and scripting. But JScript? Where's the PowerShell love, Brandon?
  • EA released the source code to the original SimCity under the GPL. Bil Simser is digging into the code and it looks like he's going to port it to XNA. (via Ozymandias)
  • Wes Haggard has published the source code to CodeHTMLer on CodePlex. He took two updates from me: the F# language definition as well as the ability to choose the font when not using PRE tags.
Posted By Harry Pierson at 11:14 AM Pacific Standard Time

Wednesday, January 02, 2008

Morning Coffee 133

  • I've been off for two weeks, so getting back into "the swing" of things will probably take a day or two - both at work and on my blog. Hope everyone had a happy holiday season.
  • I ended the year with 245 blog posts, which wasn't quite as many as either of my first two years blogging, but was much more than I had been writing for the last two years.
  • It was a Zune Xmas in the Pierson house. I got a pink Zune for my wife, and my mother and father got Zunes for each other. I got to load them all up with content for Xmas morning. Maybe I'm just used to WMP, but I'm not a huge fan of the Zune software. Yes, it's very pretty but it's missing some fairly basic features like automatic down-sampling lossless music. On the other hand, the on-device experience rocks and my wife is using her Zune regularly. I've got a trip to England coming up in April, and I'm thinking about getting one of the new 80GB ones for the trip.
  • They lost any chance of playing for the national championship, but USC sure looked like a champion yesterday. Seems appropriate for this crazy college football season that if Ohio State doesn't win big, pretty much all the other BCS bowl winners with a legitimate argument to be #1.
  • The Caps beat the eastern-conference leading Senators yesterday for the third time this season and the second time in four days. They have 13 points in the last ten games and 10-5-4 since Boudreau took over as coach. If they keep that pace up, they would likely make the playoffs - that would be quite a feat given their horrific start.
  • Speaking of hockey, I watched most of the Winter Classic yesterday, including the game-winning shootout goal by the Anointed One. It was really strange but cool to watch a hockey game between snowflakes. I agree with Scott Burnside's take that these outdoor games are good for the league, but shouldn't be a regular part of the season.
  • I finished Portal yesterday - that's a fantastic game. I also got Mass Effect, so now I need to decide which to take on first: that or Half-Life 2.
  • A few months ago, I was thinking about using HomePlug for home networking but decided to upgrade my wireless network instead. But recently I've started streaming movies from my loft computer to my Xbox, and the wireless network isn't always up to the task. I could run CAT5, but there's already an unused coax cable running up to the loft and I wondered if I could just use that? I discovered the Multimedia over Coax Alliance, but none of their certified products appear to be available. Those products have to share the home coax network with the cable company, but I can dedicate my coax cable. Anyone know a way to use coax to bridge CAT5 networks? Even something DIY?
Posted By Harry Pierson at 10:21 AM Pacific Standard Time

Friday, December 07, 2007

Blogging F# Code

I'm going to start posting about my F# parsing code soon. Obviously, I'll make the code directly available, but I'm also going to be writing about it quite a bit. Since I'll be posting lots of F# code snippets, I took the time to build an F# language syntax definition for CodeHTMLer. Of all the various WL Writer Insert Code plug-ins, CodeHTMLer is my favorite because it can be configured not to use <pre> tags, which many RSS readers handle poorly (in my experience).

In case anyone else wants it, I've stuck the CodeHTMLer F# language definition up on my SkyDrive. If you using the CodeHTMLer WL Writer Plug-in, you can easily add this to your machine. Once you've installed CodeHTMLer and run it once, go to the command line and type "cd %appdata%\WindowsLiveWriter" and you'll find the LanguageDefinitions.xml file. Edit that file to insert the add the contents of my F# language definition after the <CodeLanguages> tag and you're all set.

BTW, the first language in the file will be the default language in the plug-in, so if you're an occasional F# user, you might want to add the F# definition to the end rather than the beginning of the file. If you don't want to further edit the XML file manually, you can select "Edit Languages" in the plug-in and edit the order of the languages to your heart's content.

Posted By Harry Pierson at 1:47 PM Pacific Standard Time

Morning Coffee 128

  • After using Outlook 2007 as my RSS reader for a few months, I've gone back to RSS Bandit. I run two work machines (desktop + laptop) and I finally got tired duplicated blog entries because each copy of Outlook downloads the same post. Also, for some reason Outlook downloads the same Technorati posts over and over again.
  • ADO.NET Entity Framework Beta 3 was released. The latest CTP of the EF Tools is also available. And as per the press release, EF has gained support from "Core Lab, DataDirect Technologies, Firebird Foundation Inc., IBM Corp., MySQL AB, Npgsql , OpenLink Software Inc., Phoenix Software International, Sybase Inc. and VistaDB Software Inc". I'm not sure what that means, exactly, but I guess you'll be able to LINQ to Entities on a wide variety of DB platforms. Interesting Oracle isn't on that list. Not really surprising, but interesting.
  • Here's a new ASP.NET MVC article from Scott Guthrie, this one on views and how you pass data to one from a controller. Using generics to get strongly-typed ViewData is pretty sweet. But where's the MVC CTP that was supposed to be here this week?
  • In news about web app tool previews that did ship this week, Live Labs announces Volta. Haven't installed or played with it yet, but I did read the fundamentals page. It primarily looks like a tool to compile MSIL -> JavaScript, so you can write your code in C# but execute it in the browser. Sam and Jesus are excited, Arnon not so much. Arnon's argument that being able to postponing architectural decisions is to good to be true is fairly compelling, and not just because he quotes me to support his argument. But I'll download it and provide further comment after I experiment with it myself.
  • Simple Sharing Extensions is now FeedSync. Not sure what else is new about it, other than it's been blessed with "1.0" status. The Live FeedSync Dev Center has an introduction, a tutorial and the spec. (via LiveSide)
  • Dare likes tuples. Me too. I also like symbols.
Posted By Harry Pierson at 11:06 AM Pacific Standard Time

Friday, November 23, 2007

Afternoon Coffee 126

  • In a surprise to exactly nobody, the Caps let coach Glen Hanlon go yesterday. I gotta say I feel for the guy. I mean, he had to go, but still. The Caps promoted the coach of their minor league team Bruce Boudreau. Makes sense - the farm team is where you develop players, why not coaches to? The team responded by beating the Flyers in overtime, though they did blow a 3 goal lead along the way.
  • It won't get them back in the national title hunt, but thrashing ASU may earn USC a ticket to a BCS bowl, or the Rose Bowl if the Ducks can't win without Dennis Dixon.
  • I finally finished Dead Rising today. A sequel has been rumored and hinted at, but not confirmed even though the ending left the door wide open. I really enjoyed it, so here's hoping. I'm going to hold off on starting anything new until I get back from Canada, but it'll probably be R6:Vegas. Don't really have time between now and Christmas to finish Blue Dragon and it's 3 DVDs.
  • In more "Screw Turkey Day, we're shipping anyway" news, p&p shipped a new version of the Web Service Software Factory. This one's called the "Modeling Edition". I saw some of this stuff back in August, and I like what those p&p folks are doing. It's worth a look, just to see how they've integrated DSL and GAT.
  • My old team shipped a new version of their S+S demo app LitwareHR. There's also some tools for testing multi-tenant databases.
  • Quick reminder: I'm @ DevTeach Vancouver next week, so blogging will be light. I've got a series of thoughts on F# ready to post, but we'll see when I get network access to post them. Given that I took a month off from blogging a short while back, I didn't bother asking Dale to cover for me.
Posted By Harry Pierson at 4:23 PM Pacific Standard Time

Friday, November 16, 2007

The Hawk Flies Again

After a week offline, I think I've finally gotten DevHawk back online. I'm having a few issues from my personal laptop, so if you're having issues seeing the site, please let me know.

I took the downtime to make a few changes to the site. I fixed up a few things with the theme - I run 120 DPI on both my machines and the theme looked wrong in a few places. Now, except for the main text, I specify font sizes in pixels instead of points so it looks right whatever DPI you run in. Also, I finally got around to updating the stylesheet so the tag list and calendar renders correctly plus I added "older posts" and "newer posts" links at the bottom of the page.

I also took the opportunity to get rid of my Projects, Articles and Presentations sections. I didn't trash the content, I moved it all to my SkyDrive. But now I've eliminated a bunch of pages from my site that I just never took the time to keep up to date.

Back to regular blogging "soon".

Posted By Harry Pierson at 7:48 AM Pacific Standard Time

Monday, October 08, 2007

Morning Coffee 116

"Looks like I picked the wrong week to stop sniffing glue"
Steve McCroskey, Airplane!

  • So it's been a while since my last post. Just over a month, not including The F5 High, which wasn't "original IP". Frankly, I just stopped reading pretty much cold turkey. I wanted and needed to go heads down on day job stuff for a while. Since I haven't been reading, Morning Coffee is going to be a little cold while I ramp back up.
  • The new NHL season is upon us, and the Caps are looking good so far. Obviously, they have the new uniforms, but they're also out to a 2-0 start for the first time in five years. And in those two games, they've only allowed one goal and are 100% on the PK. It's nice to see them start strong, but obviously there's a long way to go. Here's hoping the can stay strong all season.
  • Speaking of staying strong, the wheels that were rattling last week came off the Trojan bandwagon completely this week. I'm not sure it's as big an upset as Appalachian State beating Michigan but it's close. What happened to the team that scored 5 TD's in a row on Nebraska?
  • Big news last week is that MSFT is going to release the source code to much of the .NET Framework. Scott Guthrie has the details. Frankly, between Rotor & Reflector, it wasn't like you couldn't see the source code anyway, so this seems like a no-brainer. But integrating it directly into the VS Debugging experience, that's frakking brilliant.
  • I haven't had a chance to install the new XML Schema Designer (Aug 07 CTP)  but I was really impressed with this video. The XML Team blog has more details. However, I'm not sure what the ship vehicle is. The CTP install on top of VS08 beta 2, but in the video they keep saying "a future version" of VS, implying that it's not going to be in VS08.
  • Dare is spending some time investigating SSB. I think it's interesting that some of the REST crowd are starting to see the need for durable messaging. Dare argues that the features and usage models are more important than wire protocol. As long as it's standardized, I don't care that much about the protocol. Several of the REST folks mentioned AMQP. While I've got nothing against AMQP technically (frankly, I haven't read the spec), but what does it say about durable messaging vendors (including MSFT) that a financial institution felt the need to drive an interoperable durable messaging specification?
Posted By Harry Pierson at 9:57 AM Pacific Daylight Time

Wednesday, July 11, 2007

Morning Coffee 100

  • The big 100. This puts be 1083 posts behind Iron Link Poster Mike Gunderloy. As his .NET skills deteriorate, maybe I can catch up...but I doubt it. I'm only 77 posts behind Sam Gentile, so maybe that's a bit more feasible. 
  • The ADO.NET Team blog announces the new Entity Framework CTP. Looks like there's also a new .NET Framework 3.5 CTP and new Visual Web Developer "Orcas" Express CTP as well. (via Sam Gentile)
  • Speaking of "Orcas" VS 2008, it launches with Windows Server 2008 and SQL Server 2008 next February. (via DNK)
  • Scott Guthrie continues is LINQ to SQL series. This time, using LINQ to SQL to update the database.
  • My friend Arvidra Semhi recently moved and rebooted his blog. Among his many accomplishments, Arvindra started the Architecture Journal. I'm particularly interested in his recent Service Capsule work. Subscribed.
  • Last night was the Microsoft E3 Briefing. Gamerscore blog has the news rundown. Didn't seem to be any HUGE news. Last year's E3 was the first Halo 3 showing and X06 featured the Halo Wars announcement. Nothing that earth-shaking this time, though the XBLM keeps on rolling, now featuring Disney movies. (Major Nelson has a list.) I'm thinking that the whole HD-DVD vs. BluRay war is going to be eclipsed by direct download before it's over, though I'm still waiting for PC support & all-you-can-eat pricing.
  • Politics 2.0 Watch: Clay Shirky has a great blog post on modern-day Luddites. As he points out: "A Luddite argument is one in which some broadly useful technology is opposed on the grounds that it will discomfort the people who benefit from the inefficiency the technology destroys." How much inefficiency is there in our modern political system? And more importantly, who benefits from that inefficiency? We've already seen the dramatic effects blogs can have on political news, media and reporting. What happens when users citizens are no longer satisfied just writing about the political process and want to get their hands dirty in the policy-making process itself?
Posted By Harry Pierson at 11:37 AM Pacific Daylight Time

Monday, July 09, 2007

Morning Coffee 98

  • Morning Coffee was canceled on Thursday and Friday on account of a kidney stone. So not fun. Luckily, it was a little one and it was alone, but I will be listening very closely to my doctor's advice to avoid another.
  • Took the kids to see Ratatouille last Tuesday and saw Transformers yesterday with my wife due to fluke babysitter luck. I liked Ratatouille, but I'm not sure it's the 51st best movie of all time. On the other hand, major props for making a kid movie with a significant lack of toy tie-ins. Ratatouille is a better movie that Cars, but I don't see my four year old boy trading in is Lightning McQueen toy car for a Remy the Rat. Transformers on the other hand obviously did not forgo the toy tie-ins! Still, it wasn't bad. Kinda reminded me of The Rock with a bigger budget.
  • Micahville listed DevHawk on it's list of 69 Tech Blogs That Don’t Suck. Thanks!
  • David Ing boldly writes that C# is getting fat. Or maybe it's just big-boned. My take: no question that integrated query is a big feature that covers a lot of surface area. But given the prevalence of databases and other queriable stores, it's critical to improving programmer productivity. Go read Todd Proebsting's talk on Disruptive Programming Language Technologies. Two of his candidates for disruptive language technologies were Database Integration and Manipulating XML. LINQ neatly covers both.
  • According to John Shewchuck, the new BizTalk Services release is available. However, when I click on the "what's new" page, it tells me they're experiencing technical difficulties. (Their error page is Oops.aspx. Funny!)
  • Scott Hanselman has Programming Personas 2.0. Who are you? I thought I was and "Order n" Architect (the quote "Where's the whiteboard" is spot on) but my CS background isn't as strong as the persona's.
  • Sam Gentile is starting to dig into Concurrency and he has a great list of links that have influenced his design.
Posted By Harry Pierson at 11:06 AM Pacific Daylight Time

Monday, July 02, 2007

Morning Coffee 97

  • For the first six months of 2007, I posted 158 times in 181 days. I'm obviously off the pace I set in January of averaging a post a day, but I am averaging just under nine tenth of a post per day. Not bad. At this rate, I'll post almost as much this year as I did the last two years combined.
  • It was a great family weekend. Saturday, three of my friends helped me move an upright piano that we got used for a great price. Luckily, one of said friends is also a physics teacher, otherwise I don't think we could have gotten that heavy thing in the truck. To say thanks, we BBQed for them Saturday evening. Then yesterday we took the kids to see a Sesame Street Live show. Both days were beautiful, which my wife greatly appreciated.
  • The Caps hit the free agent market running yesterday, picking up Tom Poti (four years, $14 million) and Victor Kozlov (two years, $5 million). They weren't the A-list free agents, but they both seem like solid pickups. According to Japer's Rink, the Caps were about $6.5 million under the new cap minimum. These two signings just about close that gap, but it doesn't sound like they're done. That's good news for Caps fans.
  • Scott Guthrie continues his series on LINQ to SQL. While I've seen most of this before, the cool thing Scott shows is hovering over the LINQ to SQL result and bringing up the exact SQL statement in a debugger window. That's pretty cool.
  • Nick Malik is now "Mr. SOA" inside MSIT. As you might imagine, I'll be working with him fairly closely. Actually, he's late to a meeting with me as I type this.
  • John Shewchuk announces a new version of BizTalk Services coming soon. The big new feature is access control for services exposed via the BizTalk Services. If you can't wait, you can try out the new stuff in their pre-production environment right now, before it's live. Is this a beta of a beta?
  • Soma announces the MSDN Small Business Developer Center. I took a quick look thru the site. Strangely enough, it doesn't cover Dynamics - Microsoft's business software primarily targeting small and medium size businesses.
  • Ted Neward called object/relational mapping the "Vietnam of Computer Science". David Chappell gives us our next war / technology analogy, declaring that the REST vs. WS-* war is over, ending in a truce like the Korean war rather than "crushing victory for one side".
  • Like Jeff Atwood, I didn't realize About Face has been updated, twice. I am a huge fan of the first edition, but Jeff calls About Face 3 "the best edition of this classic yet". I just ordered a copy for myself.
  • David McGhee transcribed a fantastic session with Dr. Don Ferguson at the Australian Architecture Forum on SOA/ESB integration in the real world. Go read the whole thing. Udi Dahan pulls out the quote "there is no such thing as a centralized ESB." Amen to that. My other favorite quotes from this discussion is "The temptation is often to get everything in a repository, but often you cannot rely on people to put everything in the registry" and "there is sometimes the “Highlander” philosophy of there can be only one service". If you're design depends on centralization and/or significant change in human behavior, it's doomed from the start. Frankly, it's amazing how often that happens.
  • In response to my What is the Rails Question post, Hartmut Wilms wonders why "the .NET community (for the most part) ignores Open Source Projects". I wonder the same thing, though I don't think you can lump the whole .NET community together on this. While some parts of the community ignore anything they can't download from MSDN, other parts strongly embrace open source projects.
Posted By Harry Pierson at 11:07 AM Pacific Daylight Time

Tuesday, June 12, 2007

Morning Coffee 88

I've got over 500 unread news posts and 200 emails in my inbox to process. So this is nowhere near comprehensive.

  • Clarius released the June 07 CTP of their Software Factory Toolkit. Big new feature in this drop is T4 Text Template editor that has syntax highlighting and eventually intellisense. They also released the May 07 CTP of VSSDK Assist, previously known as VSIP Factory. Haven't played with either yet, but it seems like a good time to be a tool builder.
  • PowerShell hits a million downloads in six months. No surprise there, IT'S FRAKING AWESOME. Jeff Snover details seven MSFT products using PS, promising many more that he can't talk about. See earlier comment about being fraking awesome.
  • Speaking of PS, I don't "get" Server Core because it doesn't support managed code. So no PS for Server Core. They announced @ TechEd that Server Core will support IIS 7, but since there's no CLR you can't run ASP.NET. As far as I'm concerned, no PS and no ASP.NET is below the minimum threshold of usefulness. I realize it's technical limitation related to the current factoring of the .NET Framework and I assume some team somewhere in Redmond is working on fixing it. But what's the point of releasing Server Core in the meantime?
  • QUT releases version 0.8 of their Ruby.NET compiler. Given that the IronRuby guys bootstrapped by licensing the Ruby.NET compiler, I wonder how these two projects will evolve side by side.
  • Speaking of Ruby, JRuby has gone 1.0. Congrats!
  • At TechEd, I saw my friend Steve Jones from Capgemini, and it's not this Steve Jones. Woops. But CRUD is still CRAP.
  • Pat Helland breaks Scott Hanselman's Rule #2 and details how he "lost a Megan".
  • My ex-teammate David Hill has been busy with Acropolis. If you are even the slightest bit interested in this technology, you should be reading his blog.
  • Microsoft acquired a company called Stratature last week. I don't typically track MSFT acquisition news + it was lost in the noise of TechEd. But Roger Wolter thinks it's a great move and that Stratature's Master Data Management hub product is one of the best. Given the importance of MDM in SOA, I think I need to go learn more about this product.
Posted By Harry Pierson at 8:58 AM Pacific Daylight Time

Friday, June 08, 2007

Morning Doughnuts 11

Harry will be back on Monday so I will returning to blogging on my website, while I will let the expert return to his normal posts here (not that he really took a break). I agree with Harry's post in that I really want to get something built so that we can talk about more than theoretical models. Like last time I appreciate the opportunity to sub for the master this last week. I hope that you found some of my entries interesting.

  • Sam Gentile wrote the other day why it's great to be a Microsoft developer. I enjoyed that post because I just celebrated the end of my first year here at Microsoft. At this point I am not sure what I have contributed, but I have learned a great deal and want to apply that knowledge over the next year to help the company to succeed. We really do have great people and great technologies.
  • The Seattle/Oklahoma City Sonics hired a GM who is only 30 years old. You know you must be getting old when the people running the sports teams are younger than you. :-) He comes from the Spurs organization though so at least he has a background from a successful franchise.
  • Ben Pearce listed out his top 5 questions about PowerShell this week at TechEd. He also recommends the book "PowerShell in Action" by Bruce Payette. I heartedly agree with this endorsement as the book is excellent.
  • It looks like there are going to be more family friendly games for the XBOX360. I for one am glad to hear that. The other day as I was trying to find some games my 4 year old with the broken leg could play I realized how many games I have that wouldn't be appropriate for him. This is very good news in my opinion.
Posted By Dale Churchward at 9:44 AM Pacific Daylight Time

Thursday, April 26, 2007

Morning Coffee 71

  • It's been almost four months since I started these morning coffee posts. I like the regularity - there's been 84 weekdays so far this year, so 84 - (71 + 6 days missed from vacation) = only seven missed morning coffees. On the other hand, I think my daily blogging fix is keeping me from digging deeper into some issues. So I'm going to start cutting back to only three morning coffee posts per week, with the hope of three deeper technical posts and one wildcard post per week.
  • Speaking of cutting back, my parents are in town this weekend so I doubt I'll get a post out tomorrow or Monday. Have a good weekend anyway.
  • Windows Server "Longhorn" Beta 3 is out. Now is time to start getting serious with it.
  • Joe McKendrick is reporting that Gartner has given the green light to spending more on SOA. Maybe it's because I work for a technology savvy company, but I've never understood outsourcing critical business decisions about technology adoption to a consulting company.
  • It's a Joe McKendrick twofer: He also reports that IBM is calling for a new SOA directory / discovery / registry standard to replace UDDI. I totally get the need a "new UDDI", though I'd wager that my issues with UDDI are very different than Big Blue's.
  • Yesterday, I made a crack about how un-scalable the Internet would be if every cFonnection went thru a central hub. Two days ago, Clemens has a long post about the implications of an Internet Service Bus. First, I can't wait to see how that thing works. Second, it's fairly obvious that not all traffic will go thru this bus (since the bus ain't out yet and yet you're still reading this via the Internets), so maybe that answers my question about ESB's and centralization? That is to day, use the bus where you it's useful, otherwise don't bother?
Posted By Harry Pierson at 10:07 AM Pacific Daylight Time

Thursday, April 19, 2007

Morning Coffee 66

Yesterday's Morning Coffee was canceled on account of rain. In my living room. It's fixed now.

  • Andre Vrignaud writes about MS Research's new High Capacity Color Barcodes technology. As he points out, there's some fascinating gaming potential for these barcodes because they have such high capacity (something like 2kb per square inch) and can be read without special equipment (a camera phone should work).
  • According to a Pew Research Center report, Daily Show/Colbert Report viewers are significantly better informed than Fox News viewers. On the other hand, they're only slightly more informed than O'Reilly Factor viewers or Rush Limbaugh listeners so it seems like a wash.
  • Speaking of The Daily Show and The Colbert Report, you can now download them from Xbox LIVE Video Marketplace. But at $2 160 points an episode, it's cheaper to set my DVR.
  • I recently re-discovered Remus Rusanu's SSB blog. He went dark for a few months there, but he's recently posted a new version of his Service Listing Manager utility, presented SSB at DevConnections and showed how to implement a managed stored proc to receive SQL DDL event notifications. Event notifications is one of those features I didn't even realize was in SQL.
  • Dottie Shaw, one of the program managers on my project, has started blogging. That leaves two team mates and one project member still not blogging.
  • Yesterday, I stumbled into some other teams morale event. They were bogarting the cafeteria, so it wasn't like I was crashing it or anything. Normally, I wouldn't hang around some other teams party, but they had a projector, an Xbox 360 and two copies of Guitar Hero so I had to hang out and watch them play head-to-head for a while. That looks like a fun game.
  • Chris Anderson writes at length about the primary enemy of Long Tail economics: "the absurdly complicated and expensive process of rights clearance". His case in point is the coming DVD release of WKRP in Cincinnati, which has replaced the dozens of songs used as background music with "Muzak-style songs that could be licensed in perpetuity for a small flat fee" that apparently "sucked ass".
Posted By Harry Pierson at 10:42 AM Pacific Daylight Time

Tuesday, April 03, 2007

This Is Not A Technical Blog

Sam Gentile decided to spawn a new blog because he doesn't feel his CodeBetter blog is the place to write about "politics, music, family or life in general". I understand Sam's feelings 100%. I maintained blogs.msdn.com/devhawk for these exactly these reasons. But since I'm no longer an evangelist (or MVP, natch) and my blog no longer graces the pages of the MSDN Architecture Center, I don't bother to provide a dev-centric, politically sanitized and work safe version of this blog. As I wrote several years ago that DevHawk is not a technical blog, it's my personal blog. Like Sam, I don't get paid to write it and if you don't want to put up with my politics to get my architecture insights, you're free to unsubscribe. 

Sam, if you're reading this, I suggest that you have one "master" blog and one "sanitized" blog, rather than two independent ones. I've tried having two separate blogs, but one always suffered. My rationale was always that there is only one "me" and I wanted once place that reflects the things I am passionate about. If I felt a specific post needed to be sanitized for whatever reason (too personal, too vulgar, not technical, etc.) I would simply choose to not cross post it to my MSDN blog.

Posted By Harry Pierson at 11:23 AM Pacific Daylight Time

Morning Coffee 56

  • I survived the weekend no problem. My wife has the details of what she did for the weekend while I played Mr. Mom. The kids were great, we even went to see the Easter Bunny on Sunday. Wish the weather had been better, but we did get to go on a little walk around the neighborhood between hailstorms Sunday after naps.
  • Between taking the kids all morning until Jules got home from the airport and going to opening day for a team morale event, I worked about 30 minutes yesterday. In case you're wondering, that's way below average. I typically work at least twice that every day. :)
  • After maintaining a post a day average for January and February, I slipped a bit in March. Twenty seven posts in thirty one days. So that puts me five posts behind for the year as of this one.
  • Dale let me borrow Madden 07 for the weekend so I could pump my gamerscore (a practice called gamerscore whoring). I still need 255 points by April 22nd to complete the Old Spice Experience Challenge. I'm not proud of it, but it's not like I have much time to play these days.
  • Mads Kristensen has a new .NET blog engine intuitively called BlogEngine.NET. I wonder how it compares to dasBlog, which powers DevHawk. (via DotNetKicks)
  • I wrote a last week that unit test support should be in the Express editions of VS. Thanks to Jamie Cansdale, it is. (via Larkware)
  • Scott Hanselman saved his C# Tiny OS project from the impending shutdown of GDN and reposted it to his blog. I first met Scott at TechEd Malaysia 2002, so I remember seeing him present this "back in the day".
  • EMI is going to start offering songs sans DRM @ $1.29 a pop. Assuming other labels follow suit, this is gonna be huge. (via Loke Uei
  • Jomo Fisher writes about using LINQ as a string switch compiler that's about 900% faster than using a hash table. Money quote: "Any time I see a data structure with a capability I’m not using it makes me wonder whether I can trade that capability for something I do need—in this case a speed boost." LINQ is turning out to be much more interesting than just a (much) better way to query databases. (via DotNetKicks)
Posted By Harry Pierson at 11:07 AM Pacific Daylight Time

Thursday, March 29, 2007

Morning Coffee 55

  • Many years ago, I picked .net instead of .com as DevHawk's TLD. My old pal Chris picked up devhawk.com and redirected it to the site because he got tired of typing "devhawk ctl-enter" into the browser address bar and getting nothing. He must have let it lapse because now devhawk.com points to what looks like a splog in development. Part of me is annoyed, but a bigger part of me just doesn't give a shit. You - dear reader - have found this site, and that is all I care about.
  • A couple of weekends ago, I re-wired my living room to enable surround sound. It meant adding a receiver to the mix, and that pushed us into three remote territory, which is too many. So I picked up a Logitech Harmony Universal Remote, since they have one specifically for the Xbox 360. So far so good, but I'm not sure my wife likes it much yet. However, their remote config application doesn't run on Vista yet, so I had to bust out the old laptop to get it working.
  • I've written about Spec# before, but I've never experimented with it. MS Research just released a new version that support VS05, so here's my chance. (via Larkware)
  • Speaking of MS Research, the Deepfish project has released a new tech preview. However, Loke Uei is reporting they've already maxed out on test accounts. (via Major Nelson)
  • Jeff Atwood says there's no substitute for learning on the battlefield. I always say that the only way to get good at something is to suck at it for a while. Different words, same concept.
  • According to Naysawn Naderi, the "majority" of unit test features are being added to the Orcas Pro version. This is obviously good news, though personally I agree with Brad that they should available separately VS. Not sure it needs to be in the framework itself, inclusion in the .NET Framework SDK is probably sufficient. I also think there should be unit test support in the VS express editions as well. (via Knowing.NET)
  • I've been digging Geekdad, but most of the stuff is for older kids. I mean, I'd love to take my daughter karting, but she's only two and can't reach the pedals! However, I'm itching to try out today's post on image searching with younger kids. The kids love to draw on my new tablet, so I'm thinking of not only searching but snipping these images into OneNote for them to doodle on.
Posted By Harry Pierson at 9:12 AM Pacific Standard Time

Wednesday, March 21, 2007

Morning Coffee 49

  • The eBay Architecture SD Forum presentation that spawned the whole Transactionless meme is available here. As I reported yesterday, it doesn't call for going completely transactionless as Martin suggested. It calls for going without distributed transactions, which I agree with 100%.
  • More interesting than the transactional aspects, I found the data tier functional segmentation information facinating. Too bad those guys aren't using our platform, SSB was expressly designed for exactly this sort of segmentation. I also liked that step 1 for "massively scaling J2EE" is to "throw out most of J2EE".
  • After going mostly dark since last august, the manager of my old team John deVadoss has been blogging up a storm since the beginning of March. So has my old boss Mike Platt. I wonder what happened at the begining of March? Here's hoping this blogging fever spreads on my old team.
  • Joe McKendrick: "The bottom line is that ROI on SOA is an enterprise challenge, not an IT challenge." Truer words are rarely spoken.
  • The rumor mill on the Black Xbox 360 "Elite" are coming fast and furious. I don't care about the HDMI port (my HDTV is five years old and doesn't have one) but I would like a bigger hard drive...
Posted By Harry Pierson at 10:25 AM Pacific Standard Time

Tuesday, March 20, 2007

Morning Coffee 48

  • John Backus, leader of the team that developed the first high-level programming language, died yesterday. It's been a hard year so far for IT industry luminaries. (via Good Math, Bad Math)
  • Yesterday, I followed on Martin Fowler's post on going transactionless. As I said yesterday, I didn't agree with the idea of no transactions inside a service, but I agree 100% with no transactions between services. Via Paul Brown, we learn that EBay does allow forbids the use of client-side or distributed transactions, but doesn't outlaw the use of transactions in general. That makes much more sense to me since transactions between services would have to be are distributed.
  • Wired just launched a new blog called GeekDad with the mission statement "Cool toys and fun projects you and your kids do together". Subscribed (via The Long Tail)
  • DevHawk made Todd Bishop's Microsoft Blog Directory. It's in the "Software Development and Design" section. Not sure why I'm listed above Raymond Chen, John Montgomery, Chris Sells and Don Box in that section, but that's nice company to be included with.
Posted By Harry Pierson at 9:14 AM Pacific Standard Time

Monday, February 19, 2007

Morning Doughnuts 2

  • Joel Dehlin, the CIO of the LDS church has an interesting blog entry on buy versus build this morning. His main point is that buying is often cheaper, but only if you can move your business processes to match the processes in the off-the-shelf software.
  • The search for Jim Gray by his friends and colleagues has been called off. Even with a massive high-tech effort no new clues have been turned up. For the sake of his family I do hope that the mystery is solved. I would imagine it is very hard to not know what happened to him.
  • I am currently running a Build and Deployment Task Force. We are trying to ensure that our team follows best practices when building new applications. The project that Harry and I are working on seems to be a good test bed for the process.
  • For those of you who read my blog you know I am passionate about how we implement Service-Oriented Architecture in the real world. I have been reading a book titled Service-Oriented Architecture: A Planning and Implementation Guide for Business and Technology. I find the description of real business objections, and how to solve them quite refreshing.
  • It appears that the San Diego Chargers are going to hire Norv Turner to replace Marty Schottenheimer as their head coach. I don't see how fans of the Chargers can possibly see this as an improvement.
Posted By Dale Churchward at 10:04 AM Pacific Standard Time

Thursday, February 15, 2007

A Secret Mission in Uncharted Space

I'm taking some time off, starting tomorrow. I'll be out all next week. That means that you'll have to look elsewhere for your daily dose of Morning Coffee. I do have a few posts I've been holding back to auto post next week, so you don't have to go completely DevHawk free. But if something big happens next week, don't expect any immediate reaction from me.

In addition to various technical blogs, I read a variety of political blogs. Not sure why, but where most of the technical blogs I read are individual voices, political blogs seem to be more group efforts. And even on the individual political blogs, they still have guest posters that come in periodically and when the primary blog owner is on vacation. Since I've gotten into the habit of posting every day, I decided I'd try out a guest poster. So in addition to a few auto posted entries, my teammate Dale Churchward will be holding down the fort here at DevHawk in my absence. I've linked to Dale's blog Half My Brain on many occasions, so you should have a passing familiarity with him.

One of the interesting things about having Dale posting here is how different he and I are. I'm a developer at heart but he's an sysadmin at heart. I code, he scripts. I worry about developer productivity, he worries about management and operations. He carried a pager for ten years, I didn't. I'm a Democrat and he's <gasp> a Republican! (At least he's not a Penguins fan.)

Seriously, one of the things that is great about working with Dale is the vast difference in experience. He's forgotten more about management and operations than I know (though I am a fast learner) so we make a very good team. Have a good week and be nice to Dale while I'm gone.

Posted By Harry Pierson at 11:39 AM Pacific Standard Time

Wednesday, January 31, 2007

Morning Coffee 21

  • With this post, I will have posted 31 times in January. I doubt I will average a post a day for the rest of the year, but I've averaged less than half a post for a day for the past two years.
  • LINQ to whatever is the new hotness. The ADO.NET team blogged about LINQ to DataSet last week. Of course, there's also LINQ to SQL, LINQ to XML, LINQ to Entities and LINQ to XSD. Am I missing any other LINQ's? (Would that be the missing LINQ? har har har)
  • Joe McKendrick writes on "rogue" systems in the enterprise. In typical pundit fashion, he doesn't bother to take a stand on the subject, going so far in this case of having a reader poll rather than offering up his own opinion (wouldn't want to be wrong, would we?). However, I thought it was interesting that the three poll answers were "No rogue services", "Sometimes rogue services are OK" and "Why fight it?". Where's "Yes, let's directly empower the users" in that list?
  • I finally got around to installing PowerShell on both my laptop and workstation. I love the concept, but so far I just haven't had the time to dig into it or found a good problem to solve with it.
  • Windows Live now has it's own SDK. According to the Windows Live Dev News, the new and updated areas of the unified SDK include Search, Alerts and adCenter. (via DotNetKicks)
  • Speaking of DotNetKicks, is it just me or are a lot of the links submitted by their original authors? Steven Cohn on Service Layer Transparency, Keyvan Nayyeri on How to Write Validators for Custom WF Activities, Mads Kristensen on Universal Data Type Checker just to name three of the top four articles currently on the DNK home page. Seems fishy to blow your own horn like that, but since SNK shares advertising revenue with story submitters, it sorta makes sense.
Posted By Harry Pierson at 10:51 AM Pacific Standard Time

Thursday, December 07, 2006

Multi User Blogs

Most of the technical blogs I read are individual blogs (like this one). Yet, most of the political blogs I read are multi-user. Typically, there is a primary poster - such as Josh Marshal from Talking Points Memo. But TPM has at least four other bloggers on their home page (Paul Kiel, David Kurtz, Greg Sargent, Justin Rood). I wonder why these two blogging communities are so different?

Posted By Harry Pierson at 3:16 PM Pacific Standard Time

Wednesday, October 25, 2006

FeedFlare Finally Fixed

I moved over to FeedBurner a while back. DasBlog has great support for FeedBurner - all you do set your FeedBurner feed name in the DasBlog config and it handles the rest, including permanently redirecting your readers to the new feed.

However, I haven't been able to make FeedFlares work today. FeedFlares "build interactivity into each post" with little links like "Digg this", "Email this" or "Add to del.icio.us". Since FeedBurner is serving the XML feed, it's no big deal for them to add those links into the RSS feed. But to get those same flares to work on the web site, you have to embed a little script at the end of each item. Scott shows how to do this with DasBlog, except that it didn't work for me. I've tried off and on, but for some reason, the FeedBurner script file I was including was always empty.

Then I noticed the other day that my post WorkflowQueueNames had the flare's on them. Hmm, why would that post work and none of the rest of mine work? Turns out that it works because there's no spaces in the title. Unlike most of the rest of the DasBlog community, I'm using '+' for spaces in my permalinks, instead of removing them. So I get http://devhawk.net/FeedFlare+Finally+Fixed.aspx as the permalink url instead of http://devhawk.net/FeedFlareFinallyFixed.aspx. In fact, that feature is in DasBlog because I pushed for it (a fact Scott reminded me of while I was troubleshooting this last night). And it was breaking the FeedFlares.

The solution is to URL encode the '+', which is %2B, in the FeedFlare script link. I created a custom macro, since I already had a few custom macro's powering this site anyway, and now I get the FeedFlares on all my blog entries. I'll also go update the DasBlog source, but creating a custom macro was both easier and less risky than patching the tree and upgrading everything.

Posted By Harry Pierson at 1:55 PM Pacific Daylight Time

Tuesday, October 17, 2006

WF Clarifications and Corrections

Last week, after I posting my WF learnings, I got a call from Paul Andrew, Technical Product Manager for WF. Seems calling the built-in persistence service and the built-in web service support "toys" created some extra work for Paul. He blogged a response and I wanted to follow up on a few things here.

1. The "toy" SQL Persistence Service - My understanding about how the built-in persistence service works was incorrect. As per Paul's blog, "The WF runtime doesn't load all idle instances on startup, that would be crazy." Of course, we're talking about the SQL Persistence Service, not the WF runtime, but it's still crazy. It's so crazy that when I thought that's what the SQL Persistence Service did, I called it a toy! So I'm flat out wrong on this one. Sorry about that Paul (and the rest of the WF team).

2. The "toy" Web Service Integration - Apparently, I was also mistaken about the use of ASP.NET sessions. But I was right about WF's use of ASMX, the use of the tempuri.org namespace, and that web service support is limited to WS-I basic profile request/response style services. So while "toy" is a bit harsh, the web service integration is still pretty light weight. Where's the WCF integration? I understand the need to support ASMX, but no WCF means no support for duplex conversations, either as service provider or consumer, and no support for reliable sessions. That makes WF's web service integration a non-starter in my project. Of course, the good news is that you can build your own WF activities, so I can toss the built-in web  service activites and still get to keep the rest of WF.

3. Is WF itself a "toy"? Paul has a list of reasons why WF isn't a toy, including some silly ones (it wasn't in Toy Story). In case there's any confusion about my opinon of WF, let me be clear: I think WF rocks, full stop. My negative comments about WF were isolated to the two areas listed above and not intended to apply to WF as a whole. The other seven points were all about cool things that I didn't realize WF does.

I'm not just trying to kiss up to Paul here - WF is one of two foundation technologies that my project absolutely depends on. (Any guesses on the other?) With the class out of the way and a better understaning as to what's possible with WF, I will be diving much deeper on WF in the future. Watch this space for more WF related posts.

Posted By Harry Pierson at 12:08 AM Pacific Daylight Time

Wednesday, October 04, 2006

Possible Comment Issue

Udi emailed me over the weekend to let me know that he had issues leaving a comment on one of my posts. If you've had any issues commenting here on DevHawk, please drop me a line and let me know.

Thanks!

Posted By Harry Pierson at 9:45 AM Pacific Daylight Time

Friday, September 29, 2006

New Version of Gamer Card Writer Plugin

Gamer Card Writer Plugin There's a new version of WL Writer, so I spent a little time updating my Gamer Card Writer Plugin. The big addition in this version is support for the different card styles from MyGamerCard.net. Also, I added a preview, so you can see what the card will look like before you insert it into your post.

Rather than post it here, I submitted it to the Windows Live Gallery, since they've added an area for Writer Plugins. You can download it from there.

Posted By Harry Pierson at 5:15 PM Pacific Daylight Time

Friday, September 15, 2006

Gamer Card Plugin for WL Writer

In my last post, I wanted to include a link to my gamer card, showing the NHL 07 logo on it. It turns out that in addition to the "official" gamer card from Xbox.com, there's also the MyGamerCard.net site which provides both image and flash versions of gamer cards. Since I'm using Windows Live Writer, and I hear it's really easy to extend, I decided to throw together a plugin for inserting Gamer Cards. It was, as advertised, extremely easy. I spent more time laying out the dialog box than I did writing the code to interface with WL Writer.

The plug in provides basically five Gamer Card options:

  • Standard Xbox.com Gamer Card
  • MGC.net Gamer Card image with link to Xbox.com Profile
  • MGC.net Gamer Card image with link to MGC.net Profile
  • MGC.net Gamer Card image only
  • MGC.net Gamer Card flash movie

I'm interested in feedback and suggestions for future versions. MyGamerCard.net provides ten different Gamer Card styles (that's my Gamer Card in the "H2O" style to the left) so that's an obvious enhancement for another day. I'd also like to evolve the plugin into a "Smart Content Source", which allows you to edit the content after it's been created (like the default "Insert Map" option). Finally, I'm thinking of adding support for GamerScoreChart.com.

Download GamerCard.WriterPlugin.Setup.zip (142.41 KB) and enjoy. Let me know what you think.

Posted By Harry Pierson at 4:48 PM Pacific Daylight Time

Tuesday, August 15, 2006

Extending WL Writer

So I downloaded the SDK for WL Writer and took a quick look. Basically, there's two types of extensions you can build:

  • App Launcher - so you can add a "Blog It" button to some other app to remotely launch WL Writer. I assume this is how the WL Toolbar intergration works.
  • Content Source - so you can add some type of custom content to a post. Typical examples would be Technorati tags or Currently Listening To info.

Given that they are trying to support "every blogging service out there", I'm surprised there's not a way to build a plugable blogging service. WL Writer only allows you to customize the content of the post via plugins. Customizing the metadata (i.e. categories) is right out. I realize it's the hip thing to put Technorati tags right in your post content, but Technorati also picks up category information which dasBlog already has great support for. What I'd really like is something that acts like del.icio.us' new post form, where you can free type in your categories, it highlights words as you type and it shows you a list of all your tags so you can click on them.

One other minor note - WL Writer does a good job for inserting hyperlinks. When you select a word, often the whitespace that follows it is also selected. Some HTML editors will insert the hyperlink over the whole selection - inlcuding the whitespace which makes no sense. WL Writer gets it right and excludes any trailing whitespace from the hyperlink. Cool!

Posted By Harry Pierson at 8:32 AM Pacific Daylight Time

Monday, August 14, 2006

A Few Short Takes

I did say I was going to go a little dark when I took the new job didn't I? Things have been hectic - my brother's getting married in just under two weeks and I'm working on getting my part of my new project's Business Requirements Document (otherwise known as the BRD) done before I leave on vacation. The BRD process is fairly odd for this project - for one, the project team is writing it instead of the business unit. Given that we're building infrastructure, many of the "business" elements of the BRD are not particularly appropriate. But we're muddling thru. In a meeting with my boss's boss's boss last week, he stressed the need for delivering incremental value. In other words, the need for using an agile process which is cool as far as I'm concerned.

I have a couple of longer posts coming, but here are a few short takes for a Monday morning:

Windows Live Writer

Everyone seems gaga over the new tool, so I downloaded it. Pretty cool. I'm writing this post using it. Typically, I write my posts in FrontPage SharePoint Designer and paste them into the dasBlog web editing interface - I'm pretty particular about the HTML that ends up on my blog. So far, Writer seems up for the job. And I love the Web Layout editing mode. Does have some bugs and missing features. For example, it has spell check, but not background spell check. And as Scott pointed out the category list is totally broken when you have a lot of categories. Writer has an SDK, and one of the examples they suggest building with it is "Tags from tagging services". I'd like to have a simple text box where I could enter categories as tags, and have it automatically create any categories that aren't already on my site. I've already got a side coding project going, but I'm almost done so maybe I'll take that up next.

XNA Game Studio

I was researching some Xbox stuff for a customer several months ago and got wind of this plan. I can't wait to see it running. I recently picked up Frank Luna's Intro to 3d Game Programming: A Shader Approach based on Dave's recommendation. I figure most, if not all, the source code will be obsolete in the XNA Framework world, but the concepts are spot on so it's been a good read.

One aspect of this announcement that I haven't seen talked about yet is the impact on the mod community. Many games today ship with an SDK - here are examples for Dungeon Siege, Half-Life 2 and Doom 3. Of course, the idea is that modder's get a popular game and industrial-strength game engine to build on for almost no cost and the game publisher expands the value of their game - any mods require the original game to play. Wouldn't it be cool if you could mod Halo 3? And combined with Live Anywhere, the possibilities are enormous. I can't wait to see how this evolves.

New Machine & Vista

For the first time in my nearly 8 year MSFT career, I have a desktop machine. And it's a nice one - a Dell Precision 690 workstation. 2x dual Xenon CPU, 2x 160GB SCSI Hard Drives, dual link DVI outputs for driving twin widescreen monitors - dual is very big on this machine. Pretty much the only skimpy part of this machine is the RAM - only 2GB. But I'm not running x64 (yet) so that's not a huge deal (yet).

Of course, such a screaming machine runs the latest Vista build. I'm also running it on my laptop - with Aero Glass even, thanks to this driver. The combo of latest Vista build + latest Office build is pretty sweet.

With new machines and new operating systems, I've been spending significant time installing. The Dell box turned out to be a real pain as it only has the SCSI drives which are not standard on the WinXP install disk. I'm dual booting XP/Vista on both machines, but I had to create a custom slipstreamed XP install disk to get my Dell workstation up and running (Vista installed without any extra work). But now I've got the baseline install imaged - thanks to BootIt NG which I've spoken highly of before - I shouldn't ever have to do that again.

Posted By Harry Pierson at 10:53 AM Pacific Daylight Time

Monday, July 17, 2006

New Teammates Blogging

I'm settling in to my new job. One way to tell, read Dale Churchward's blog. Dale's a teammate of mine. He only joined Microsoft a few months ago. Apparently, he used to blog at his old job, but either way we've now doubled the number of bloggers on my new team, with hopefully more to follow.

In addition to his opinions of political discource and the Seahawks chances next season, Dale's got some interesting posts on data integration and system diagrams. Check it out.

Posted By Harry Pierson at 11:43 AM Pacific Daylight Time

Tuesday, June 06, 2006

Number One Sydney Picture on Windows Live and Google

I typically don't search Technorati for incoming links because a significant number of the links to my blog come from my inclusion on dasBlog's default blogroll. For example, "Dutch Railways Suck" doesn't appear to have anything to do with architecture, development or hockey, but they still link to me. However, in checking out Technorati today, I discovered several blogs were linking to me that were out of the ordinary to say the least. Turns out that this picture I took on my trip to Australia two years ago is the number one result when searching both Windows Live Image Search and Google Image Search.

I'm guessing that's why this picture shows up on the blog of woman trying to reverse the trends of feminism, a guy who despises Sydney, a couple of french blogs that I can't read and two german blogs - one I can't read and one that I can.

Posted By Harry Pierson at 3:43 PM Pacific Daylight Time

Thursday, April 27, 2006

FeedBurner

I finally got around to signing up for a FeedBurner feed for DevHawk today. It's available here. I've updated my site template, but existing readers are still getting the old feed. Scott has built support for FeedBurner into dasBlog, but it isn't released yet. Feel free to switch over on your own if you want, but I'll get the automatic redirection working soon enough.

UPDATE - Apparently I didn't look hard enough. FeedBurner support made it into the currently shipping version of dasBlog, so I've turned it on. Thanks to Tomas Restrepo for the heads up.

Posted By Harry Pierson at 2:18 PM Pacific Daylight Time

Saturday, February 11, 2006

New Devhawk Design

For those of you reading this via the syndication feed, I rolled out a new site design last night. I figured that after three years it was high time for a new site design. Not being much of a designer, I started with the Rounded design template from the ASP.NET Design Template Gallery. It's much cleaner and more readable than my old deisgn, as I've removed all my blogrolls and fixed the width for 1024x768 screens. 

As part of the switch, I moved from using a table-based layout to a CSS-based layout. I even wrote custom dasBlog macros that render my naviagation menu and date archive as unordered lists. The default dasBlog macros for those are rendered using tables. (Note, I didn't rewrite the category list, so I'm not completely table free). If there's interest from the dasBlog community, I'll post the code.

I gotta say, I'm not sure I see what the big deal about CSS over tables is. I mean, I'm as impressed as the next guy with CSS Zen Garden, but honestly I don't get it. Maybe it's because I'm a developer, not a designer at heart. But CSS seems like hard-coded voodoo to me. This site has a simple fixed-width two-column layout, but it took a great deal of experimentation to get the floats coded correctly to render in both IE and FireFox. In fact, there's a small issue with the new deisgn in IE that I didn't bother to fix. But if I had just used tables, it would have taken five minutes.

Please let me know what you think of the new design.

Posted By Harry Pierson at 8:26 AM Pacific Standard Time

Friday, January 27, 2006

Happy Belated Birthday to DevHawk

I was just talking to Michael Arrington about some Web 2.0 stuff when I realized I've been blogging for three years now. I started blogging three years and two weeks ago. Doesn't seem that long ago I was sitting in a Phoenix hotel room putting the finishing touches on the blog engine that powered the first version of DevHawk. (I moved overto DasBlog just under a year later.) But in reality, there's been two kids, a new house, four roles, five managers and a move to campus since I launched my DevHawk Blog. Quite a ride!

Posted By Harry Pierson at 4:17 PM Pacific Standard Time

Thursday, January 26, 2006

EdgeHawk?

I got an email this morning from Richard Veryard wondering if I should now be called EdgeHawk. That's funny. Alas, EdgeHawk.com is "Your #1 internet Hoosier Racing Tire source" so I think I'm going to stick with DevHawk...at least for now.

Posted By Harry Pierson at 8:46 AM Pacific Standard Time

Wednesday, January 25, 2006

TechieWife Back Online

The hardware failure that caused DevHawk to be down in early December also took out my wife's blog TechieWife. But she just started up a new TechieWife MSN Space. Subscribed (of course).

Posted By Harry Pierson at 12:14 AM Pacific Standard Time

Thursday, September 08, 2005

Short Week

After blogging quite a bit last week, I've been to busy to blog this week. Between the Labor day holiday Monday and leaving for PDC tomorrow, it's a short week with lots to do. I'm going to PDC several days early because my family is coming with me and we're visiting friends and family who still live in LA. Patrick is very excited to be going on a "sky tuka-tuka" i.e. "sky train" i.e. airplane.

Next week will be more of the same from me around here. I'm not going to many sessions - I can get the content on the post conference DVD or simply by emailing the speaker or team directly. PDC is more about hanging out in the community lounge areas the connecting with the other attendees. (Well, that and presenting at the Architecture Symposium.) So I won't be blogging about cool new technology, but you might see the occasional post about a conversation I had with another attendee. Every time I talk to a customer is an opportunity to learn something and expand my thinking, and PDC represents a great opportunity for lots of conversations.

Posted By Harry Pierson at 8:39 AM Pacific Daylight Time

Sunday, May 29, 2005

TechEd Utility Player

So we're one week out on TechEd. This time next week, the final prep will be done and we'll be ready to let this thing fly. Some of the core team goes down this week, though as a track owner, I'm not really needed on site until Sunday.

What a difference a year makes. Last year, I was freaking out - it was my first TechEd. Now I feel like the old hand at this. Of course, I wouldn't have made it through last year with out the assistance of a few key individuals. Among others was Esther, who just started blogging for this year's TechEd. She's got a long post about the track cabanas. Last year, they were a big hit, but there were a few glitches. Esther writes about some of the changes they made this year to address those issues.

If you're going to TechEd, make sure to stop by the ARC cabana and say hi.

Posted By Harry Pierson at 5:24 PM Pacific Daylight Time

Tuesday, May 03, 2005

Other People's Blogs

I try to spend more time writing original content for this site and less time simply pointing at other people's stuff. However, you'll notice the lack of updates around here lately. Things are busy at home - my wife and I are expecting our second child this week! So the dearth of content will continue for now...

However, while I remain too busy to blog, here are a couple of other new blogs worth reading:

Posted By Harry Pierson at 3:27 PM Pacific Daylight Time

Tuesday, March 15, 2005

QOTD: Paul Preiss

"Architecture is about how you decide not what you decide"

Thanks for the kind words Paul.

Posted By Harry Pierson at 12:34 PM Pacific Standard Time

Thursday, March 10, 2005

Theme Tweak

For those of you visiting the site directly (as opposed to reading via syndication) I slightly tweaked the theme. All stuff related to me or the blog is down the left hand side. The right hand side has the search box, the Google ads and my blogrolls. Let me know if something isn't working (other than the calendar - I just realized that I need to build styles for that)

Update - Calendar page styles are fixed.

Posted By Harry Pierson at 5:43 PM Pacific Standard Time

Monday, March 07, 2005

Podcast Software Still Pretty Rudimentary

So I'm experimenting with this podcasting stuff. I started by listening to a few podcasts - primarily Daily Source Code and Mike's Manic Minute - and using Doppler to pull these down to my Zen Micro. But then I started expanding out a bit - adding Ron Jacobs and Major Nelson - and I started to hit issues w/ the software. Of course, not everyone tags their podcasts with the same metadata style. Given the way the Zen Micro works, I want all the podcasts to have the same genre (i.e. "Podcast") and then have either one song per "album" where the album has the date in the title (preferably in the yyyymmdd format for sort purposes) or one album per artist where the song has the date in the title. That way I can see all the shows from a given podcaster on my Zen Micro in a list and can easily determine the oldest and newest shows. Doppler supports tag overriding for downloaded podcasts - i.e. so I can set them all to have the genre "Podcast". However, their "smarttags" implementation doesn't work at all. You're supposed to use smart tags like %date% and %album% in the tag overrides, if they worked that is. And even the hard coded genre override doesn't work for WMA files. I assume Doppler is using an MP3 specific library for modifying the metadata tags, rather than the Windows Media libraries that work with both. I assume these will get fixed as the tools get better. In the meantime, I've subscribed to the MP3 versions of Ron and Major Nelson's podcast feeds.

Update - Doppler tag overriding doesn't seem to work for the hardcoded genre either.

Posted By Harry Pierson at 12:59 PM Pacific Standard Time

Thursday, March 03, 2005

Mr. CIO Guy Has Left The Building

As he wrote on his blog, Pat Helland's last day at Microsoft is tomorrow. He's busily cleaning out his office right now. :( He's starts on Monday @ Amazon to help them implement a service oriented architecture. I heard their CTO was hiring.  Pat's a big reason why I came to work for Architecture Strategy so I'm really sorry to see him go.

On the plus side, no one will quip "it's been nice hanging out with you" in the men's room anymore.

Seriously, Pat's been through some seriously hard times this past twelve months, and I think the change is a great opportunity for him. I imagine I'll see him often enough - he's back on campus next week to present at an architecture forum. Plus, I offered to setup dasBlog on pathelland.com so he'll keep blogging.

Posted By Harry Pierson at 2:53 PM Pacific Standard Time

Wednesday, March 02, 2005

Devhawk Ads

Norman added AdSense to his blog, and I know several other kids that are doing it, so I succumbed to the peer pressure. So far, it's just a single ad over there on the right, but the "Wide Skyscraper" ad format would fit there. I'm interested to see how this goes.

Posted By Harry Pierson at 3:54 PM Pacific Standard Time

patterns And practices And podcasts

Ron from patterns & practices is not only blogging and webcasting but also podcasting. He's got two podcasts up so far. The first is a discussion with Billy Hollis about smart client architectures. It's pretty short - just enough to whet your appetite. (Quick plug - Billy is presenting with Rocky on Smart Client Architecture as part of the TechEd 2005 ARC track.) Ron's second podcast is with Scott Densmore on EntLib's ConfigurationContext. It's cool stuff, but it's alot harder to follow (for me anyway) topics related to code like this with just audio. Luckily, Scott blogged about this as well.

Posted By Harry Pierson at 1:50 PM Pacific Standard Time

Saturday, February 26, 2005

Another Zen Micro Feature Request

The other day, I wished my Zen Micro supported variable speed playback for podcast playback. I've got another feature request, this time for podcast recording. The Zen Micro features include built in microphone and support for voice recording. But there doesn't appear to be any way to hook up an external microphone. The built-in mic is fine for leaving messages for yourself, but it's not high enough quality for podcasting "on the go". Additionally, since I'm using WMP 10 instead of the app that comes with the Zen Micro, I'm not sure there's any way to sync the recorded files back down to my PC, but I'm thinking that's just a matter of geting Notmad Explorer talking to my Zen Micro.

UPDATE - Sometime shortly after I blogged this, Adam curry posted an episode of DSC recorded on a Zen Micro that Sean gave him. I haven't had a chance to listen yet, but I'm interested in how it sounds and how well it worked for Adam. Do you have to hold it near your mouth the whole time? I still wish I could use an external mic.

Posted By Harry Pierson at 10:13 AM Pacific Standard Time

Friday, February 18, 2005

Atom Is Used More Than I Thought

When I upgraded to DasBlog 1.7.2, I had to create an empty rss.aspx file on disk to fool the Title Mapper (that's the part the handles the new title based URLs) into not looking for a post with the title "rss". I knew that a large number of people read my post via the RSS feed, so I didn't want to break what has been the feed address since DevHawk started. However, I didn't think the atom feed would matter as much, so I didn't bother to do the workaround for atom.aspx. Turns out I was wrong. Atom.aspx was requested nearly once a minute between 11pm and 12am yesterday. I got tired of counting, but I'm guessing that number is even higher during the middle of the day since just over half of my traffic comes from the US + Canada. So I created an empty atom.aspx page to fool the Title Mapper even further.

Now, will I have to do the same for my CDF feed?

Posted By Harry Pierson at 12:22 AM Pacific Standard Time

Saturday, February 12, 2005

I Give Up On CSS but Not On Flash

Larry O'Brien clued me into the fact that the new DevHawk theme didn't render correctly in FireFox. When I redid my theme, I tried to be good and use all div and span tags, but apparently building a three column layout with a dynamically sized middle column that works on IE and FireFox is beyond my CSS skills. So I went back to using tables. Maybe the folks at CSS Zen Garden would freak out, but the table works just fine.

Larry also pointed me to ActiveSWF, a server side COM component for generating dynamic flash movies. You munge up an XML file describing the movie, hand it to ActiveSWF and it does the rest. Sweet. Only thing missing is a .NET version (I realize I can interop to COM, but that's a pain to deploy).

Thanks Larry!

Posted By Harry Pierson at 9:11 PM Pacific Standard Time

Thursday, February 10, 2005

New DasBlog Version

I just finished upgrading my blog to the new 1.7.2 RC build. I'm excited about some of the new features, such as the major caching improvements, CAPTCHA for avoiding comment spam, and the new permalinks. The permalinks one is pretty silly, esp. because I pushed for a version that used pluses for spaces. So the permalink for this post will be New+DasBlog+Version.aspx instead of NewDasBlogVersion.aspx. But it's a style thing (I am in marketing now, right?). Speaking of style, I also upgraded the site template and pared down my navigation links. I moved the blogs on that list to a new "friends and family" blogroll. I did add a link to the new Archives page, which lists all the posts I've ever made, by category. And I added flair links to add this blog to your desktop newsreader of choice (that supports feed://) as well as to My MSN and NewsGator.

There's still room for improvement. DasBlog still need story support, IMO. Also, I'd like to have a good offline posting experience. None of the existing blog authoring tools work for me since I use crossposts for my MSDN blog (which is what gets pulled into Architecture Center). I end up writing my posts in FrontPage and then cutting and pasting into the dasBlog web interface. Yuck.

One quick note - because of the new permalink title support, a set of existing URL mappings on my site started causing internal exceptions. This is because any URL ending in aspx that isn't a file on disk is assumed to be a permalink. Of course, all my existing mappings aren't files on disk nor are they permalinks to blog entries. I changed these mappings from *.aspx to *.ashx to avoid these exceptions and my template and navigation links to match. The only .aspx mapping I left intact was rss.aspx, since pretty much all of my subscribers use that as my rss feed. When I upgraded from my original blog engine, I had to add the rss.aspx mapping to avoid breaking any existing subscribers. Of course, I certainly don't want to break those subscribers now. As a quick and very dirty workaround, I created an empty rss.aspx file in my web app directory. Now, the title mapper doesn't attempt to map to a permalink since there's an existing file on disk. Oh well, that's why this is a release candidate version.

Posted By Harry Pierson at 11:08 PM Pacific Standard Time

Sunday, February 06, 2005

RSS Bandit "Wolverine" - Thumbs Up!

Even though I'm a happy NewsGator customer, I decided to try out the new beta version of RSS Bandit. Wow, I really like the newspaper view. I wish I had this in Outlook.

I recently hopped on the GTD bandwagon and among other changes I deleted all my mail rules and started over. Previously, I was routing my email to different folders based on if I was on the To: line, the CC: line, it came to one of the team aliases or none of the above. I discovered that I pretty much only keep good track of my main inbox with the stuff that came directly to me. Other stuff just languished, unprocessed. Now, I route mail to folders based on the mailing list it comes from. Some mailing lists have lower priority than others. This newspaper view would be perfect for quickly scanning these low priority mail folders, esp. with the feature to mark all as read when leaving the folder.

Posted By Harry Pierson at 2:43 PM Pacific Standard Time

Monday, January 10, 2005

The Look and Feel of RSS

Norman blogs about how he chose what blog service to use. His criteria were: 1) ease of use and 2) look of the final product. (Of course, look of the final product was important to Norman - he's in marketing!) As a developer and architect, I originally cared most about "rolling my own", though I switched over to dasBlog about a year ago. (I just don't have the time to roll-my-own as often as I used to.) However, given that I had invested significant effort into the look of my final product, that factor was important to me as well, which is one of the reasons I chose dasBlog over .TEXT.

Of course, what's funny about investing so much time thinking about the blog template is that I think most people read the site via RSS, not HTML. Chris Anderson of "The Long Tail" wrote about this a while back. Maybe I should invest a little effort into the new dasBlog Community Edition effort - I'd like to see the number of times the RSS feed is downloaded vs. the number of times the home page is downloaded.

Norman further goes on to discuss the fact that his blog is hosted on Blogger, which of course is now owned by Google. I like his point that "Interoperability and mixed environments is the way the world works. If it is good enough for my customers, it is good enough for me."

Posted By Harry Pierson at 10:38 AM Pacific Standard Time

Monday, December 27, 2004

MSN Spaces List Syndication

After reading this entry by Chris “Long Tail” Anderson (as opposed to Chris “Avalon Architect” Anderson) I went back to play with my MSN Space. In addition to the blog, my MSN space supports photo albums and lists - both of which show up in the RSS feed. Cool, so MSN Spaces solves the issue that Chris is having with Movable Type (though MT expects to support this soon). Since I'm using NewsGator Outlook, each change to the list shows up as a new entry, but I imagine other news readers simply update the content and mark the post as unread.

However, there is one slight issue with the MSN Spaces RSS feed - at least for photo albums. The RSS item's description is a snippet of HTML showing the thumbnails of the photos - or at least, the thumbnails of the first ten photos. I understand not pushing every thumbnail down to the client automatically, but once you get past ten photos in a photo album, the RSS decription doesn't change when you add more pictures and the people syndicating your site don't have any way to know you've updated the album. There needs to be some other snippet of HTML, maybe showing the time and date of the last update, that will change so that the news readers can tell the album has been updated.

Otherwise, my only real quibble with MSN Spaces is the unfriendly URLs. The url for my Patrick photo album is huge and ugly. Ouch! Why can't it be something like http://spaces.msn.com/members/devhawk/photos/patrick_pics?

Update - I deleted the actual URL to the Patrick Photo Album as it is huge and was causing scrolling issues with my blog template. Feel free to click on the photo album link and then you can observe the url from the comfort of your own browser address bar.

Posted By Harry Pierson at 9:06 PM Pacific Standard Time

Monday, December 20, 2004

The Pharonic Architect is Blogging

Speaking of DSL Tools, Software Factories co-author Jack Greenfield just started blogging. He has jumped into the running debate between IBM's Grady Booch and a variety of MS folks including Steve, Alan and myself. He does a good job summarizing the argument including pointing out where he and Booch agree:

In particular, we share the conviction that packaging knowledge for reuse in patterns, languages, frameworks, tools and other form factors is “the right next stage in cutting the Gordian knot of software”.

Jack rightly points out that while we all agree on these mechanisms for packaging knowledge that the devil is in the details. I look forward to seeing more on these details from Jack in the future.

Posted By Harry Pierson at 7:48 PM Pacific Standard Time

Tuesday, December 07, 2004

Pretty Soon I'll Need a Friends & Family Blogroll

My pal Chris started a blog over the weekend - I've been bugging him to do so for quite a while. I've know Chris for several years - he used to be an officer in a company that I helped migrate over to .NET. The company got sold, but Chris hasn't blogged what he does now so I'm not going to spoil the surprise (hint - he did blog about automatic external defibrillators).

So far, Chris is doing a lot of ranting - his favorite pub in Edmonton (which I've been to), Amazon Theater, and reselling livestrong bracelets. Personally, I think it's funny that Chris can build a wearyellow livestrong flair for his blog template, but he hasn't built an XML flair that points to his syndication feed.

Chop busting aside, I'm glad to see Chris posting. When I first met Chris, I was transitioning from consultant to technical sales, and I've learned a bunch from Chris about how business works that has come in very handy now that I work with architects. Chris, can't wait to see more from you. But when are you coming to Seattle for a visit?

Posted By Harry Pierson at 9:09 AM Pacific Standard Time

Monday, November 15, 2004

Blog Rolls

I finally got around to updating my blog rolls from my news reader. I keep three separate ones - my team & architect evangelists bloggers, other MS bloggers and other non-MS bloggers - which is a pain to maintain (which explains why I haven't updated  them in a long time).

Posted By Harry Pierson at 3:36 PM Pacific Standard Time

Thursday, November 11, 2004

More Architect Bloggers

Two new architect bloggers to report. Javed Sikander is an architect on the Architecture Strategy Team focusing on RFID. He links to a pair of articles about Microsoft and RFID plus provides his thoughts on why RFID is a big deal. David Solivan is an architect advisor and an ex-teammate from my old .NET Adoption Team days. So far, David appears to be blogging at conferences. He started in July at MGB and then went dark for a few months. He picked back up at SAF. I hear he's at a conference this week, so maybe we'll see some more from him.

That brings the total number of bloggers from my team to 14. That's over half of the team and I know at least two more coming down the pipe.

Posted By Harry Pierson at 11:19 AM Pacific Standard Time

Monday, November 08, 2004

Another Model Blogger

Gareth Jones is another blogger from the VS modeling team. He's got some great posts on using OneNote as a shared whiteboard and the use of color-coding in modeling. Given the fact that a popular use of modelling today is for sketching, it's interesting to read about how the team is looking at bringing those idioms forward while also making the models precice enough to be used as development artifacts.

BTW, no problem on the image “borrowing” Gareth. :)

Posted By Harry Pierson at 8:08 PM Pacific Standard Time

Technical Issues Resolved

We've had some technical difficulties around here. Tom installed ASP.NET 2.0 Beta 1 on this box and it automatically upgraded all the web apps on the machine to the new version. It caused a bunch of issues including breaking the admin interface and requiring a reboot every few hours. I spent some time this afternoon getting all the web apps back on ASP.NET 1.1. I uninstalled all of the beta bits, but it still didn't work - I needed to use the aspnet_regiis utility to completely uninstall the IIS registration and then reinstall. I get the feeling that I could have left the beta bits hanging installed and just used aspnet_regiis to reset the registration, but better safe than sorry.

Anyway, since I couldn't log in, I obviously couldn't blog. I keep an Outlook task folder of "Shit to Blog" that's gathered a few items, so I'm looking forward to getting those posted.

Posted By Harry Pierson at 6:57 PM Pacific Standard Time

Wednesday, October 27, 2004

Other MSFT Bloggers at OOPSLA

Some other 'softies blogging OOPSLA:

  • Keith Short talks about the DSL Tutorial and apologizes for our keynote demo.
  • Steve Cook talks about the MDA panel and says the keynote demo "wasn't such a great idea"
  • Stuart Kent describes the DSL Toolkit and calls the keynote demo a "commercial break"
  • Michael Lehman briefly describes his work building a software factory for the DSL Tutorial and blogs Jack's GPCE keynote presentation on Software Factories

Finally, Brant Carter took me to task for pointing out that Alan Kay ended his Turing Lecture with a product demo. Brant makes good points and I agree with all him. I think all the 'softies blogging OOPSLA have acknowledged how poorly this went and I certainly didn't mean to imply that somehow we were vindicated by Alan's demoing stuff in his lecture. I plan on giving Squeak a deep look when I get some free time - I have an 18 month old son so Alan's lecture on teaching computer science resonated with me.

Posted By Harry Pierson at 12:34 PM Pacific Daylight Time

Wednesday, October 13, 2004

More Architect Bloggers

Two new architect bloggers to note. Jim Clark is a business architect on the Architecture Strategy Team. Jim spends a lot of time with what he calls "Red River" - identification and definition of business architectures, ontologies and environments that promote trusted business solutions. His first post is about Familiarity and Trust. Steve Cook is a contributor to Software Factories and works for Keith. Steve is looking forward to OOPSLA. So am I.

Posted By Harry Pierson at 2:57 PM Pacific Daylight Time

Sunday, August 29, 2004

The Most Popular Modeling Environment Ever (So Far)

Steve's post on "the modeling problem" hits the nail on the head. We're all familiar with the concept of "fast, good, cheap - pick two". Steve breaks down modeling into "general, precise, efficient - pick two (and favor one)". Furthermore, you can't have a language that is both general and precise. UML takes what Steve calls the "Favor efficiency, accept generality and compromise precision" approach:

The UML metamodel is flexible enough to allow it to describe virtually any system out there. However, from a formal semantic perspective, the resultant model is gooey and formless which makes it very difficult to compile into anything useful. At best, we can get some approximation of the underlying system via codegen, but even the best UML tools only generate a fraction of the code required to fully realize the model. The lack of precision within the model itself requires operating in both the model domain and the system domain, and implies that some facility exist to synchronize the two. Thus, the imprecision of UML forces us to solve the round-tripping/decompilation problem with 100% fidelity, which is generally difficult to do.

Software Factories, on the other hand, takes what he calls the "Favor efficiency, accept precision, and compromise generality" approach:

This, I think, it the sweet spot for Microsoft’s vision of Software Factories. Here’s why: the classic problem faced by modeling languages is Turing equivalency. How do you model a language that is Turing-complete in one that’s not without sacrificing something? The answer is: you don’t. You can either make the modeling language itself Turing-complete (which sacrifices efficiency) or you can limit the scope of the problem by confining yourself to modeling only a specific subset of the things that be expressed in the underlying system domain. Within that subset, it might be possible to model things extremely precisely, but that precision can only be gained by first throwing out the idea that you’re going to be able to efficiently and precisely model everything.

When describing Software Factories, I have two analogies that I use to explain the idea. The first is the "houses in my neighborhood" example I blogged before. That does a good job describing economies of scope, but doesn't really cover the modeling aspect of software factories. Talking about how you model cars or skyscrapers doesn't really capture the essence of software modeling - you don't generate the construction plans from a scale model of a skyscraper. However, it turns out that all developers have at least a passing familiarity with my second analogy: Visual Basic, the most popular DSL and modeling tool of all time (so far).

The original Visual Basic was a rudimentary software factory for building "form-based windows apps". (Today, VB.net has been generalized to support more problem domains) Like the factory approach that Steve describes, VB was very efficient, sufficiently precise, yet not particularly general (especially in the early years). There were entire domains of problems that you couldn't build VB apps to solve. Yet, within those targets problem domains, VB was massively productive, because it provided both a domain specific language (DSL) as well as a modeling environment for that domain.

A DSL incorporates higher-order abstractions from a specific problem domain. In the case of VB, abstractions such as Form, Control and Event were incorporated directly into the language. This allowed developer to directly manipulate the relevant abstractions of the problem domain. Abstractions extraneous to the problem domain, such as pointers and objects in this case, got excluded, simplifying the language immensely. Both of these lead directly to productivity improvements while limiting the scope of the DSL to a particular problem domain.

In his post, Steve makes the point that it's pointless to distinguish between modeling and programming languages. VB certainly blurred that line to the point of indistinguishably. Regardless, graphical languages are typically more compelling and productive than textual ones. It's hard to argue with the productivity that VB form designer brought to the industry. Dragging and dropping controls to position them, double clicking on them to associate event handlers, changing properties in drop down boxes - these idioms have been widely implemented to the point that essentially all  UI platforms provide a drag-and-drop based modeler. It's such a great design that 10 years later, UI modelers are essentially unchanged.

Once you realize that VB's DSL and modeling environment was a rudimentary software factory, you realize that Software Factories methodology is about generalizing what VB accomplished - building tools that achieve large gains in efficiency by limiting generality. Since each of these tools focuses on a limited problem domain, you need different tools for different problem domains. The problem is that while building apps with VB may be easy, but building VB itself was not. Most enterprises have the expertise to develop abstractions in their domain of expertise and to codify those abstractions in frameworks, but very few can develop tools and DSLs for manipulating those frameworks. One of the goals of Software Factories (and VSTS Architect for that matter) is to make it easier to build tools that are really good at building a narrow range of applications.

Note, it's important to note that the term "narrow range" is relative. Darrell seems to think narrow range only means vertical market applications that don't "solve new and interesting problems". It's true that the narrower the range, the more productive the tool can be. But VB shows us that you can achieve large productivity gains while solving new and interesting problems even in broad scope problem domains.

Posted By Harry Pierson at 8:46 AM Pacific Daylight Time

Saturday, August 21, 2004

No Time To Experiment, So I'm Reading About Cw

COmega (otherwise known as Cw since most people don't have an omega key on their keyboard) is on a long list of stuff for me to look at. But instead of actually coding with it, so far I can just read Steve Maine's blog. He's got interesting posts on syncronization and streams, the two big features of Cw over C# (come to think of it, we use the “#” symbol as most people don't have an actual sharp key on their keyboard). I also learned from Steve that Cw comes with basic VS integration - you get project support, syntax highlighting and some Intellisense. Now I just need a few extra hours in the day.

Posted By Harry Pierson at 3:22 PM Pacific Daylight Time

Friday, August 20, 2004

Another Team Blogger

Actually, I don't think he's “officially” part of the team 'til next week, but Josh Lee has already started a blog about his new job on the Architecture Strategy team. Josh is “The FinServ Guy”, and is a member of the IFX Forum Board of Directors. Nothing really meaty on his blog yet, just a Hello World post, but I hear great things about him.

Speaking of the Architecture Strategy team, I finally took 5 minutes to term serv into the machine that hosts DevHawk to update the theme. I keep mentioning the Architecture Strategy extended team OPML file, but I wanted to add a blogroll to the site theme. Now, I have a Team Blogroll on the left hand side of my website featuring all of my blogging teammates as well as all the blogging architect evangelists. Enjoy. 

Posted By Harry Pierson at 11:40 PM Pacific Daylight Time

Thursday, August 19, 2004

More MSFT Architect Bloggers + a Standard Rant

We keep getting more and more field architects and architecture strategy team members blogging. Remember, I keep a list (I am becoming the Scoble of Microsoft Architecture). Anna Liu is a field architect evangelist who presented at TechEd Australia (but we didn't get a chance to hang out). Anna's also been thinking about software development as an engineering discipline.

In addition to Anna, two of my teammates are blogging: Chris Keyser and Dave Welsh. Chris is a solution architect who's doing some awesome next gen SOA work. He's been blogging about using WSE2 to manage Security Context Tokens. Chris, like John deVadoss (who has relapsed into silence), is very pragmatic so it's great to run radical ideas past him.

Earlier this year, our team "inherited" a group of awesome vertical architects - I've blogged about John Evdemon before who's from that group. Dave is also from that group. Like many of our vertical architects, Dave is heavily involved in standards bodies - in Dave's case it's UN/CEFACT. He's got an great article on how Standards Development Organizations traditionally work and another on how MSFT (and our specification partners) is improving on that process. He's shining a light on the dark corners of the standard process, which is a good thing since so many people act like standards are a silver bullet solution. I love Dave's description of the traditional standards process:

[L]aunch a committee, politically pick a chair, generate lots of hype and expectation on how this spec will solve world hunger, stack the new committee with people who may be able to contribute, host conference calls and arm wrestle the original idea down to some compromise that seems to make sense, then hope someone’s got a number of free weekends over to write up a draft of the new spec.

You want an example of the results of a traditional standards process? How about XSD? I think XSD is the ugliest widely-used spec around.  Don agrees, according to his comments from last years SellsCon:

Nothing illustrates [the cost of standardization] more than XML schema. XML schema is the quintessential example of what happens with a design by standards body specification. Rather than taking something that worked and something that was done and that there was experience with and effectively dotting the i’s and crossing the t’s you had two from every company off doing wanton innovation and invention without implementation experience. It was a train wreck in the making, especially when you consider the fact that you had people who vehemently disagreed about what they were building. Some people thought they were bringing object orientation to XML. Some people thought they were bringing database schema concepts to XML. Some people thought they were just, you know, reliving the SGML dream. So what do we get? We get a Frankenstein’s monster that is dumber than the dumbest person in the committee. No one person on that committee could have produced something this bad. It took an army of people to work hard day and night to build something that is not good. It’s not terrible – can we make it work? Yes. But it’s going to take a lot of work from a lot of plumbers and a lot of tool vendors to make XML schema palatable to the average developer.

A great example of the opposite approach is RELAX NG. It is widely believed at this point in time that RELAX NG is a better schema language for XML than XML schema. Why? Because two guys who were really smart said why don’t we go do this and let’s get it working and let’s build it while we do it and let’s iterate it and see what works and what doesn’t work. And then when we’re done we will take it to the rubber stamp – I’m sorry, Oasis – where they will carefully vet every decision and bless it and give it UN status.

I'm with Don and Tim: I want RelaxNG. More importantly, I want standards that are built like WS-* and RelaxNG.

Posted By Harry Pierson at 11:26 PM Pacific Daylight Time

Sunday, August 15, 2004

Back in All Blacks

So I'm back from vacation and ready to head into work tomorrow. I'm almost over jet lag, but Patrick still thinks his bedtime is his afternoon nap. I slept thru the Tri Nations match yesterday morning, where the New Zealand All Blacks, my new-favorite rugby team, got beat bad by the South Africa Springboks. After losing to the Australia Wallabies while we were in Sydney, the All Blacks are out of the running for the Tri-Nations Cup. Winner of next weeks' match between South Africa and Australia takes it. (note - apparently, several readers pointed out that I got my cups mixed up. Bledisloe Cup is between New Zealand and Australia only, and since NZ and Aus drew in their home and home series, NZ keeps that cup.)

I didn't blog any of my vacation as it was happening, but I want to revisit two items that I think will be interesting to my blog readers - the Buildings of Sydney and the Sydney Opera House.

I went to Australia (and New Zealand) to present Metropolis. Delivering this talk (as well as the follow-up talk on Buildings and Applications) has changed the way I look at buildings and cities. I've lived in three different cities - Washington DC, Los Angeles and Seattle. DC is filled with old buildings, but there are no skyscrapers. No building in DC is allowed to be taller than the Washington Monument. Seattle is relatively young, and there was a big fire in 1889 that destroyed a great deal of the city. Los Angeles is...well...I've blogged my opinion of Los Angeles before. LA is like a movie set - it only looks good on TV. Drive around LA and you'll find miles and miles of mini malls, but no history.

Sydney is very different. Many of the older buildings are under "heritage protection" meaning that their facade's are protected and can't be changed. This leads to a fascinating mix of older buildings side by side with modern skyscrapers. Paddy's Markets, which has been there since at least 1834, is housed in a building originally built in 1909 (according to the building's facade). However, if you check out the picture, you'll notice that the building's second floor is notably more modern than the first floor. That's Sydney to a "T", new sitting right next to, or on top of, the old. I imagine that some of the older eastern seaboard cities of America have the same combination of historical and current, but none that I've spent a significant amount of time in.

Of course, you can't go to Sydney and not visit the world famous Sydney Opera House. You can read the history online, so I wont bore you with those details. But here's something you probably don't know about the opera house - it's a pretty dinky opera house as opera houses go. My mother works for the Washington National Opera and I grew up hanging around the Kennedy Center so I've been around opera all my life. (Betcha didn't know that about me, did ya?) The Opera Theatre of the Sydney Opera House only holds 1547 people, only about two-thirds of the Kennedy Center Opera House. It also has limited fly, wing and back stage space - the unique sail roof structure severely limits off stage space. (This isn't an issue in the Concert Hall, which is housed under the larger sail roof and has less need for off stage space.) I found it very interesting that, as opera houses go, the Sydney Opera House looks great from the outside, but isn't that well thought out on the inside. This comes back to Metropolis metaphor as well - what's on the outside (in this case, the roof) severely limits what you can build on the inside (i.e. the theatre). In the case of the Sydney Opera House, it's no problem as people come from all over the world to see shows there, even if the house creates unique logistical challenges for the company putting on the show. For enterprise apps, you probably won't be so lucky, so design your roof with great care.

I'm back at work tomorrow, so watch this space.

Posted By Harry Pierson at 11:40 PM Pacific Daylight Time

Monday, July 26, 2004

Architect OPML

I finally updated my Architecture Strategy and Evangelist Blogs OPML file. For single updates, DasBlog's web interface is fine, but for doing a slew of updates it blows. I guess that's why my blogrolls are so out of date. What I really want is an InfoPath form so I can do all the updates locally and then upload the new file at once. InfoPath's integration with SharePoint rocks, I wonder what it would take to get that kind of integration on an arbitrary web site? Or, alternatively, how to run your blog on SharePoint? I screwed around with SharePoint as a “personal content management system” a while back, but the difficulty in customizing it (as well as a lack of time on my part) doomed that.

Posted By Harry Pierson at 11:40 AM Pacific Daylight Time

Project Patterns

Is it obvious that I've been rounding up bloggers on my extended team of architects and architect evangelists? Here's another: Raj Wall blogged the first of what appears to be several posts about Patterns of Successful Software Projects. I like this as it really starts to expand the idea of what is a pattern. If you look at EASOT, you'll notice a “Development Architecture Viewpoint” that has the following description:

The development architecture viewpoint is concerned with implementing the other architectures. Applications must be built and maintained in a systematic, efficient manner. The development architecture is composed of elements related to this effort, such as design and development tools, repositories, build master utilities, test suites, tracking tools, and other tools.

In my TheServerSide.net Tech Talk, I pointed out that Test Driven Development is a pattern. I know there are a lot more development architecture patterns. Raj's post starts to define the terms in this area of the pattern space. Can't wait to see what Raj has to say about project context - the more I work with patterns, the more important I realize context is.

Posted By Harry Pierson at 9:15 AM Pacific Daylight Time

Friday, July 23, 2004

New Architect Bloggers

A couple new MSFT architect bloggers to note. Maarten, author of the recent Dealing with Concurrency article, details his issues with CRUD. David “Lottery” White has restarted his blog and writes about the practical architect. Bill O'Brein blogs about presenting on patterns at TechEd Europe. Both Simon and Kevin have both been experimenting custom MQ transport providers for WSE2 - Simon using MQ Series and Kevin using MSMQTim Ewald is back in blog on the PluralSight site, blogging about the differences between XSD and OO inheritance. And my old teammate Marley explains the game of Spoons. Not sure what that has to do with architecture, but it appears my old team had a very good time in Atlanta.

Posted By Harry Pierson at 5:03 PM Pacific Daylight Time

Thursday, July 22, 2004

Is This Thing On?

I'm behind on blogging. Not just writing, I'm behind on reading blogs as well. I hit 1000 unread posts today, and scrapped them all. I can offer up excuses like I was on the road most of July so far, my son hasn't been feeling well, the start of the fiscal year is always busy (all true - I had to get up and soothe Patrick back to sleep after he woke up coughing as I wrote this post) but there's no real point in making excuses. I started an outlook task list of “Shit to Blog” back at TechEd, and so far I've only removed two items from the list. Part of the reason for that is that I've been reading Software Factories which isn't generally available, so I'm holding off on blogging my thoughts until the book ships. Next week, I'm off for New Zealand and Australia for TechEd, which is going to be awesome but probably mean still less blogging.

Posted By Harry Pierson at 11:23 PM Pacific Daylight Time

Friday, June 25, 2004

Back on Email

FYI, I haven't been accessing my DevHawk email address for a while. Basically, I never got back in the rhythm of checking that address after the site came back up in early May. Excuses abound - I was way to busy with TechEd, work, family, I get more than enough email at my work address, blah blah blah. Anyway, I've finally got around to checking that email. Besides the ton of spam, there was also a bunch of real email from people asking questions. If you sent me email in the past two months, sorry I've ignored you. I'll stop ignoring and respond shortly! :)

Posted By Harry Pierson at 9:29 AM Pacific Daylight Time

Thursday, June 24, 2004

Pat and John Are Blogging Again

I keep bugging Greg about better folder hierarchy support in NewsGator. While I have some news feeds directly under my news folder (Don Box, Dilbert, my dad) I categorize most of my feeds into subfolders. One subfolder is for MSFT architects - my teammates, Michael, Keith & Kevin among others. That folder is where I typically start reading, esp. when I'm a week behind.

After a long absence, both Pat and John are blogging again. Pat's been busy working on his new talks that he will be presenting at TechEd Amsterdam. We will be taping them for inclusion in the Architecture Strategy Series. He's got a surprise planned for the end of his Metropolis overview talk (GNLARC) that I'm in charge of getting up on the web as soon as possible after it happens...watch this space...

John has written two pieces - on SOA and smart clients. John's amped about the SCAG and he blogs about his smart client thoughts. I liked his observation that building browser-based apps "is all about service provider ease of delivery" while smart clients are "all about service consumer ease of use". Today, ease of delivery wins out over ease of use, but I wonder how long that will last.

However interesting John's views on smart clients are, I typically have long conversations with him about the finer points of SOA. A conversation that starts with "Got a sec?" typically turns into an extended discussion with crowded whiteboards. What I've realized recently is that John and I tend to approach a topic very differently. John is very pragmatic, so he tends to disagree with my more radical opinions (such as the endangered middle tier) which aren't really feasible in the short term. I, on the other hand, start from a desired state and work backwards, trying to figure out what short term investments will lead to the long-term ideas. I used to think John and I disagreed about the desirable granularity of services. What it turns out is that we agree about what we want, but he focused on the fact we can't feasibly build fine-grained services in the short term while I glossed over that fact and thought about what we needed to make fine-grained services feasible in the long term. Neither viewpoint is right or wrong, in fact they are very complementary. John keeps me grounded in reality while I push the limits of his event horizon. Among the recent topics of debate:

  • How fine grained should services be?
  • Should customers be thinking about building domain specific languages?
  • How will the role of the ISV's and SI's evolve?
  • How much of a typical enterprise should be outsourced?
  • Is a service-oriented architecture more data-centric or process-centric?
  • What would a requirements modeling language look like?
  • What is the most important criteria for evaluating software systems for the enterprise?

Keep it up, John.

Posted By Harry Pierson at 5:20 PM Pacific Daylight Time

Tuesday, June 15, 2004

International Man of Architecture

My pal Tom - who hosts DevHawk for me - recently set up a traffic analyzer so I can get a better idea about who's visiting this site. I found it interesting that just under 52% of the visits are coming from the US. Rounding out the top ten DevHawk visitor countries are UK, Canada, Zimbabwe, Australia, Germany, Sweden, China, Netherlands and France. I really dig that almost half my traffic is from outside the US. Plus, it serves as a good reminder that getting good content up on Architecture Center in English means we're still missing large chunk of the audience.

Posted By Harry Pierson at 10:55 PM Pacific Daylight Time

New Architecture Bloggers

We've updated the Architecture Center blog page. We added John Evdemon (who I already blogged), Stuart Kent and Alan Cameron Wills. Stuart and Alan work on the Enterprise Frameworks and Tools team which is producing the VS2005 modeling tools formerly known as Whitehorse. They are mostly blogging about domain-specific languages (DSL), software product lines, code generation from models and a variety of other Software Factories related ideas. They also touch on the relationship of the DSL/Factories approach to the UML/MDA approach. Stuart has a great response to a post by Grady Booch where Grady disparages the DSL approach stating that he "always found the DSL play to be one of classic over-engineering". Given the recent "Unwanted Modeling Language" backlash against UML 2, I'm not sure how fair it is for Grady to be calling any modeling approach over-engineered.

Posted By Harry Pierson at 10:11 PM Pacific Daylight Time

Thursday, June 10, 2004

New Blogger from the Team-Formerly-Known-As-NEAT

It's been a while - and a team name change - but another one of my teammates has made the leap into the blogosphere. John Evdemon is a member of our vertical industry architecture team focusing on near and long term web service solutions as well as regulatory compliance solutions. Furthermore, he's a co-chair of the OASIS BPEL TC. He blogged a presentation on BPEL he did at SD West. Subscribed and added to my list of Architecture Strategy and Evangelist Blogs

Actually, this isn't John's first foray into blogging - he's got a personal blog  <Well-Formed/>. There, he describes himself as "an XML hacker and standards geek for a large software vendor." Always nice to have a standards geek around...Plus, he's a big Hitchcock (his new blog is named "Vertigo"). Do I feel a Hitch movie marathon coming on?

Posted By Harry Pierson at 8:32 PM Pacific Daylight Time

Tuesday, May 25, 2004

Apparently, Nagging Works

My father, who I've written about and who has commented here several times, finally started his own blog called Hal 9000 . He's using Google's new service, which I guess means there is no RSS feed. I can't find a link to any syndication feed on the site. Of course, since it took him a week to email me the address, maybe he's looking to duck my criticism? :)

Seriously, my Dad has been a *HUGE* influence on my career (though he always thought I switched jobs too often - I say I was just looking for the right place which I finally found @ MSFT). He's been around UNIX and C since the start. From Dad's first post:

I've been around computing for a long time! My first job after getting my doctorate was at Bell Labs. In the Spring 1971 I installed my first Unix system - with Ken Thompson help. Because my thesis delt with compiler theory I was interested in C from the beginning - static routines was my suggestion.

Over the years I've worked on air traffice controls systems, case and office tools, handwriting recognition algorithms, to name a few. I am one of the authors of the Systems Engineering CMM.

Currently, I teach OO Programming, and OO Analysis & Design at Johns Hopkins University (part-time engineering school)

My current interests include Security & Enterprise Architectures for a large gov't agency; designing Service Orient Architectures; and software development tools.

Just yesterday, I ran into a TechEd attendee who worked at Bell Labs back in the day who recognized my last name. A friend of mine who's an architect evangelist for MSFT also recognized my name from his days at Bell Labs. Sure is a small world.

Dad has also commented on Clemens lightweight transactions post and discussed modeling. I can't wait to see his reaction to Visual Studio 2005 Architect Edition's modeling tools.

I added a link to Hal 9000 in my navigation links section. At this rate, will I need a family blog roll?

Posted By Harry Pierson at 8:02 AM Pacific Daylight Time

Tuesday, May 11, 2004

Consultants & Programmers

Not only in my blog back in action, but my gracious host Tom has started a blog of his own. Since he hosts DevHawk for me, I added him to both my blog roll and to my navigation links.

Tom's first post (and the theme of his blog in general) is about the role of consultants and programmers in the future. He draws a nice parallel comparing how those roles are changing to how the chaufer role changed during the 20th century.

Posted By Harry Pierson at 9:10 AM Pacific Daylight Time

Monday, May 10, 2004

Back In Business

So DevHawk is back in business, and more importantly it is now the featured blog on MSDN Architecture Center! I've spun up a home away from home on the MSDN blogging server for the Architecture Center to pull from. That way, I can crosspost architecture related content from here, but still be able to rant about hockey, gay marriage, programming and whatever the hell else I want over here.

Posted By at 5:56 PM Pacific Daylight Time

Tuesday, April 20, 2004

Back in Black

It's been a busy week. I was on .NET Rocks, we published JOURNAL and I seem to have stirred up some discussion with my endangered middle-tier post.

But then I was silenced by a floppy disk.

My friend Tom, who hosts DevHawk and TechieWife for me, is on a contract job out-of-state and couldn't remotely diagnose why the web server that hosts this blog wouldn't reboot after a power-outage. Turns out there was a floppy in the drive and go figure, the server tried to boot from the floppy. So I've been offline all week. Still, I have to give Tom props as

  1. He hosts me for free
  2. I have admin access to the machine
  3. He's down to try new things

Being on .NET Rocks last week reminded my a little of my old college DJ days. I've got an idea I'd like to play around, but I'd need a media server. That's where #3 above comes into play. I ask Tom and I receive. No idea what I'm going to do with it yet, but now I have a media server to play with. Thanks, Tom...You Rock!

Posted By at 5:40 PM Pacific Daylight Time

Wednesday, March 31, 2004

Tony Goodhew is Blogging

Good pal Tony Goodhew just started blogging this past Sunday. He's already posted 15 times. Even though he's a Product Manager in the developer division and has been involved in J#, he hasn't posted much on technology yet but he sure has several opinions on the NFL.

Posted By at 10:37 AM Pacific Standard Time

Thursday, March 11, 2004

Pat Helland is Blogging

Pat Helland is the newest member of my team to start a blog. Back in the day, Pat was a co-founder of the Microsoft Transaction Server team. These days, he's using the Metropolis analogy to help predict and explain the evolution of architecture. You can catch his Metropolis presentation as part of the Architecture Strategy Series). Subscribed plus I've added him to my teammate blog OPML file.

In addition to revealing his love of PEZ, Pat's got a great dissertation on the multiple meanings of the term "service". One of the issues with SOA is that not everyone agrees on what a "service" is. From what I can tell, the most common definition is "something you build with [insert your favorite vendor]'s technology". Having a vendor-independent description seems like a pretty good idea.

Posted By at 11:38 AM Pacific Standard Time

Sunday, February 15, 2004

New Weblogs of Note

I don't want to be a human aggregator, but these blogs are just too cool

  • Keith Short, Architect for VS.NET Enterprise Tools. Check out his post on DSL and MDA.
  • Mary Cullinane, School of the Future Technology Architect. She's blogging about the "opportunity to build a School of the Future for 800 kids in grades 9-12" in Philadelphia. My wife's a teacher and I used to work closely with the Education Solutions Group. I can't wait to see how this evolves.
Posted By at 8:43 AM Pacific Standard Time

Monday, February 09, 2004

.NEAT and AE Bloggers

At least one person was interested in an OPML of MSFT .NEAT and AE bloggers. So I hacked them out of my full blog roll and posted it on my site. I will be keeping it up to date, so check back every once in a while. I added a link to it in my nav bar so it is always available.

I love dasBlog. I was able to make one small change to the web.config file and now the OPML file is addressable while still being easily managed via dasBlog's blogroll editor. Sweet.

Posted By at 3:51 PM Pacific Standard Time

Sunday, February 08, 2004

P2P Blogger

Noah Horton, former teammate who has gone on to become PM in the Peer Networking Group, has started a blog. Of course, with the new aggregated feed of MSDN bloggers, you probably already knew that. However, I am compelled to blog this as Noah is a friend, works in the next building over from me and I've got a special interest in P2P. I'm looking forward to his promised tips and tricks. Subscribed.

Posted By at 10:39 AM Pacific Standard Time

Tuesday, February 03, 2004

Yet Another NEAT Blogger

Say hello (and subscribe) to John deVadoss, the latest .NEAT team member to start a blog. John's the Lead Solutions Architect for .NEAT, which means he's technical plus he manages people. He's got his "Hello World" post out of the way where he lists his interests. I spend a lot of time hounding talking with John, so I'm looking forward to his future posts.

I think my extended team (.NET Enterprise Architecture Team plus the Field Architect Evangelists) are really starting to get into this blogging thing. Besides John and myself, we've got David explaining "what makes a Smart Client so smart?", Ram on SOA and OO, Mike on modelling and Simon on interop and Outlook programmability. Maybe I should start a .NEAT / AE blogroll? The blogrolls on my weblog are woefully out of date anyway, might be time for an overhaul.

Posted By at 10:26 PM Pacific Standard Time

Friday, January 30, 2004

Article on Ward

From John Alexander's Blog, I found a link to an article in the Seattle PI about Ward Cunningham joining Microsoft. The article focuses primarily on descibing wikis, but it does mention he now works for PAG doing pattern work. I liked this quote:

"I write the seed of the idea and I come back in a week and see how the idea has grown."

It's also interesting to see that it took a month and a half for the news to go from blogs to a "mainstream" news source.

Posted By at 9:05 AM Pacific Standard Time

Thursday, January 29, 2004

Cool DasBlog Feature is Google Friendly

I was reading Steve's blog with my browser earlier today when I noticed his odd permalink url's. Instead of a url like "http://devhawk.net/PermaLink.aspx?guid=9abbd5ea-3a10-44d8-8872-877033b7349c", his look like "http://hyperthink.net/blog/PermaLink,guid,fc99ce5e-b748-44f0-853d-0a261632b885.aspx". Turns out it's a standard feature of dasBlog! Just check "Enable URL rewriting" in the config page and you're set. Now my permalink url's look like Steve's.

Since Google doesn't index pages based on query string, this feature should make my site more easily crawled and googled.

Update: This feature breaks sub category specific feeds, like "dasBlog">Blogging | dasBlog", so I'm turning it back off until someone can fix the bug.

Posted By at 11:21 PM Pacific Standard Time

New MSFT Architect Blogger

Michael Platt, Field Architect in the UK, has started a blog. I know Mike and so I'm looking forward to reading his thoughts on the topics he lists in his first post. Subscribed.

Posted By at 9:40 AM Pacific Standard Time

Wednesday, January 28, 2004

Bloggers Dinner Last Week

I haven't had time to blog last weeks blogger dinner in Seattle. I had a great time. Scoble and I drove over with Deepak from the MSN TV group. I spent quite a while talking to Steve about syndicating reference data, which builds on his recent SOA posts (more on that later). The coolest new thing this time was meeting Eric Promislow, a senior developer with ActiveState. Eric is responsible for Visual Perl, Visual Python and Visual XSLT (and apparently the Baconizer). One of the Visual XSLT developers was also there, but I missed his name (sorry). The three of us had a very interesting discussion on dynamic languages (something I know little about) and language design (something I know a moderate amount about). I know Ward is a perl guy, so maybe I should give Visual Perl a whirl.

I also got to rant about explain my view of SOA to Scoble on the way home. Lucky him.

Posted By at 4:10 PM Pacific Standard Time

Tuesday, January 27, 2004

Shaking Off The Ice

I got a couple of emails yesterday at my work address that my blog was down. Turns out there's this big winter storm battering the east coast. My blog is hosted on the east coast and they lost power for a while. No power == no blog. But if you're reading this, you've probably already figured out that the power is back on and my blog is back up.

Posted By at 3:35 PM Pacific Standard Time

Tuesday, January 20, 2004

Too Many Weblogs

I posted yesterday that I'm reading over 200 blogs these days. Those aren't Scoble numbers (is he over 700 yet?) but there sure is a lot of noise. It reminds me of when I first joined Microsoft - there was so much information available and I wanted to read it all. So I went through several cycles of signing up for a bunch of distribution lists, getting to the point where I wasn't really reading them, then removing myself. I think I'm at that point for reading blogs.

I've cut my list of feeds down to just 20 technical bloggers, though 6 of them are .NEAT teammates or architect evangelists in the field. I’ve also subscribed to a bunch of community feeds, the main MSDN feed and the MSFT Download Center feed

I don’t plan on keeping my list of bloggers this low. 20 just seemed like a nice round number to start. There is so much interlinking that with the 20 I picked, I feel that I'll still find out about the important posts without having to read so many entries. I do know that I’ll subscribe to any teammate or field AE who starts blogging, because I like to keep up on what they’re blogging about. I think that for other new blogs, I’m going to create a “tentative” category. Then I can get a feel for the blog before deciding to keep them. Of course, I can delete feeds anytime, but having a tentative category helps remind me of my level of commitment to reading the blog.

Posted By at 10:46 AM Pacific Standard Time

Monday, January 19, 2004

David Chappel is Blogging

So David Chappel is blogging. No, not that David Chappel.

I've seen David speak at several MSFT events - both internal and external. He's great. Only downer is that he's using Blogger which doesn't support RSS. But Web2RSS has created a feed for him.

Posted By at 3:41 PM Pacific Standard Time

Sticking with intraVnews

I downloaded and installed the new NewsGator trial in a VPC to see how it looks. Maybe I'm still getting used to this whole Outlook news reader thing, but I don't understand why NewsGator continues to flatten my OPML hierarchy. RSS Bandit, SharpReader and intraVnews all respect my hierarchy. I may not read as much as Scoble, but I am reading over 200 blogs these days and I like to categorize them. Favorites, GDN Workspaces, .NET bloggers, MSFT bloggers, Blogs I only scan the headlines of before I delete them, etc. But when I import that same OPML into NewsGator, it gets flattened into one big list of feeds. Apparently, you can manually move the folders around once they are created, but I'm not interested in doing that 200+ times.

Too bad, because the online services looked cool.

Posted By at 12:26 PM Pacific Standard Time

Sunday, January 18, 2004

Geek / Blogger Dinner Wed.

I see from Jim, Rory and Scoble that there's a "Weblog Meetup" on Wed. evening. It's at a bowling alley. I hate bowling. I mean, I really hate it. As in I'd consider lighting myself on fire to get out of bowling. But this bowling alley has good beer and Wed is not karoke night. So I think I can make it.

Posted By at 10:10 PM Pacific Standard Time

Wednesday, January 14, 2004

A Friend Returns

My old teammate Rick Culpepper quit working for Microsoft several months ago because he couldn't hack the travel. Of course, neither could I - but there are alot more non-travel positions in Redmond, WA than Nashville, TN. Good news for Microsoft, Rick's back as a TAM for the healthcare vertical.

Welcome back, Rick!

Update - Apparently, I can't spell "Culpepper" or "months". Corrected.

Posted By at 4:19 PM Pacific Standard Time

Reading News in Outlook

I finally made the decision to dump SharpReader. The massive memory utilization (100+ MB) combined with the myriad of alert toast popups finally sealed the deal. Currently, I'm using intraVnews and I'm going to try out the new NewsGator when it's available.

Reading blogs in Outlook does take some getting used to. Search Folders makes it easier, but then my feeds are sorted alphabetically rather than by the feed category (i.e. the parent folder). Is there a hotkey or shortcut for jumping to the next unread item (even if it's in a different folder) when using the reading pane? Also, I'm used to deleting emails after I've read them but I'm used to letting posts get deleted when they are a couple weeks old. IntraVnews supports this option, but maybe I'm better off treating posts like email and deleting them when I'm done.

Don mentioned he was going to roll his own blog engine so he can use it for experimentation. (I'd link to the entry bu permalinks seem to be broken in his current blog engine). I keep thinking of the same thing about news readers.

Update - thanks to Wesner Moise for pointing out to me in my comments how to turn off the alert toast popups. However, I'm still going to stick it out with an Outlook based solution. Luckily, I'm not like most 'softies w/ a ton of unread email in my inbox so the built-in search folder works fine.

Posted By at 2:20 PM Pacific Standard Time

Happy Birthday to Blog

So it was a year ago today that I started this blog. It's interesting to see how much has changed in that time. My son was born, I switched jobs, I got an article published in MSDN and even my wife is blogging now. And I'm even blogging this from Phoenix where I started blogging in the first place!

I was in Phoenix for a local architect roundtable event. It went great. I was filling in for a teammate who had a conflict, but I hope to do more of these in the future as it's a chance to interact directly with the architect community. I presented Metropolis - we're working on getting more info about that up on architecture center very soon. I also got a chance to do my "performance doesn't matter" rant discussion that seems to always come up when you start talking about building services. I'll blog that later, I've got a plane to catch.

Posted By at 8:29 AM Pacific Standard Time

Wednesday, January 07, 2004

Yet Another .NEAT Blogger

First Simon, then Ram, now another member of the .NET Enterprise Architecture Team is blogging. David Hill just started, but he's already posted an article entitled "A Simplified Asynchronous Call Pattern for WinForm Applications". In the article, David describes "how you can implement a simpler asynchronous call pattern which allows you to consume web services from a WinForm application without having to worry about threads ever again." Cool!

Posted By at 2:50 PM Pacific Standard Time

Sunday, January 04, 2004

Another .NEAT Blogger

Another member of the .NET Enterprise Architecture Team, Ramkumar Kothandaraman (we just call him Ram), has started a blog. Like Simon, Ram spends most of his time with customers solving hard architecture issues. Check out his post on architectural agility

Posted By at 10:37 PM Pacific Standard Time

Tuesday, December 16, 2003

Reliable Syndication

After reading Sam's slides on Atom, Scoble posted three times about how syndication could evolve. Of course, Scoble has his Longhorn-colored glasses on. Dare pointed out that "The major problems with syndication today have little to do with the syndication format and more to do with it's associated technologies." I agree with Dare. IMO, the only thing that the ATOM syndication format has over RSS is a namespace declaration. I care about that because one of the "associated technologies" I care about is SOAP and the lack of an RSS namespace makes it hard to embed an RSS item inside a SOAP message.

I think Scoble should be asking how syndication will evolve in the face of Service Oriented Architecture in general, not Longhorn specifically. Granted, Indigo is going to make Longhorn a great platform for SOA. (If you check out the Longhorn Interoperability and Migration Guide, Chapter 2 is mostly dedicated to describing SOA.) But I think the real change to syndication is going to come from WS-ReliableMessaging. In order to truly evolve syndication, I think we need to break free of the synchronous polling model we have today. Polling only works in scenarios with a central syndication source (like a weblog). However, as the sources of syndicated content get to be more distributed (phones, P2P networks, etc) that polling model breaks down. I need to be able to send messages when things change without regard to network availability. With WS-RM, I can send messages and the infrastructure (i.e. Indigo) can take care of the ugly details of making sure the messages get delivered to their final destination.

Posted By at 4:54 PM Pacific Standard Time

Monday, December 15, 2003

Caught Up

So I'm finally caught up on my blog reading. After being on vacation for five days, I had over 500 unread entries. Read some, marked most as read even though I hadn't. This problem is going to only get worse as I find more interesting blogs to read.

What I want is for my news reader to suggest to me which of my unread entries I am most likely to be interested in. The question is, how to rank all the unranked entries?

Posted By at 11:36 PM Pacific Standard Time

Visualizing Information

My friend Matt blogged ReMail, a research prototype email client from the IBM Watson Research Center. Matt's right that many of these features of ReMail are already in Outlook 2003 (List Seperators, Annotations, Threads, Collections). But what makes ReMail really cool is their visualizations. "The visualizations in Remail were designed to help people see connections between messages and people that would otherwise be invisible." I'm going to need to read more about Thread Arcs.

This cool visualization reminds me of a research talk I got to see by Alison Lee from IBM Watson Research on campus a couple of weeks ago. Among other things, she showed off eTree: "A Browse and Query Interface for Online Communities". Basically, its a tool for visualizing the activity of a web discussion forum (such as the ASP.NET Forums). In this idiom, each branch of the tree is a forum and each leaf on the tree is a thread. "Hot" threads become flowers on the branch. Older posts are dark green while newer posts are lighter. Members of the community are rendered as circles around the outside of the tree - selecting a user highlights the threads they have participated in.

What's really exciting is that researchers are starting to look at blogging. I know lots of people were interested in the Wallop project from the MS Research Social Computing Group that was highlighted @ PDC. I want to see this technology make it into blogger tools.

Posted By at 9:42 PM Pacific Standard Time

Sunday, December 14, 2003

Custom dasBlog Macro

I'm back from vacation and I just had to deploy a small dasBlog update that I hacked up while I was on the plane and my wife and son were sleeping. Clemens posted on the GDN workspace about registering your own macro classes. The theme that my wife wanted for her weblog comes with a variety of different sayings for the top of the page (My Journal, Welcome, Listen To My Cheery Chirpings, etc). I thought it would be cool if the image rotated or changed every time you came to the site. So I built my own custom macro class that overrides the radio.macros.imageUrl macro. Now, if you pass in a series of images seperated by vertical pipes (i.e. "image1.gif|image2.gif|image3.gif"), it will split out into an array of image urls and pick one at random. Pretty cool. Anyone want to see the code?

Posted By at 9:59 PM Pacific Standard Time

Tuesday, December 09, 2003

Not Going To Portland

I hear Jim Blizzard is having another Portland Nerd Dinner. I wanted to go meet Rory in person, maybe see Scott (who I haven't seen since KL last year) and continue a conversation I was having with Chris last week on campus. Not going to make it this time. I could use the holidays as an excuse, but the truth is that I've got an early morning all-hands division meeting to see Return of the King and I'd like to get more than three hours of sleep.

Posted By at 11:02 PM Pacific Standard Time

Monday, December 08, 2003

My Techie Wife

It may not be original anymore, but I set up a weblog for my wife Julianne. She's always sending email out to all our friends with updates about our son, her job and other general goings-on, so I thought writing a weblog would be a good way for her to keep everyone up to date. She picked the name TechieWife in order to inspire the wives of techno-geeks everywhere. :)

I noticed she got the address of my weblog wrong in her inaugural entry. What's funny is that my friend Chris Church (no weblog yet) is so lazy that he bought devhawk.com and set it to redirect to devhawk.net. Now he can use IE's ctrl-enter shortcut key to get to my weblog.

Posted By at 11:51 PM Pacific Standard Time

Minor DasBlog Bugfix

A few months ago, one of my first enhancements I made to dasBlog was to change the way the CommentView page is rendered. Previously, it was rendered using the item template. However, I don't include the entry post date in the item template, since it's in big bold letters on the day template. So I changed the CommentView to render the single entry being displayed using the day template. This makes the CommentView page consistent with the Permalink page, which also renders the single entry using the day template.

However, when I made the change, I introduced a bug that shipped as part of the v1.4 release. When I called ProcessDayTemplate, I passed in the entry's CreatedUtc time as the day to render parameter. This caused an issue where the CommentView would not render the entry when the day of the CreatedUtc did not equal the time-zone adjusted created date. For example, if I posted a new entry at 8pm PST, that is 4am UTC the following day. So if I ask to render the UTC based date, the time-zone adjusted entry does not fall on that day, and thus doesn't render. So I changed the call to ProcessDayTemplate to use the entry's CreatedLocalTime property instead of the CreatedUtc. I tested, all seemed good, so I submitted the fix, which made it into the v1.5 release.

Today, I noticed a thread on the dasBlog GDN workspace indicating the bug was still there. A little bit of tracking down and I discovered that what the server thinks is the local time does not always match what dasBlog thinks the local time is. CreatedLocalTime is based on the server local time. If you run your server in a different time zone than dasBlog is configured for, you run into basically the same issue as before. Of course, since I run my dev server in the same timezone as dasBlog, I never noticed it. However, since my production server is on the east coast and I'm on the west coast, the issue showed up on my production machine.

I posted a code fix over on the GDN Message Board Thread. Basically, I calculate the correct time based off the dasBlog configured time zone. Seems to have fixed the problem on my dev and production machines. (I'm running my dev machine in a different time zone now). Let me know if you run into any more issues.

Posted By at 3:38 PM Pacific Standard Time

Sunday, December 07, 2003

Now With More Power

If you're reading this, you've found the new-and-improved DevHawk. I've changed both web hosts and blogging programs to deliver an improved blogging experience for all. Well, at least an improved blogging experience for me. You, you're on your own.

I wrote two months ago that I was planning a switch to dasBlog. I helped out with a few features (so far just CDF support and comment deletion, but I'm working on story support). Actually, it's kinda cool how dasBlog v1.5 shipped as I was moving servers. I did have to hold of on blogging for a couple of weeks, but in the end, I think it will be worth it. Now I get all the cool stuff I was too lazy to add to my own blog engine like comments, search and a web-based admin interface.

I am running a slightly non-standard version of dasBlog. If you read my site (as opposed to my RSS feed), you'll see I have a little comment that I call a tagline associated with each entry. I got the idea from Matt Williams, who uses to record where he was when he made that entry. I got bored with just putting my location in there, so I started making snippy comments instead. I submitted the Tagline code to dasBlog, but Clemens rejected it on the grounds that it pretty much a Harry-only feature.

Since I haven't got story support figured out, I'm just using static files for my articles, projects and presentations. DasBlog has a feature called FormatPage for rendering static content inline with the weblog template. Combined with the built-in URL rewriting engine, I was able to create simple URLs for my static content. Unfortunately, I still had to break all my old urls. And I'll (probably) break them again when I get story support figured out.

Anyway, now that my new site is live, we can return to normal programming.

Posted By at 2:57 PM Pacific Standard Time

Friday, November 21, 2003

Laughed My F-ing Ass Off

I love Rory's blog. As soon as I move my blog to DasBlog, I'll have him on my blogroll. In the meantime, I'll just point you to his rant on the "f" word.
Posted By at 5:48 PM Pacific Standard Time
Change Congress
Recent Bookmarks
Tags .NET Framework (2) __clrtype__ (9) ADO.NET (5) Agile (7) AJAX (3) Architecture (288) Guidance (6) Interop (2) Modelling (61) Patterns (7) Process (4) SOA (94) Web Services (5) ASP.NET (25) Async Messaging (2) Azure (1) Battlestar Galactica (3) BI (2) BizTalk (4) Blogging (117) dasBlog (11) Podcasting (4) BPM (1) C# (11) C++ (4) Capitals (5) CardSpace (3) CLR (2) CodePlex (1) College Football (10) Comedy Central (1) Community (81) Concurrency (6) Consumer Electronics (1) Database (13) Debugger (23) Dependency Injection (2) Development (122) C Plus Plus (1) Embedded (5) Lanugages (42) Media (2) P2P (11) Rotor (1) SharePoint (6) SOP (3) DIY (1) DLR (25) Domain Specific Languages (15) Durable Messaging (5) Dynamic Languages (12) Dynamic Silverlight (1) Education (3) Enterprise 2.0 (1) Entertainment (14) ETech (15) F# (51) Functional Programming (17) Game Development (2) Guidance Automation (3) Hardware (8) HawkCodeBox (1) HawkEye (3) Health (1) Hockey (31) Home Electronics (1) Home Network (5) Hosting API (1) Humor (5) IASA (1) Idempotence (3) infrastructure (5) Instrumentation (4) Integration (2) IronPython (112) IronRuby (16) Java (2) Job (3) Kodu (1) LangNET (2) Lightweight Debugger (5) LINQ (23) Live Framework (3) Live Mesh (2) Lost (1) Master Data Management (1) Media 2.0 (6) Microsoft (31) MIX06 (2) Mobile Phone (1) Monads (5) Morning Coffee (172) Object Oriented (4) Office (5) Open Source (8) Open Space (2) Operations (3) Other (135) Art (1) Books (1) Family (33) Games (18) General Geekery (27) Home Theater (1) Movies (23) Music (20) Politics (3) Society (1) Sports (37) Working at MSFT (19) Parallel Programming (3) Parsing Expression Grammar (16) patterns & practices (2) PDC08 (5) Politics (48) Polyglot (3) PowerPoint (2) PowerShell (39) Presentation (7) Projects (1) HawkWiki (1) Pygments (5) Python (6) Quote of the Day (4) Refactoring (1) Research (2) REST (18) Reuse (5) Robotics (2) Rock Band (4) Rome (5) Ruby (23) Ruby on Rails (1) Sci-Fi (2) Scripting (4) Security (3) Service Broker (14) SharePoint (2) Silverlight (20) Social Software (1) Software + Services (2) Software Design (2) Software Engineering (1) Software Factories (11) Software Industry (1) Space Elevator (1) Spark (1) SQL Server (2) Stephen Colbert (1) TechEd (7) TechEd06 (1) TechRec League (1) Television (6) Travel (7) Unified Client (1) Unit Testing (4) USC (1) UX (1) Virtual PC (2) Visual Basic (3) Visual Studio (20) Volta (2) Washington Capitals (37) WCF (31) Web 2.0 (67) Web Services (7) WF (21) Windows (3) Windows Live (29) Windows Live Writer (3) WPF (8) Xbox (1) Xbox 360 (54) XML (11) XNA (15) Zune (4)
Disclaimer: The information in this weblog is provided "AS IS" with no warranties, and confers no rights. This weblog does not represent the thoughts, intentions, plans or strategies of my employer. It is solely my opinion. Inappropriate comments will be deleted at the authors discretion.