You've reached the internet home of Chris Sells, who has a long history as a contributing member of the Windows developer community. He enjoys long walks on the beach and various computer technologies.
Wednesday, May 11, 2005, 11:44 AM in .NET
More Better Avalon Sparklines
Sean Gerety has updated his Avalon sparklines implementation, producing good news, bad news and more good news:
- good news: the sparklines implementation fits nicely in with the other Avalon elements
- bad news: MSFT stock is dead, dead, dead
- good news: sparklines shows how dead MSFT is very nicely!
Wednesday, May 11, 2005, 1:46 AM in The Spout
Damn I Love Skype!
Skype is the thing that seems to work best for my Australian phone calls (at least once/week if not more) and I love SkypeOut for when I'm just too damn lazy to walk across the room for the phone. If I could use a SkypeIn phone number for getting/sending faxes as well as placing and receiving calls and taking voicemail, I'd have one of those, too (only $4/month!).
That said, MSN7 seems to have fixed the a/v sharing problems through firewalls, so now I use it for that and MS Communicator is damn cool, too.
These communication devices are pretty important for a remote guy. Just today, I had an hour long video counseling session with my boss (it takes me about a year to feel like I'm actually capable of any new job I take) and another hour-long IM with one of the architects on my team arguing about what the hell we're building anyway. The counseling session would've happened no matter where I lived, but even if I lived next door to him in Redmond, I wasn't going to be sitting in the architect's living room from 12:30am - 1:30am chatting with him; new comm was the enabler.
Tuesday, May 10, 2005, 9:45 PM
A Few More Books From My Current Stack
Here're some other things I've been reading lately:
- "UML Distilled." This one's useful to figure out which way the arrows are pointing these days and what they're filled with. Or rather, it was useful 'til I started playing with the class designer in VS05b2 which rocks hard. I was able to switch back and forth between the designer and code views, defining types and members in whichever view I found most convenient at the moment, confident in the knowledge that the other representation would be taken care of properly. It was a very satisfying experience.
- "Eclipse Modeling Framework." I find the writing style in this book and the visuals of the tool being described both leave something to be desired, but the potential is there.
- "Building the Data Warehouse." Of the three books on this list, this book is easily my favorite. The writing style is very readable and it's just packed full of useful thinking. Highly recommended.
Tuesday, May 10, 2005, 9:38 PM
Today's Reading: A Semantic Web Primer
I started "A Semantic Web Primer" today at the urging of a colleague. Chapter 1 seemed to say, "If web sites exposes structured data using a language we could all agree on (or a mapping to a language we could all agree on [or a mapping to a mapping...]), we could build much cooler apps w/ the data that's already on the web." I find that to be an eminently reasonable argument. Plus, it sounds line "an ontology" is "a class diagram," so I'm already at home. : )
Unfortunately, we've got a chicken 'n' egg problem here, i.e. no one's going to build the cool apps 'til the info is available and nobody's going to make their info available 'til there's cool apps to plug into. How did RSS make it over that hump?
Chapter 2 was a summary of XML, i.e. useless for anyone reading this site.
I'm hoping to get to Chapter 3: RDF tomorrow.
Anyone got any arrows in the back trying to use this technology that they'd like to share?
Wednesday, May 4, 2005, 3:17 AM in .NET
Animating Avalon Card Control Library

Monday, May 2, 2005, 8:38 PM in The Spout
I am not a graphic artist!
Whenever anyone hears that I program Avalon, the first thing they think is, "Oh, good, let's get Chris to create a cool looking UI for us!" They also tend to lump in data visualization expertise and user experience into that mix as well. On the "beginning to experienced" scaled, I'd rate myself in the following way on these tasks:
- Avalon programming: beginner to intermediate, depending on the bit of Avalon you're taking about
- Visualization expertise: interested beginner (I've attended a 8-hour Edward Tufte seminar, skimmed 3 of his books and wished for something more than the DataGrid)
- User Experience design: intermediate in the realm of standard Windows applications but beginner when those limitations are removed, i.e. what Avalon enables
- Graphic art: untalented hack
Seriously, I can't draw myself out of a paper bag (or in one, for that matter). I hired all of the art done for my web site and I almost never draw pictures for my books. Instead, I write programs and take screen shots or make Mike draw the pictures for me.
Being able to program Avalon doesn't make me a graphics artist any more than being able to program my financial calculator (which I can't do anyway) would make me Warren Buffet. In fact, I'm closer to being Warren Buffett than I am to being a graphics artist, which should give you some indication about the gap we're talking about here...
That's not to say that some enterprising 3rd party couldn't create tools to help artistic yarn heads like me produce useful Avalon graphics. If my experience is any indication, there are going to be a lot of developers moving to Avalon that are expected to create wonderful things w/o an artistic bone in their bodies. Somebody help!
Monday, May 2, 2005, 8:15 PM in Fun
Only Annual Time Traveler's Convention
Here.
May 7, 2005, 10:00pm EDT (08 May 2005 02:00:00 UTC)
East Campus Courtyard, MIT
42:21:36.025°N, 71:05:16.332°W
(42.360007,-071.087870 in decimal degrees)
I can't attend this year myself, but I'm definitely planning to go to this one and only convention some time in the future (I love that idea : ).
Saturday, Apr 30, 2005, 1:31 AM in The Spout
I enjoyed THGTTG
It wasn't perfect, e.g. lots of the fun bits were gone and at least one sub-plot never got resolved, but I liked the new stuff, e.g. the motivation for the end of the movie and the romance. Bottom line: I laughed a lot. We did have a pretty decent local geek turn-out, so that made it even more fun, but it was a completely watchable movie and I'd definitely see it again.
Thursday, Apr 28, 2005, 3:40 PM in Tools
Another VB.NET feature that makes me jealous
First there was case-correction, now VB programmers in VS 2005 beta 2 get grayed out members in intellisense if they set their ClickOnce properties below FullTrust. Cool!
Tuesday, Apr 26, 2005, 3:51 PM in Fun
Anyone Want To Join Us For Hitchhiker on Friday?
The brothers Sells and I will be attending the 7:35pm showing of The Hitchhiker's Guide to the Galaxy on Friday at the Evergreen theater at highway 26 at the 185th exit in Hillsboro. I plan on being at the theater around 7pm.
Everyone's welcome to join us. I'll buy the popcorn!
Tuesday, Apr 26, 2005, 9:21 AM in The Spout
The Value of Scoble
There is huge value in Robert Scoble publicly criticizing his employer's CEO. The value is this: when the GM of VSTS says "ask me anything you want" concerning a recent pricing controversy, you can have confidence that Robert is going to ask the hard questions and push out the results as unedited as MS PR will let him get away with (I detected no edits in this piece). The world may not like the answers he digs out, but because Robert is risk-his-job honest, you have a high degree of confidence that what he says is the truth as he finds it.
Robert Scoble has become the Geraldo Rivera of technology reporting. Even if MS took away Robert's camcorder, I expect O'Reilly, Fawcette, CNET, ServerSide, CodeProject or any of a number of other technology eyeball companies to hand it right back to him.
Tuesday, Apr 26, 2005, 9:04 AM in Tools
I Like VC# Express
I was paving a box this weekend with the March Avalon/Indigo CTP and I needed the matching Feb CTP of VS05, so I installed the Feb CTP of VC# Express. I have to say, I'm impressed. Avalon integrated w/ no trouble. I have all the Intellisense, key bindings, options, code formatting and generics support that I went looking for (although I did have to find the Show all settings option in the Options dialog).
Only two things bug me about Express. The first is minor: I'm used to starting VS with Start->Run: devenv [Enter] and now I have to start VC# Express with Start->Run: vcexpress [Enter]. Given that I can install a bunch of Express products, it makes sense to me to need to learn a new EXE name for each of them (especially if I slip Asynch COM out of long-term storage... [dumping]... there, plenty of room!).
The second thing that bugs me is that I'm not allowed to specific a spot on my hard drive when I create a new project. As a guy with a background thread running Alt->F->S every time I typing idles, having everything in a well-known place is important to me. I'm a developer. Things crash!
Overall, though, I'm loving VC# Express. Recommended.
Sunday, Apr 24, 2005, 10:08 AM in The Spout
Status of ATL Internals 2e
More people than you'd expect have been asking, so here's an update on ATL Internals 2e.
This effort actually started in 2003, when Kirk Fertita updated the first 9 chapters to ATL7 as provided in VS 2002. Then he had to go work on his start-up, which represented his only income stream and would've gone belly up w/o him (selfish bastard! : ).
Then George Shepherd did a little work, writing bits of two new chapters on ATL Server before he had to bale.
Now, finally, we have an author that's going to see this book to the finish line: Chris Tavares. I've written with him before and he's excellent. He's already ported chapters 1-4 to ATL8 as provided in VS 2005 and is on schedule to bring my and Brent's work on ATL3, Kirk and George's work on ATL7 and his own new work into a cohesive ATL8 book to hit the shelves 3-4 months after VS05 has hit RTM.
Sunday, Apr 24, 2005, 9:56 AM in The Spout
Status on Windows Forms Programming 2e
Jose "heard" that I'm working on an update for the first edition of Windows Forms Programming in C# for Windows Forms 2.0 (we're not updating the VB.NET version due to poor sales for VB.NET-related titles in general). I didn't mean to keep it a secret; it's been listed at the top of my writing page for a year or more. : )
While we've been working closely together on the update, the bulk of the writing work is being done by Micheal Weinhardt, my main writing partner for the last coupla years or so. He's got 90% of the book updated for VS05b1 already and is in the process of updating the whole thing to b2. After that, we pass it back and forth between ourselves for review-edit 'til we're both happy. By the end of May, hopefully the whole thing will be out for review. After that, we apply reviewer comments and update at each successive beta/release candidate until the Whidbey team decides they're done, at which point we send it to the publisher and 3-4 months later, it hits the shelves.
In addition to updating the existing material for WF2, we've made the following changes:
- Split a Layout chapter out of the Forms chapter due to all of the extra WF2 layout functionality
- Refactored the existing design-time and controls chapters and the standard components & controls appendix into the following chapters: components, controls, design-time 1 and design-time 2 (includes smart tags)
- Split the applications & settings chapters into 2
- Added a Document Management chapter for MFC folks finding themselves in the app framework-free environment of Windows Forms
- Dropped the data access chapter as covered better in other sources
- Re-wrote the data binding chapter from scratch with a story I always wanted to tell in WF1, but isn't supported nicely 'til WF2 (object-centric binding instead of relational database-centric)
- Refactored the drag 'n' drop material into it's own appendix
- Added a "What's New in Windows Forms 2.0" appendix for those already familiar with Windows Forms 1.x
- Dropped the delegates bedtime story in favor of beefed up coverage in chapter 1 (and a more general knowledge of delegates in the universe as a whole). Don't get my wrong, I love that story, but it doesn't fit into the overall theme of the rest of the book. I knew this when I first edition shipped, but I just didn't take the time to update the book properly to live w/o it
I have to say that working with Mike on this process has been fabulous. An ordinary author faced with updating to a new version of a technology might just update the material and leave the story alone, even if it needs update. Instead, Mike took the time to reexamine the book from first principles, fixing the problems in the story that always nagged at me in the 1st edition and proposing improvements to stuff I was pretty proud of. In general, even without the update to the new technology, the book is better than the 1st edition.
Thursday, Apr 21, 2005, 2:53 PM
Rocky on SOA Versioning
I don't think that he's saying anything new to the world of message-based programmers, but since so many of us are component-based programmers, I like how Rocky bridges the component and message-based worlds and points out the downside of component-based programs in an service-oriented world.
I'm also of the mind that the component-based world isn't even very good for components unless you get to package the components and the apps all at once. For example, in the world I'd like to see plug-in applications like Visual Studio become, where the app and the plug-ins come from different places and version independently, message-based thinking is far more applicable than component-based thinking.