Brad Wardell's Blog


PDC: Office 12 - radical!

Published on Tuesday, September 13, 2005 By Brad Wardell In PDC 2005

I just got a tour of Office 12 here at PDC.  With Office 12, Microsoft is introducing a new concept -- ribbons.  At first glance, ribbons look like toolbars on steroids. But they are much more context sensitive. 

The design of Office 12 is the most significant change to the suite since it was originally released based on using it for a few minutes.  I don't think everyone is going to like these changes though. It's just such a massive change and without a lot of usability testing (the version I had had a lot of usability problems) it could be a real problem. 

But on the other hand, Microsoft seems to have gone back and rethought how people use these word processors and want users to be more aware of features that can improve productivity.  I'll try to get some screenshots..

PDC: More info on People Near me

Published on Tuesday, September 13, 2005 By Brad Wardell In PDC 2005

Microsoft's Jed Rose has come to the rescue again with a link to where you can find out more info on "People Near Me"

http://msdn.microsoft.com/windowsvista/connected/#peer

From an outside point of view, one gets the impression that Microsoft decided to go back to the drawing board when it comes to making software that enables people to work together.  They still want people to more easily work together but now with security as part of the basic architecture.

PDC 2005: Microsoft makes it easier to work together

Published on Tuesday, September 13, 2005 By Brad Wardell In WinCustomize News

Microsoft unveiled a demo of a new technology at PDC today.  Called "People Near Me", it lets people share files and session displays (like remote desktop) with minimal hassle.

Anyone who's ever had a friend visit who they want to give a file to probably uses a USB drive or something.  With People Near Me, you would just pop up an MSN IM like window and drop sessions and files to them.

"People Near Me" was demoed and seems useful and yet so obvious that one wonders why this wasn't in there before. In the demo, two Microsoft employees were able to work together quickly without having to set up a bunch of shares. Instead, person A invites Person B who is "near them" into the People Near me applet. Then Person A drags and drops the Power Point app onto the share window and the other user can instantly see what that app is displaying. Then he dragged and dropped the actual PowerPoint file to enable the other user to be able to edit it. Edits on the file were instantly synchronized.

For developers, Indigo may be the "big thing". Anyone who's done network code in Windows XP knows how much of a pain it can be. Indigo seems to make this a much more streamlined experience. One Microsoft keynote speaker said "Developers no longer need to feel like plumbers."

PDC Day 1: It's so big

Published on Tuesday, September 13, 2005 By Brad Wardell In PDC 2005

It's so big.  That's my first impression.  And I know so little.  There's nothing like a developer's conference to make a developer realize how little they know. Holy cow.

So far, the two things I'm most excited by are Indigo and Avalon.  Indigo looks like it'll make working with databases and other applications much less painful. But my knowledge on C# is pretty scampy, I've been doing C++ for so long and I've not beein inclined to do much with C# because I don't like having to require users download 20+ megs in libraries.

But as I listend to the keynotes, it become pretty obvious how I only have a surface knowledge on all these things.  So I've loaded up on some pretty cool sounding sessions:

11:45am FUNL02: WinFX/Win32 SDKs ie7
1:00pm PRS223: Making good SW writing a dynamic compiler
2:45pm TLN303: Mondad monad
4:15pm FUN405: Multithreading dat307: exploiting new capabilities
14-Sep
11am PRS205: Bulding Customizeable apps in .NET PRS317: Avalong Overview
1:45pm PRS315: Avalon Overview
3:15pm DAT310: WinFS
5:00pm PRS416: Direct3D and real-time apps
15-Sep
10:00am FUN412: Five things every Win32 dev should know
11:30am DAT317: Windows Sync Center TLN213: Building Avalon Interfaces
2:15pm DAT320: Building RSS enabled apps

So we'll see how it turns out. Stay tuned.

PDC: Day 1

Published on Monday, September 12, 2005 By Brad Wardell In WinCustomize News

I've arrived in LA for Microsoft's Professional Developer's Conference (PDC).  On the plane, I wrote up my expectations with regards to what I hope to learn from some of the sessions.

I've also put togethre a photo-album that I'll be adding to as I get pictures.  If I can get an FTP site up and going, I hope to put some video up too but time will be tight.

As a developer, there's a ton of things to learn at PDC.  One of my main interests is WinFX which I've put together a quickie primer for.

Tomorrow will be the first day of actual sessions along with the key-note from Bill Gates.  It should be very interesting. Stay tuned!

PowerUser.TV: Episode 6

Published on Monday, September 12, 2005 By Brad Wardell In WinCustomize News
Kristin talks with Tom Chick (www.quartertothree.com), Derek Batting (www.neowin.net) and Brad Wardell (www.wincustomize.com) about the possibility of mining on Mars, the closing of Cyan, developer of the Myst games, and a new study that reveals how much time Americans waste while at work. Other topics include Apple's new product announcements, phone number squatters taking a number that should belong to the Red Cross, and Steve Ballmer's negative reaction to Google stealing Microsoft employees.

PDC goals & expectations

Published on Monday, September 12, 2005 By Brad Wardell In PDC 2005

I'm on my way to PDC.  This is the first time I've gone there. I'm only 34 and yet feel like a bit of an old-fogey in that I'm not as up on the latest .NET techniques as I probably should be.  I'm less a developer these days and more of a technologist.  I want to see what technologies Microsoft is working on and see what is going to be beneficial to our company and our customers and which parts we can take a pass on.

I'm on the plane looking through blogs that I've archived with Blog Navigator and I've enjoyed reading Scoble's in particular.  He works at Microsoft so his rallying up for Microsoft is understandable (just as I tend to be pretty jazzed about Stardock's latest stuff).  Half the "good stuff" apparently is after-hours.  The parties and such.  I'm known enough in the industry to be aware of most of the good parties but not important enough to be necessarily invited to some (such as the PDC "Influencers" party).  Going to a show like this is humbling. I feel like the Comic book guy who is king of his little comic book store but is powerless beyond its confines "I shall return to my store where I dispense insults rather than absorb them..."

Last PDC I sent our lead R&D developer there and he came back with a lot of useful feedback.  At the time, the Longhorn side-bar was a big thing but our developer said it was quite hacky in its implementation.  The side-bar disappeared for awhile and recently resurfaced. Perhaps it's better implemented now.

What I'm going to be interested in learning (and talking to those in the know) is just how far Microsoft intends to take "managed code".  The overall preferred Windows Vista API is called WinFX which is essentially the name of a group of managed code APIs.  Managed code lets traditional developers get a lot done very fast but makes it harder for developers who are doing things that the OS vendor didn't think of to actually do.  Desktop enhancement software requires techniques such as API hooking and message hooking and all kinds of ways to get into a process to extend the base OS feature set.  When a program like WindowBlinds works, it actually gets inside a given process and directs its paint calls to WindowBlinds to take care of it.  In this way, we can extend the feature set of the Windows drawing routines.  But managed code is a layer on top of all those APIs.  You can't really "hook" them.

I'm not so much worried about Microsoft breaking our stuff (Microsoft, nVidia, ATI, Nintendo, Alienware, Good Year, GE, Dell, and countless other large companies use our technologies).  What I want to make sure is that the new goodies in Windows Vista are going to be extensible. And by extensible I mean..actually extensible and not marketing extensible (i.e. marketing extensible is where some marketing guy at Microsoft says how extensible their system is but really what it means is that they allow developers to change the configuration to a number of pre-set definitions). 

For example, could I get into the Explorer process and make use of the new graphical capabilities to have different folders in explorer windows be different sized based on how much "stuff" is in them?  I'm not saying we want to do that, but it's a good litmus test.  On Windows Vista, there are so much more potential to do neat things than there was on Windows XP.  I am not looking for Microsoft to put in APIs that make it trivial to jump in and do things, I just want to make sure it's reasonably possible.  After all, Stardock essentially acts as a free R&D lab for Microsoft anyway (as any long-time user of Object Desktop can tell you).  We're willing to invest in trying cool new things with all the engines but we have to be able to do things that Microsoft hasn't necessarily thought of.  Hence, the need to jump in there and extend (and sometimes replace) painting routines, APIs, etc.

I'm heading there with my Windows XP Thinkpad equipped with the WindowBlinds 5 beta. Amongst its other capabilities, WindowBlinds can do semi-transparent window frames ala Aero -- but on Windows XP.  I know for certain that Microsoft never thought that was possible, especially at the speed we have it running (i.e. on a decent machine it shouldn't affect performance).  So one can imagine the kinds of things that could be possible to do with Windows Vista as long as Microsoft doesn't close the door.  API hooking and getting in process allow developers to gain the same benefits as a developer of an open source OS. 

WinFX API Primer

Published on Sunday, September 11, 2005 By Brad Wardell In PDC 2005

There's so many technologies floating out of Microsoft these days that it's really difficult to fixate on what is and isn't important.  This series of guides is designed to provide you with a nuts and bolts overview of what developers should be paying attention to in Windows Vista.

Since 1994, Microsoft has been pushing a single overall API known as Win32.  Starting with Windows Vista, the new API is WinFX.  That doesn't mean Win32 is going away, it's still there. But WinFX is going to be the one that Microsoft is going to focus most of its attention on for most developers.

.NET

.NET is a rich sets of APIs Microsoft has been making available as a separate download for some time.  .NET 1.1 is the current official release but 2.0 is in beta.  While some will cringe at the comparison, .NET is kind of a much much better implementation of Microsoft's old MFC libraries.  The problem today with .NET is that it requires a separate download.  But in Windows Vista, it'll be part of the OS.  We've used .NET internally and it is very nice.  When used with C# or VB.net, you can create things much faster and much cleaner.  The main downside is that it's managed code which isn't really bad for most developers but if you want to get more low level, you still need Win32.  But very few people write code that wouldn't be better handled by .NET.  If you're a software developer, start learning more about .NET.

AVALON

This is officially called Windows Presentation Foundation.  It's the new graphics subsystem in Windows Vista.  In some ways, it is similar to the various GDI implementations but has a very rich API.  Its functions can be accessed from .NET languages such as C# but it also includes a mark-up language for making visual applications very easily called XAML.  If you plan to create programs that are visual in nature, learn about AVALON.

INDIGO

This is officially called the Windows Communication Foundation.  I can tell you from experience that writing network aware applications can be a real pain in the butt.  INDIGO makes it much easier to create network programs.  If you write code that talks to other computers (over a LAN or the Net) you'll want to learn about INDIGO.

These APIs put together are called WinFX.  The other technologies in Windows Vista are interesting but for most developers, these are the key 3 that you will want to keep an eye on. 

From a developer's point of view, Windows Vista is going to be nice because WinFX is part of the OS.  On Windows XP, we don't tend to make use of .NET, even though it is so nice, because we don't want to require our users to have to download extra "stuff".  Developers who know these technologies will have a significant productivity advantage in developing software for Vista over those who stick to Win32 for general application development.