|
Musings about software design, coding practices and the industry in general.
Posts
Lutz is at it again. He's pointed me to a very cool tool that allows you to disassemble BAML files into the correct XAML. Check it out.
Jim and Richard are grapling with the naming of the adorner placement APIs in Cider. Here's a link to Jim's blog. Check it out, and let Jim know your favorite name.
We're having some debate about what rules we should use when naming controls in Cider.
I got some good feedback about our proposal for adding a design mode property to WPF. That feedback, combined with some help from a few architects has allowed us to change our story.
See how Cider and Sparkle are adding (and hopefully improving) the DesignMode property that has been available to Windows Forms developers.
Check out the new developer community site for .NET 3.0: NetFX3.com.
How does Cider handle user input and display UI and adornments to the end user? Cider builds upon patterns we designed for Windows Forms to create a simple and flexible mechanism for handling all sorts of UI interactions.
It's time for my second post on Cider's design time architecture. Last time I introduced the editing context and described how services and context items work. It's now time to talk about how we're going to do extensibility in Cider.
The December CTP of WinFX is ready along with its associated SDKs and Visual Studio templates. As an added holiday treat we've rolled in a very early version of the Cider designer in it for you!
This is the first of a series of posts about the architecture of the Cider designer. Cider isn’t going to be shipping for a long time, so this isn’t information you can immediately put to use. Actually, I’m hoping that by publishing our plans very early like this I can get feedback about what you like and what you don’t like. That way I can get the stuff you don’t like out of the product before you see it. I’m going to roll this out by first describing to you how everything works, and then I’ll get into what the “everything” part is.
I've begun reading Charles Petzold's blog and his post of an old English poem mentioning Avalon made me think back to our choice of the code name "Cider" for the Avalon designer we are producing. Where did Cider come from? It is surprising how much time you can spend coming up with a code name...
I'm usually late to the party, but I eventually get there. This page is devoted to all things PDC.
ChuckJ is blogging! Chuck is one of the founding fathers of Borland's Delphi and has recently joined the ranks of Microsoft. Check out his blog at www.removingalldoubt.com.
A while ago I described why the Visual Studio designer's can't work with abstract classes. I also hinted that there is a way in Whidbey to get this to work. Well, the time has come for me to finally get off my duff and describe how to do it.
System.Design is an assembly that contains design-time classes such as ControlDesigner. The System assembly also contains a System.ComponentModel.Design namespace that contains design time classes. Even System.Windows.Forms contains a System.Windows.Forms.Design namespace. Was Microsoft just incredibly lazy here, randomly spreading classes wherever was convenient, or was there an actual purpose to this madness? And, if there was a purpose, what should you consider when writing your own controls with their own design time logic?
Lots of people are excited about the WinFX downlevel announcement. I'm excited too, but the more I think about it the fewer people I think it impacts.
The Visual Studio designer cannot design abstract base classes. Did Microsoft completely forget about object oriented design methodologies? Is this a ploy to get you to upgrade to a newer version of Visual Studio? No, this is actually just a side-effect that falls out from how the Visual Studio designer works.
Ever need to use .NET's PInvoke mechanism to invoke APIs? Ever been frustrated that Microsoft hasn't provide all of the APIs for you? Then this site is for you.
Let's peer into the grubby world of services, sites, components and containers. Find out how to use these concepts in your own applications.
One bad aspect of my job is that I always see the bad stuff. I’m always on the lookout for what we did wrong, what we didn’t do yet, and what we could do better. That kind of environment makes it hard to remember the good stuff we’ve already produced. Last weekend brought a smile to my face, however.
Is the future of application development just assembling high-level building blocks? Or will we forever be writing fresh code for everything? Scoble's post made me think.
Generics are a new feature in the .NET Framework that are at first glance similar to C++ templates. But, they run much deeper.
Writing a software API for the masses is full of conflicting puzzles to solve.
Building great software is an enginerring problem, not an art project. But too much of software development is still a shoot-from-the-hip form of art.
I love my PocketPC. I love my cell phone. I want the two fused together using Today's technology.
|
Channels
|