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.
Monday, Jun 7, 2004, 11:56 AM in The Spout
My First Presentation For A Distinguished Engineer
Here. The one where I get to present a technical topic to Anders Hejlsberg and it changes my brain.
Monday, Jun 7, 2004, 12:00 AM in The Spout
My First Presentation For A Distinguished Engineer
Monday, June 7, 2004
Wednesday was a good day. Not only did I get birthday wishes from all over the internet (thank you, Orkut), but I got to give my first presentation to a Distinguished Engineer (or DE, as we call them in humble tones). A DE is the top end of the individual contributor ladder that technical folks who want to stay technical -- aka avoid becoming management -- are on. Architects, e.g. Don, are one step down on that ladder and Program Managers (PMs), e.g. me, are even further down. In this case, the DE to whom I was presenting is someone that I've long respected and who invented and continues to guide my favorite programming language: Anders Hejlsberg.
A couple of weeks ago, Anders was digging through our docs on a topic in which he was interested because of the future directions he's got in mind for C#. However, the particular information that Anders was looking for wasn't in our documentation. So, he mentioned that he'd like someone to look into it and get the information for him. As a percentage of the 56K employees at MS, there are a very few DEs, so when one of them mentions that they'd like to see something done, that's what happens. This doesn't happens because a DE is your boss or because they decide whether you get a raise or not. This happens because smart technical folks get respect at MS and the smarter you are, the more respect you get. So, when Anders mentioned to BradA that he would like a brief on this technology, Brad found someone to give that brief: me.
Why me? Well, lately I've been talking to Brad about me doing some more technical work on WinFX and Longhorn. In the past, I've written and spoken a great deal about the good and the bad of various technologies and my thinking was that if I could get into a feedback loop with the product teams so that I could help prevent some the worse bits from making it out the door, giving me the opportunity to write only nice things about our technologies. Brad already runs the WinFX review team that's in charge of making WinFX a nice place for developers to play, so when I volunteered to help with some of that work, it didn't take long for him to take me up on it. And, after a few moments of hesitation when I realized that I only knew a little more than Anders about this particular topic, I jumped at it, digging into the technology, sending "tell me more" and "review these slides, please" emails to the various product groups in charge of those technologies (it's amazing how quickly you get a response when you put "I'm writing a presentation on your technology for Anders and..." into an email : ), revised the slides, woke up in the middle of the night with the perfect set of pictures to illustrate things, etc. In short, it was a blast and I learned a ton (which you know I like : ).
And the actual presentation was even more fun than the preparation. There are three kinds of talks. One kind of talk, which happens 80% of the time, is the kind of talk that doesn't really affect you one way or the other. It kind of blends in with all of the other talks you've given and doesn't really make an impact on you.
One kind of talk drains you completely. This is the talk where you just can't get anyone to notice you at the front of the room and you pour all of your energy into it to make it acceptable at all.
And one kind of talk, my favorite, is when the juices are really flowing and you walk out of the meeting all excited and energized. This is the kind of talk that drives me and my colleagues to all-night diners for a debrief session. This last talk was the kind that I had this time with Anders and a couple of the product teams from around the company. I was really just guiding the discussion, with Anders leading and peppering all of us with wonderful, insightful questions. I had 20+ slides with overview, pictures, details and recommendations, but I only showed 4 of them (3 of pictures and 1 of recommendations). My inability to get through all of the slides didn't matter: Anders got it all. He was interested in some of what I had to say, but also brought up points I'd never considered. What I think should be in our platform was changed by just listening to Anders ask questions. I could feel the synapses in my brain realign. It was amazing.
Things will absolutely change in our platform because of the desires that Anders expressed during my presentation. What a privilege.
Sunday, Jun 6, 2004, 6:47 PM in The Spout
MikeDub On Solving An Instance of Writer's Block
It has been my pleasure to spend the last 2+ years writing with Mike Wienhardt. I remember fondly his first piece. When I give feedback, I work very hard to let the author know just exactly what I think so that they can bring their work to its highest possible potential. When Mike sent me his first draft, I was as careful as I could be to point out the parts that I liked to let him know that he had real potential, but basically, I ripped it apart. I have literally caused authors to tear up reading my feedback in the past, but I give Mike credit -- he turned his piece around and came right back for more. We did this 5 or 6 times, but by the end, his first piece was better than most of the experienced authors filling magazines and web sites. It has been a real pleasure watching him grow into his writing talent and it made me very happy when he accepted the major writing duties on the 2nd edition of Windows Forms Programming in C# and when he took over my Wonders of Windows Forms column.
In his most recent blog post, it was very interesting to read about Mike working his way through the worst part of writing: writer's block. Nearly all authors get this occasionally and it's a real killer (and a pox on those authors that don't suffer from it). It makes me proud to see him so concerned about his writing that he's willing to share these kinds of experiences with the world. I wish more engineers took that kind of pride in their work. You're setting an example for us all, Mike.
Saturday, Jun 5, 2004, 11:51 AM in Conference
The Magic of the DevCon: Picking the Topic
Don suggested that I change the topic of DevCon5 to XAML or some other topic. So far, the DevCons have run the course of topics from ATL to Web Services and then to Applied XML/Web Services.
My primary concern when throwing a DevCon is that there is a sufficient user base of the technology that it's more than a vendor show. Even the original ATL DevCon only had a few MS employees and one MS talk. The rest of it were practitioners and experts from outside the big house and that makes for a better conference, imo.
So, as much as I love Longhorn and Avalon specifically and see them at topics for future DevCons, the technology's not ready yet. Most of the real Avalon experts are MS employees and while there are some notable exceptions, we're just not at a critical mass of folks yet for a XAML DevCon.
Saturday, Jun 5, 2004, 11:35 AM in Tools
Leaked Image of VB.net Context Menu
The great thing about multiple language teams in .NET is that each team can provide tools specific for their audience, like this leaked image of the Visual Basic 2005 context menu.
Saturday, Jun 5, 2004, 11:13 AM in Fun
I Knew I Had "Circus Freak" In My Blood!
Sellsville...
The old Sells Mansion...
The Sells Brothers's love of elephants...
All this and more in an article from The Short North Gazette in Columbus, Ohio.
Friday, Jun 4, 2004, 4:56 PM in Conference
Call For Speakers: Applied XML Dev.Conf. 5
Are you interested in presenting a 45-minute talk on some applied XML or Web Services topic? It doesn't matter which platform or OS you're targeting. It also doesn't matter whether you're an author or vendor or professional speaker or a developer in the trenches (in fact, I tend to be biased towards the latter). We're after interesting and unique applications of XML and Web Services technology and if you're doing good work in that area, then I need you to send me a session topic and 2-4 sentence abstract along with a little bit about yourself.
I'll be taking submissions 'til the end of June, but don't delay. Passion and a burning story to tell count twice as much as anything else.
And don't be shy about spreading this announcement around! I've got good coverage in the .NET and Windows communities, but don't know very many folks in the Java or Unix or hardcore XML worlds, so if you're in that world, let those guys know! Thanks.
BTW, the conference itself is likely to be in Oregon during the 2nd or 3rd week of September, 2004, but we're still working the details out. One of the fun things that we're thinking about this year is to have the Dev.Conf. in Sunriver, Oregon, a resort and spa town in central Oregon where sun is plentiful and rain is scarce. There are no major airports there, so we'd provide bus transportation from Portland, OR for anyone that wanted it. It'd be a 3.5 hour road trip. What do folks think about that?
Thursday, Jun 3, 2004, 11:39 PM in Fun
This Is The Problem With Fame In The IT Industry
The problem with fame in the IT industry is that when someone dreams about me, it's a dude. : )
Wednesday, Jun 2, 2004, 11:08 PM in .NET
MyXaml Is Not A Microsoft XAML Clone
Just to be clear, Marc Clifton's MyXaml framework for adding a declarative UI mark-up language to today's .NET framework is not a clone/sub-set of Microsoft's XAML or Avalon targeted at Longhorn. In other words, while MyXaml provides a number of the benefits of declarative UI mark-up for building smart/rich clients today, MyXaml is not a way to write WinForms code today that will seamlessly turn into Avalon code tomorrow.
The reason I mention this is because I've seen some folks get a bit confused by the use of "Xaml" in the name (Marc is using XAML as the generic Extensible Application Mark-up Language and not as related to Microsoft's XAML).
On the other hand, there are two other projects that are aiming to clone/sub-set XAML/Avalon on .NET today: Xamlon and Mobiform's XAML products. I can't claim that either of these will actually help you transition to Longhorn when it comes along, but I know that Xamlon's XAML samples work with minor tweaks on their parser and on the WinHEC build of Longhorn.
Tuesday, Jun 1, 2004, 4:22 AM in Fun
Finally, A Use For Orkut!
Here. So far, it's provided the information required for two of my Orkut friends to wish me a happy birthday. Other than that, I haven't found a use for the site, however...
Monday, May 31, 2004, 7:44 PM in .NET
Q: Why Can't I Unload a .NET Assembly? A:...
Jason Zander, a Microsoft Product Unit Manager, not only points out the implementation problems we have with being able to unload .NET assemblies, he recommends AppDomains as the solution you really want anyway. And then, when his commentors dissent, he's right back in there asking for more information.
Have you got opinions on this topic? Make hay while the sun shines!
Sunday, May 30, 2004, 12:09 PM in Tools
Replicator v0.1
I'm not sure what I would make if I had one of these, but that doesn't stop me from wanting one.
Saturday, May 29, 2004, 1:01 PM in The Spout
Turning Science Into Engineering
It's generally know that the thing we call software "engineering" is nothing like that. We just don't have anything like the rigor that real engineering disciplines do and we need them. I wonder if Brian's quest to understand the real software life cycle and codify them constitutes another step down the road that the other engineering disciplines took to become predictable, schedule-able, reliable, budget-able and robust. I hope so.
Saturday, May 29, 2004, 12:54 PM in The Spout
You Can Actually Schedule Inch-Pebbles
I haven't read Coder To Developer, but I love the term that secretGeek has pulled from it: "Inch-Pebbles." When I was running DevelopMentor Software I learned to schedule from my then-mentor John Robbins, who learned it at NuMega (of BoundsChecker fame).
John's insight was that nobody can look at a software release or even a feature and come up with an accurate schedule. Instead, they hold up their thumb in the wind and say, "Hmmm... Two weeks." Of course, it's never anywhere close to that. However, if you break something down into tasks of 1-2 days, aka "inch-pebbles," those can be accurately estimated and then rolled up into how long each feature and then each mile-stone will actually take ("What? Three months?!? I had no idea..."). Once I learned how to schedule debugging time (rule of thumb: as long as coding time), we were able to schedule our software to w/in a week or two (although John, to show off, would pad a little and pick the day and time and deliver the golden master CD with balloons, champagne and marching band music : ).
At the time, we didn't have a name for the granularity that could be accurately scheduled and, since I haven't read Mike's book, I don't know how he defines the term "inch-pebble," but from now on, that's what I'm going to call it and if that's different from what Mike called it, well, then he'll just have to update his definition in his next edition. : )
Friday, May 28, 2004, 6:05 PM in The Spout
Great Minds...
Here.
I love Luke's RSS Aggregator [1]. He loves my book. For what more could a man ask?
[1] I just tried the lastest RSS Bandit -- don't get me started...