Passion * Technology * Ruthless Competence

Thursday, 17 July 2008

Morning Coffee 169

  • Check out the crowd for a the Washington Capitals developmental camp scrimmage last week (My parents are in their somewhere). Standing room only in the practice facility to watch a bunch of kids, most of whom won't ever make it to the NHL, in July. If you think Washington can't be a hockey town, you are sorely mistaken.
  • Speaking of the Caps, they are establishing a "spirit squad"? Is that really necessary? (short answer: no). Peerless' take is hilarious.
  • Seshadri Vijayaraghavan is a tester on the DLR team and he's been writing quite a bit about the DLR hosting API. He's got a series of posts about hosting, invoking and redirecting output from IronPython in a C# application.
  • I haven't seen an official announcement, but mobile access to Live Mesh is available by pointing your phone browser to http://m.mesh.com. It's mostly a web view of the Live Desktop, though there is a feature to upload photos from your phone. However, for some reason that feature doesn't work for me right now. I don't get the "browse" button.
  • ASP.NET MVC Preview 4 is available for download. Phil Haack has a few details that ScottGu didn't cover. Scott Hanselman shows off some AJAX stuff.
  • Speaking of Scott Hanselman, he highlights the return of Terrarium from Bil Simser. Scott mentions that most Terrarium animal implementations were big collections of nested if statements. I wonder if F# pattern matching would be a cleaner approach?
  • Ted Neward obviously never "even tangentially" touched politics, as I think they have far worse flame wars far more often than we have in the software industry. However, certainly the Scala flame war he's commenting on seems fairly counterproductive.
  • Brad Wilson runs into a wall trying to convert a string to an arbitrary Nullable<T>.He doesn't find an answer, but I found reading thru the steps he took to try and find an answer strangely compelling.
  • Jeff Atwood argues that Maybe Normalization isn't Normal. It's mostly a collection of information from other places, including a compilation of high-scale database case studies. But it's a useful collection of info and links, with a little common-sense thrown in for good measure.
  • I have a hard time imagining Pat Helland camping.
Posted By Harry Pierson at 10:52 AM Pacific Daylight Time

Monday, 14 July 2008

Morning Coffee 167

  • If you're a gamer, you're probably already well aware that E3 is this week. The Too Human demo has already been released. I have a friend who's been working on "something" that will be announced today (I think).
  • Live Mesh folks pushed out an update Friday. Among the new features is the ability to sync folders among peers but NOT up to the cloud. This is cool because it means I can sync my many many GB of pictures and music on my home machine backed up with Carbonite. This means I can sync them without blowing thru my 5GB Mesh storage limit.
  • It looks like there's a new F# drop - 1.9.4.19 - but as usual there is no announcement or details as to what's new. Release notes guys, look into it.  UPDATE - Don Syme blogged the release, and it's pretty minor. a .NET FX 3.5 SP1 bug fix, a fix for Mono, and they removed WebRequest.GetResponseAsync to make F# work on Silverlight. And the release notes are in the readme. My bad.
  • Speaking of F#, it was "partially inspired" by OCaml, so when I see papers related to OCaml, I immediately wonder if I an apply the described techniques to F#. "Catch me if you can, Towards type-safe, hierarchical, lightweight, polymorphic and efficient error management in OCaml" is one such paper. (via LtU)
  • Speaking of functional programming, Matthew Podwysocki posted a bunch of FP links as well as a Code Gallery Sample on FP in C#. Good stuff.
  • As per Scott Guthrie, it looks like there's a new ASP.NET MVC drop coming this week.
  • Based on posts by Ted Neward, Dare Obasanjo and Steve Vinoski, Google Protocol Buffers sounds like it's going to be a dud. Note, I haven't looked at it depth personally, I'm just passing on opinions of some folks I read and trust.
  • Speaking of Dare, both he and James Hamilton take a look at Cassandra and come away impressed. I wonder how easy it is to code against from Python and/or .NET?
  • Bart de Smet has a cool sample of calling out to PowerShell from IronRuby via the backtick command. Pretty cool, but it would even cooler to show how to call out to PS and return .NET objects to Ruby (though that would probably not be spec compliant for the backtick command).
  • Here's a MS code name I had never heard before - Zermatt. It's "a framework for implementing claims-based identity in your applications." (via Steve Gilham)
Posted By Harry Pierson at 9:30 AM Pacific Daylight Time

Thursday, 24 April 2008

Morning Coffee 164

  • Big news since my last Morning Coffee post was the announcement of Live Mesh. I've been running it for about a month, and I'm really digging it. Make sure you check out the team blog and watch the developer tour video (be on the lookout for IPy about half way thru the video)

ALT.NET

  • I had a great time @ the ALT.NET open space conference last weekend. I was somewhat distracted on Saturday as due to a family communication mixup, I had to bring my son Patrick with me. Jeffrey Palermo shot a cute video of him (3 minutes in) where he explains that he's at the conference "to be with my dad". Having a five year old is a little distracting, but everyone was amazingly cool with having him around. When he gets a little older I have no doubt he'll be attending conferences and leading open sessions.
  • I did a session on F#, but it felt kinda all over the place. I hadn't touched F# in a few months and it showed IMO. Matt Podwysocki was there to help keep the session from devolving into mass chaos. Thanks Matt.
  • My favorite session of the conference was Scott Hanselman's "Are We Innovating?" talk, which I think originated from a question I asked him: There are many examples of large OSS projects in other dev communities that get ported to .NET (NHibernate, NAnt, MonoRail, etc). Can you name one that's gone the other way? I can't.
  • I took Matt's advice and joined the local ALT.NET Seattle group.

DyLang Stuff

  • Martin Maly posts about how dynamic method dispatches are cached in three different layers by the DLR. You shouldn't care about this stuff if you're a DLR language user, but you will certainly care about it if you're a DLR language builder.
  • I'm really excited to see Phil Haack (whom I met F2F @ ALT.NET) is experimenting with IronRuby & ASP.NET MVC. True, I'd rather it was IPy, but his Routes.LoadFromRuby would work with Python with very little code change.
  • Note to self, take a deeper look at Twining, the IPy database DSL by David Seruyange.
  • Daily Michael Foord - Ironclad 0.2 Released. Ironclad is a project to implement Python's C extension API in C# so that IronPython could load standard Python C modules like SciPy and NumPy. So far, they're able to load the bz2 module

Other Stuff

  • Congrats to Brad and Jim for shipping xUnit.net 1.0.
  • Everyone seems to be jumping on the functional C# coding bandwagon. Bart De Smet's series on pattern matching in C# is currently at eight posts. Now Luca Bolognese is in on the action, with three posts so far on functional code in C#. I like how Luca keeps writing that the C# syntax is "not terrible" for functional programming. Again, why suffer thru the "not terrible" syntax when you could be using F# instead? (via Charlie Calvert)
  • I need to take a look at VLinq. Charlie and Scott Hanselman both mentioned it recently.
  • I would like to have been in the conversation with Ted Neward, Neal Ford, Venkat Subramaniam, Don Box and Amanda Silver.
  • I haven't had any time to play with XNA of late, which means the great list of GDC videos Dave Weller posted on the XNA team blog will remain beyond my ability to invest time for now.
  • There's a new drop of Spec# from MS Research. IronRuby is using Spec# heavily as I recall.
Posted By Harry Pierson at 10:53 AM Pacific Daylight Time

Thursday, 28 February 2008

Morning Coffee 151

  • Unity's first CTP was just over two weeks ago, but according to Grigori Melnik, it's shipping just over two weeks from now. That seems pretty speedy to me. By the time I get a change to take a closer look at Unity, it'll probably have shipped.
  • I discovered Matthew Podwysocki blog via DNK. I don't typically subscribe to blogs that I discover via DNK, but Matthew has written about IoC/Unity, F# and DLR lately so I'm thinking I should be a regular reader.
  • Corporate VP David Treadwell has an extensive post on updates to the Windows Live Platform Services that are being unveiled at MIX next week. The updates include the new WL Messenger Library, a new SDK for WL ID Delegated Authentication, a new WL Photo API, a new CTP of WL Tools, standardized support for AtomPub, updates to WL Contacts API and Sivlerlight Streaming and a new "experimental" service called Application Based Storage that "allows application developers to store a small amount of state/configuration data in the WL data centers on behalf of a user". I'm sure there'll be more WL news at the MIX conference proper, but that's quite a good chunk of features to start digging into. Personally, I'm particularly interested in WL Delegated Auth, esp. how it deals with phishing, something I don't think OAuth handles very well.
  • Windows Live isn't the only group making announcements in advance of MIX. Adobe announced a research project that allows "cross-compiling existing code from C, C++, Java, Python, and Ruby to ActionScript." This seems pretty obviously a response to Silverlight 2.0's embedded CLR, announced last year @ MIX. Support for C++ is very interesting - Adobe evangelist Ted Patrick claims they were even able to cross-compile Quake 1 to Flash. Interesting, but this is an internal research project @ Adobe with no projected release date while Silverlight 2.0 goes into beta next week.
Posted By Harry Pierson at 11:38 AM Pacific Standard Time

Friday, 07 December 2007

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, 09 November 2007

Morning Coffee 122

  • Sorry for the posting lag. Had a few technical difficulties around here. In the process of moving hosts, so expect more glitches.
  • My talk at the p&p Summit on Monday went really well. At least, it felt good and the applause at the end felt genuine. I recorded the audio on my laptop, so I'll be posting a Silverlight version as soon as I figure out how to adjust the levels so their somewhat consistent. Paraesthesia and #2872 have reactions.
  • Speaking of the p&p Summit, Scott Hanselman posted his ASP.NET MVC demo from his talk. Said ASP.NET MVC bits aren't available yet, so you can't, you know, run the demo for yourself. But at least you can review what the ASP.NET MVC code will look like.
  • I stopped by the SOA/BPM conference last week and saw Jon, Sam and Jesus among others. Spent quite a bit of time talking to Sam and his Neudesic colleagues about this "physically distributed/logically centralized" approach that I think is hogwash. It sounds to me like Neudesic approach is really federated not centralized, though I'm not sure David Pallmann would agree. Federated makes much more sense to me than centralized.
  • Nick Malik continues his series on SOA Business Operations Model. I especially like his point that this isn't a series of choices, you need to "look at your company and try to understand which model the business has selected. "
  • The first CTP of PowerShell 2.0 is out! Check out what's new on the PowerShell team blog and Jeffrey Snover's TechEd Presentation. (via Sam Gentile)
  • Soma announced updates to VC++ coming next year, including TR1 support and a "major" MFC upgrade to support creating native apps that look like Office, IE or VS. I get supporting TR1, but the idea that people are clamoring for MFC updates is kinda surprising. Many years ago when I first came to MSFT, a friend asked "But don't you hate Microsoft?" to which I responded "No, I just hate MFC". Obviously, not everyone agrees with that sentiment.
  • Steve Vinoski thinks there's no hope for IT. Funny, I keep agreeing with Steve's overall point but disagreeing with his reasoning. I still don't buy the serendipity argument. I like compiled languages. And I think he's overstating the amount of "real, useful guidance" for REST floating around. Basically, there's "the book".
  • In widely reported news, Windows Live launched their next generation services. Don't bother with the press release, just go to the new WL home page.
  • Speaking of WL, Dare Obasanjo points to the Live Data Interactive SDK page where you can experiment with the WL Contacts REST API. It gives you a good sense of how the Web3S protocol works. Pretty well, IMO. However, how come WL Contacts Schema doesn't include some type of update timestamp for sync purposes? If you wanted to build say a Outlook <--> WL Contacts sync engine, you'd have to download the entire address book and grovel thru it for changes every sync.
  • Speaking of Web3S, I'd love to see some info on how one might implement a service using Web3S. Yaron Goland positions Web3S as an alternative to APP that WL developed because they "couldn't make APP work in any sane way for our scenarios". I'm sure other folks have similar scenarios.
Posted By Harry Pierson at 10:26 AM Pacific Standard Time

Friday, 19 October 2007

Morning Coffee 119

  • The biggest news of the week IMHO is Soma announcing the formation of an F# product team. Specifically, they will "fully integrate the F# language into Visual Studio and continue innovating and evolving F#." Though Soma calls F# "another first-class programming language on the CLR", I get the feeling there won't be a "Visual F#" sku. Don Syme has more on the news.
  • In other Soma announcement news, Popfly is now in beta. More details on what's new on the Popfly Team Blog. I haven't played with Popfly in depth, but I think it's got huge potential.
  • Scott Guthrie details the upcoming ASP.NET MVC Framework. Personally, I'm not building web apps much these days, so I'm not really invested one way or the other. Given the interest in this approach, it's nice to see the ASP.NET team respond to the market, though I'm sure someone will complain that we're trying to kill off the various open-source MVC Web frameworks that have sprung up.
  • Over in Windows Live, they shipped a new version of Live Search Maps, upgraded WL Photo Gallery (which I've been digging) to support Flickr and shipped an update to WL Accounts which allows you to link accounts.
  • The Clarius folks keep churning out great tools for software factory developers. The latest is the T4 editor, which brings intellisense, color syntax highlighting and property inspector support for Text Templating Transformation Toolkit (aka T4) files. T4 files are used for code generation in both DSL Toolkit and GAT.
  • David Pallman (again via Sam Gentile) suggests there are only three choices for infrastructure architecture: None/Point-to-point, Centralized/Hub-and-Spoke and Thin/Bus. I get the first two, but his explanation of the third goes to far into the "magic framework" category for my taste. "Physically distributed but logically centralized"? That doesn't make any sense to me at all.
  • Fellowship of the Ring makes its way onto XBLM. Alas, not in HD so I'll stick w/ my extended four hour DVD version thankyouverymuch.
Posted By Harry Pierson at 10:27 AM Pacific Daylight Time

Friday, 17 August 2007

Morning Coffee 112

  • The Lee Holmes over at the Powershell Team Blog writes about alternatives to the "decades-old" Windows console host. Powershell Plus looks awesome. PoshConsole also looks pretty cool (though far from finished yet) and is free.
  • WL ID Web Authentication SDK has been released. Details on the WL ID team blog. It looks like what Passport SDK provided for quite some time, but now it's free. There's also a client auth SDK in development. (via Dare Obasanjo)
  • Libor Soucek leaps to the wrong conclusion about not differentiating enterprise & support systems. Of course, different systems will have different availability requirements. But what happens when we connect them together? We can't let the support system effect the availability of the enterprise system, right? To me, that implies either a) the support system now needs to conform to enterprise system availability requirements or b) we need some other mechanism (like async durable messaging) to act as a buffer between them. Personally, I like "b".
  • Nick Carr points to an article The Trouble with Enterprise Software by Cynthia Rettig. Cynthia writes that while the massive complexity of enterprise software, especially large-scale ERP systems like SAP, significantly hinder it's value. It's a must read. Choice quotes:
    • "It is estimated that for every 25% increase in complexity in the tasks to be automated, the complexity of the software solution itself rises by 100%."
    • "The notion of reusable software works on a small scale. Programmers have successfully built and reused subroutines of standard functions. But as software grows more complex, reusability becomes a difficult or impossible task."
    • "Hope, unfortunately, has never been a very effective strategy."
    • "Is enterprise software just too complex to deliver on its promises? After all, enterprise systems were supposed to streamline and simplify business processes. Instead, they have brought high risks, uncertainty and a deeply worrying level of complexity. Rather than agility they have produced rigidity and unexpected barriers to change, a veritable glut of information containing myriad hidden errors, and a cloud of questions regarding their overall benefits."
Posted By Harry Pierson at 11:33 AM Pacific Daylight Time

Wednesday, 18 July 2007

Morning Coffee 102

Seems like a slow week.

  • Jules and I went to see the latest Harry Potter movie this past weekend. It's easily the weakest of the six HP stories so far. The first two stories were about discovering this magical world, the next two about discovering Harry's past, and the last two about confronting said past. That leaves OotP as the odd-story-out, mostly bridging from the end of the fourth story to the start of the sixth.
  • Speaking of movies, the new movie feature of Mobile Search v2 rocks, though I have two quick suggestions. First, it would be nice to have a time-sorted view of when a given movie is playing. So if it's playing at 4pm at one theater and 4:30pm at another, you'd see them in a list ordered that way. Second, how about an option to buy tickets directly from the phone?
  • If you're interested in WPF and 3D, Eric Sink has a series for you.
  • Old news, but Windows Home Server RTMed on Monday. I'm really looking forward to this product.
  • I was looking for some information on how WCF pumps messages in the service host and I found this post from Maheshwar Jayaraman. Between that post and Reflector, I think I've got a good handle on how ChannelDispatcher works.
  • Larry O'Brein calls out three MS Research Projects. Microsoft Research Accelerator is a high-level data-parallel library that targets GPUs. Graph Layout Execution Engine (aka GLEE) is a library for graph layout and viewing. VirtualEarth MapCruncher converts existing maps (PDF and bitmaps) to work with Virtual Earth.
  • Ted Neward weighs in on the David Chappell's Korean War REST vs. WS-* analogy. Skim the history lesson, but make sure you read his points about security and reliability interop. WS-* has addressed these areas, so if you need those capabilities, why wouldn't you use WS-* to get them rather than re-invent the wheel? As for the history lesson, Ted does say he thinks software development is more analogous to making war than building a house. He expands on that idea and recommends Robert Greene's The 33 Strategies of War. I want to read the book and mull it over a bit, but I certainly see where Ted's coming from.
Posted By Harry Pierson at 9:06 AM Pacific Daylight Time

Friday, 13 July 2007

Morning Coffee 101

  • In doing a little LINQ research, I stumbled upon Wes Dyer's Yet Another Language Geek blog. Fascinating stuff. Subscribed. Be sure to check out his recent posts about Partial Methods, another new C# 3.0 (and VB9) language feature.
  • Werner Vogles has a great post on what a CTO does, including a summary of four different approaches to the job.
  • Somasegar lets us know that even though VS08 doesn't launch until February of next year, MSFT is "still aiming to release Visual Studio 2008 and .NET FX 3.5 by the end of this year".
  • There's a new version of the Windows Live Mobile Search client. The Virtual Earth / Live Search team blog has the details. New features include Movie Showtimes, More Local Data with Reviews and improved Maps and Directions (including GPS integration). Can't wait to get this installed. (via Dare Obasanjo)
  • XNA Gamefest is coming up next month. It's sort of like PDC for game developers. It's where we make our big game dev announcements - last year, we announced XNA GSE there. They recently published their session abstracts, including a whole track on XNA Game Studio Express. As Shawn Hargreaves points out, an "enterprising reader could probably make a good guess" about some of the new stuff getting announced @ Gamefest.
Posted By Harry Pierson at 11:38 AM Pacific Daylight Time

Wednesday, 13 June 2007

Morning Coffee 89

  • akira Akira in HD from XBL Video Marketplace? Coolness.
  • Omar Shahine has the WL Hotmail + Outlook scoop. Download it here. I've used this product off and on over the past few years. Typically, I would use it, love it, but then never get around to reinstalling it after a repave since it was subscription-only product. 
  • Microsoft releases eScrum project management tool. I've seen this internally but haven't used it yet. However, I have no doubt that the cool kids will deem it "not hot" in favor of Mingle. (via Larkware)
  • Ted Neward writes at length about relational databases, object databases and OR mapping. Ted may be Switzerland when it comes to platform, but he has no problem taking sides and mixing it up when it comes to data & object persistence. He makes some interesting points that mostly boil down to "different tools for different jobs". Also, has the dual schema problem entered the general vernacular, or just Ted's?
  • Nick Malik survives his trip to Nashville and has some thoughts on Ruby, Microsoft and alpha geeks. His point about the alpha geek track record (he sites Powerbuilder, Delphi and EJB) is spot on. This is something I've been thinking about since ETech last year. How good are alpha geeks at trendspotting? For every technology they adopt that makes the mainstream, how many don't? I'm guessing quite a few more than the three Nick mentions.
  • Speaking of alpha geeks, this whole ALT.NET silliness reminds me of the famous Groucho Marx quote: "I don't want to belong to any club that will accept me as a member." Though maybe I'm just bitter because "Working at MS" has been deemed "not hot". :)
Posted By Harry Pierson at 9:57 AM Pacific Daylight Time

Thursday, 31 May 2007

Morning Coffee 86

  • Google announces Gears, a browser plugin for taking your web application offline. Developer docs are also available. TechMeme has lots more, but obviously this is yet another significant bow shot in the upcoming unified client platform war. By my count, there are four horses in this race: Microsoft with .NET and Silverlight, Adobe with Flash and Apollo, Google with AJAX and Gears and Sun with Java and JavaFX. Did I miss anyone? (via Dare Obasanjo and Scott Hanselman)
  • Alex James writes that REST is about intent and shows a pseudo-code sample posting multiple changes to a single endpoint as a way of demonstrating your intent that they be applied atomically. Andres Aguiar left a comment saying that Astoria does something similar. Personally, I like that model for transactions better than the transaction factory approach Jon Udell describes. But either way, you've moved beyond simple CRUD style services and into the world of protocol. Surfacing intent via protocol aligns with what Tim described as making the protocol explicit
  • Windows Live posted new beta versions of Writer, Mail and Messenger. I've been on an internal build of the new Writer for a while and I've really been impressed. There's also a new Provider Customization API, so I can't wait to see what the DasBlog folks do with that.
  • Scott Guthrie's LINQ series continues, this time covering how to build the LINQ to SQL data model. Looks like they used the DSL toolkit to build the LINQ to SQL data model designer, cool! 
  • Martin Fowler digs into racc, a yacc-esque compiler compiler for Ruby. Looks interesting as a internal DSL example (better than the now-canonical rake example). But why is the sexy new language on the block using old school CFG's instead of new hotness PEG's?
  • Speaking of Martin, he writes about the opportunity Ruby presents to Microsoft, building on Scott Hanselman's concerns that Microsoft is losing the Alpha Geeks. Sam Gentile also weighs in, suggesting that Microsoft is at the crossroads. Frankly, I don't work in evangelism anymore so I'm going pass these links along without comment except to say that Scott, Martin and Sam are all folks I have much much respect for.
Posted By Harry Pierson at 11:15 AM Pacific Daylight Time

Monday, 05 February 2007

Morning Coffee 24

  • Congrats to the Colts on winning the ugliest Super Bowl ever. Pouring rain, eight turnovers, missed PAT and field goal and the opening kickoff TD return. Ugly, but fun to watch.
  • Now that we've had our first poor-weather Super Bowl, I think it's time to start rotating through cities that have never gotten it due to expected weather conditions. Obviously, I'd like to see a Super Bowl at Qwest Field. But most of all, I would love to see the Super Bowl played in Green Bay on the "frozen tundra" of Lambeau Field.
  • Was it just me, or did the Super Bowl ads suck this year?
  • There's a sweet looking pinball game coming to XBLA. I love pinball, so unless it completely stinks I'll be buying it.
  • I commented on the Windows Live SDK last week, but I missed the Windows Live ID Client SDK alpha release. It looks like you can use this SDK to build desktop applications that use Windows Live ID for authentication. Fairly cool, but does it work with non WL services? (via Dare Obasanjo)
  • I saw this post on the home page of DotNetKicks today. It claims that locating the ASP.NET App_Data directory by calling AppDomain.CurrentDomain.GetData("DataDirectory") is a "dirty hack". I left a comment on the original post, but I wonder if the correct information will ever make it's way back to DNK? 
  • Architecture Comix? Yep, on Skyscrapr, an architect community site run by my old team. Sorta funny, but I'm guessing Scott Adams isn't worried about the competition yet.
Posted By Harry Pierson at 10:18 AM Pacific Standard Time

Wednesday, 31 January 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, 25 January 2007

Morning Coffee 17

Yesterday's Morning Coffee was canceled on account of barfing. For all the gory details (you have been warned), check out my wife's blog.

  • Only 12 responses to the State of the Union were posted as I write this. Dunno why, but I was expecting more. Maybe this whole Web 2.0 thing is overblown a bit! :)
  • Speaking of the State of the Union, is it just me, or did anyone else find it odd that the Scooter Libby trial started the same day?
  • Atlas ASP.NET AJAX 1.0 is done. Lots more on this from Scott Guthrie's blog. While I'm not personally that interested in ASP.NET AJAX itself, two things strike me as interesting in this release. First, we're shipping all the code for this. The client side JavaScript library, the Control Toolkit, even the server-side components. Second, it's nice to see the Developer Division shipping something this significant without waiting for the next release of Visual Studio. Here's hoping that both of these two trends continue.
  • Rich McCollister pointed me to the XmlProviderLibrary. Bad on me for not looking harder.
  • Windows Live Writer is pretty cool, but it is missing one feature that I needed twice Tuesday. While embedding images in a post is cake, there doesn't seem to be a way to embed non-image files. You know, like the ColorConsoleTraceListener Project or the Live Search for Chartity Search Providers. I'm guessing the infrastructure to post images and files would be identical, but there's no UI interface for it. I checked out the WLW SDK online and found the ISmartContent.Files.Add method, so I'm guessing it's doable. But there's no such animal on the Live Gallery. I wonder why nobody else has built this yet? Is this really that unique a request?
Posted By Harry Pierson at 9:28 AM Pacific Standard Time

Tuesday, 23 January 2007

Live Search for Charity

Dare posts about two charity search sites hosted by Live Search. Use teamseattle.live.com to search and you help sponsor Children's Hospital. Use click4thecause.live.com to search and you help sponsor Ninemillion.org, which is working to help the 9 million refugee children worldwide.

GIven that I'm already using Live Search, changing my default search page from Live.com to one of these two seems was a no brainer. I use the IE7 Search Box more often than not, so I also set up a custom search provider. However, that's a bit of a PITA, so I took the OpenSearch Description XML files and hosted them here @ DevHawk. Click the links below to add them to IE7 search box.

I'm sure there's a way to do this for Firefox's search bar, but I have no idea how. If you - dear reader - know how to add search providers, please send me email and I'll update this post accordingly.

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

Friday, 29 September 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, 15 September 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, 15 August 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

Thursday, 04 May 2006

Hawk Eye on Windows Live ID

I am so digging the new new Windows Live Sign-in Assistant. If you haven't seen it, it provides easy signin for people w/ multiple Passports Windows Live IDs. I use Windows Live Custom Domains to manage my devhawk.net email (which also rocks) which means I have my personal hotmail ID as well as my devhawk email ID. With the sign-in assistant, I get a slick login UI that lets me log in with either ID with a single click. Very nice. So far, the new sign-in only seems to be enabled for Windows Live Ideas, but I assume that will expand over time.

BTW, if you want this new sign-in experience, it looks like you need the new beta of Windows Live Messenger. There's a bunch of other new stuff in the latest beta - new features, better perf and a more polished experience. AFAIK, you still need to be invited to join the beta. I have a bunch of invites - if you want one, drop me a line.

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

Thursday, 16 March 2006

Update on Live Toolbar

I wrote last week about the need for a better first run expereince for the new Live Toolbar. I just went to install the toolbar on my dev partition and lo and behold, the first run experience is fixed! It now presents a list of installable components with the most popular ones preselected. Much better.

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

Friday, 10 March 2006

Hawk Eye on Windows Live Favorites

After installing the new Windows Live Toolbar, I installed some of the add-ins that I usually wouldn't. Things like the Phishing Filter, Games and the Windows Live Favorites. I'm not sure when Live Favorites was refreshed, but the new version is much better. It support both folders and tags - previously it just supported folders. There's a reason why tagging has taken off - it makes sense to people. I started using Live Favorites but gave up because the folder approach is so much less flexible.

The other new feature is that the Live Favorites Add-in now sync's your local favorites with your Live Favorites. Not sure how that will work if you primarily use tags on Live Favorites, but I guess I'll see.

Finally, Live Favorites can be shared, but there doesn't appear to be any way to search shared favorites. Am I missing something?

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

Hawk Eye on Live Toolbar First Run Experience

Now that I'm back in the office with an external monitor, I'm able to use my laptop again. While I was waiting for the help desk tech to show up, I installed the new Live Toolbar. I was immediately thrown however, because it comes with basically no default installed features. It was strange to have to install basic features like tabbed browsing and desktop search. On the other hand, it was nice not to have the previously default features that I don't use uninstalled (i.e. popup blocker, form fill, msn extensions). There needs to be a better first-run experience that presents the user a list of options to install (along with the standard ones pre-selected). Otherwise, so far so good.

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

SoCal Code Camp

PDC08

patterns & practices
Summit 2008

Change Congress
Recent Bookmarks
Tags .NET Framework (2) ADO.NET (5) Agile (7) AJAX (3) Architecture (284) Guidance (6) Interop (2) Modelling (61) Patterns (7) Process (4) SOA (93) Web Services (5) ASP.NET (24) Battlestar Galactica (3) BI (2) BizTalk (4) Blogging (115) dasBlog (11) Podcasting (4) BPM (1) C# (10) C++ (4) Capitals (5) CardSpace (3) CLR (2) College Football (10) Comedy Central (1) Community (81) Concurrency (6) Consumer Electronics (1) Database (13) Dependency Injection (2) Development (117) C Plus Plus (1) Embedded (5) Lanugages (37) Media (2) P2P (11) Rotor (1) SharePoint (6) SOP (3) DIY (1) DLR (16) Domain Specific Languages (13) Durable Messaging (5) Dynamic Languages (10) 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) HawkEye (3) Hockey (29) Home Electronics (1) Home Network (5) Humor (5) IASA (1) Idempotence (3) infrastructure (5) Instrumentation (4) Integration (2) IronPython (45) IronRuby (12) Java (2) Job (3) LINQ (23) Live Mesh (2) Lost (1) Master Data Management (1) Media 2.0 (6) Microsoft (30) MIX06 (2) Mobile Phone (1) Monads (5) Morning Coffee (172) Object Oriented (4) Office (5) Open Source (5) Open Space (2) Operations (3) Other (135) Art (1) Books (1) Family (31) Games (18) General Geekery (26) Home Theater (1) Movies (23) Music (20) Politics (3) Society (1) Sports (37) Working at MSFT (15) Parallel Programming (3) Parsing Expression Grammar (16) patterns & practices (2) PDC08 (5) Politics (47) PowerPoint (2) PowerShell (34) Presentation (5) Projects (1) HawkWiki (1) Python (4) 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 (18) Social Software (1) Software + Services (2) Software Design (1) Software Factories (11) Software Industry (1) Spark (1) SQL Server (2) Stephen Colbert (1) TechEd (7) TechEd06 (1) TechRec League (1) Television (6) Travel (6) Unified Client (1) Unit Testing (4) USC (1) UX (1) Virtual PC (2) Visual Basic (1) Visual Studio (20) Volta (2) Washington Capitals (34) WCF (31) Web 2.0 (65) Web Services (5) WF (21) Windows Live (23) WPF (7) Xbox (1) Xbox 360 (53) XML (11) XNA (14) 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.