# Thursday, 09 March 2006
I have been using Vista Build 5308 since it came out a week or so ago, along with running VS2005 with Cider, Expression Interactive Designer (a.k.a.) Sparkle, Win SDK and WinFX.
It has been very interesting.  First, Vista is considerably more interactive than compared to XP or W2K3 Server. What I mean is that I am more efficient on using the OS as it looks like considerable interaction design has occurred in the design phase.  For example, in Vista Windows Explorer for file folder navigation, you will notice a different tree view control and address bar.  The address bar allows you to click on any part of the path in the address which allows you to navigate easier (i.e. fewer mouse clicks).  Given that I do spend (too much) time navigating the file system, this really is a major improvement.  There are many other improvements, which are not the point of this post, other than to say, I think Vista will surprise many people on its usability design, aside from the flash and gas of the graphics.
2nd I have been using Cider (think WinForms Designer but using XAML) and the Win SDK to evaluate WPF.  Of course on Vista, the graphics is outstanding.  My Acer 8204 laptop comes with a pretty high-end video card (ATI  Radeon X1600) with DirectX9 embedded into it, which allows Vista to fully utilize the GPU.  Vista graphics look awesome, aside from the Aero Glass (i.e. opacity) effects and the window fly-ins.  The animation and 3D manipulation of objects is ultra smooth and sharp at any level of resizing.
VS2005 Cider is aimed at the developer (or coder or programmer or software engineer, or craftsman, or whatever moniker you hang by).  You spend the same time on the design surface as you do traditionally do in the WinForms 2.0 designer surface, but mostly you spend your time in both XAML and C#.  Contrasting this is Sparkle which is really aimed at designers.  Btw, the March CTP of Sparkle was just released.  The difference is that you spend more time in the design surface than writing code (and XAML).  In fact, another one of Steves blogs points out, Sparkle, development teams, and what no code means.
Now this raises an interesting conundrum which you can read Clemens excellent post about Visual Studio Overload And The Specialization Gamble.  Clemens does an excellent job explaining what the conundrum is in trying to learn too many languages and tools, The reason is very simple: Capacity. Theres a limit to how much information an individual can process  I totally agree and I described this phenomenon in my previous post as variability instead of capacity.  I do believe that they are very much interrelated or synonymous with each other, in fact, maybe we are saying the same thing but differently.
The conundrum is what tool I use (Sparkle or Cider) given the limited amount of time I have to play with this, which amounts to an hour or so per day on my ferry commute to and from Vancouver.  As someone who grew up on Visual Studio, I am immediately inclined to stick with it.  However, having played in both environments, I find I can do way more quicker in Sparkle, once I get past how different it is than Visual Studio.  Sure, Sparkle has an IDE, and while not as complicated as VS2005, it does have a funny tool palette with what looks like a dozen objects from Adobe Illustrator or Photoshop which means I am starting from scratch with these tools, not only the usage, but also because they are more graphic art type tools, in which I have no talent for or formal training in.
Not to complicate matters, but there are other XAML tools available, most notably is Mobiform Aurora Designer in which I got a demo of about a month ago.  It certainly is a candidate, but where to find the time to fully qualify?  Finally for building designers, there is Microsofts excellent Domain Specific Language (DSL) Toolkit that code generates designers, but at the moment, can only be hosted in Visual Studio and does not do XAML.  Heck, you can even hand code craft your custom designer in .NET 2.0 Framework (thanks BarryV!).
I have a vision for my Story Board Designer application.  All the 3D objects and animation interaction plays nicely in my head, but how many years is it going to take to program into any one of these tools?  And which one would that be?
Maybe I will ponder that over a few (more) pints of Guinness...
Thursday, 09 March 2006 17:03:57 (Pacific Standard Time, UTC-08:00)  #    Comments [0]
# Sunday, 26 February 2006
I live in a small town of about 5,000 people on the Sunshine Coast in BC, Canada.  Meeting my neighbors Grandpa was an interesting experience.  Grandpa grew up in the Northern part of the Sunshine Coast and has lived here most of his life.  I got to know him a bit when we were launching fireworks (its big here!) last Halloween with our families.
Over 4 months I would have occasion to bump into Grandpa on the ferry as I take a 40 minute ferry ride into Vancouver everyday, as does anyone that needs to make it to Vancouver from the Sunshine Coast.
Yesterday, I was sitting at the local Tim Hortons having a coffee and working on my new Acer 8204 laptop (which I purchased specifically for WinFX, Vista development), and I met Grandpa after I had been sitting for an hour, long enough for me to disappear completely into the computer.  He said, Are you actually doing something or trying to look intelligent.  I said I was coding.  He said, What do you do for a living.  "I write software".  He said, that he used to program assembler way back when.  He said, "if just one letter or number is off, it doesnt work!.  I said nothing has changed.
First, I was a bit taken back that he could even remember assembler, I cant, and he does not even remotely look the type.  Second, I was surprised by my own comment of nothing has changed since assembler.  Now really, we have come a long way since assembler, see Raising the Level of Abstraction .  But otoh, it is still true today one character or number is off in your source code that you are hand writing and it wont compile.  It is much easier to find the compile error today, I suppose.  And with Intellisense, how can you miss? (ha ha).  The point is, the computer is excellent at repeating precision instructions and we humans are not.  So why not get the computer to do the work of writing precision code based on a higher-level abstraction (i.e. tool) where we don't concern ourselves with hand writing low level code.
This makes me wonder about how far programming languages have come over the last twenty five years.  Personally, I am a Smalltalk fan.  The concept of everything is an object and message passing made much more sense to me than C.  The fact that objects in Smalltalk could do only three things made it easy for my brain to understand what was going on.  However, from an employment perspective, I chose and have been working with Microsoft technologies since 91 when VB1 was first introduced.
The only language that has come my way that makes me as excited like Smalltalk did is XAML.  I have discussed a bit about XAML in my previous posts.  Here is a snippet from the WinFX SDK help file for Build 5308:
"WinFX application development raises abstraction to the level of a declarative programming model. To facilitate programming for this model a new XML-based declarative programming language, XAML, has been developed.  XAML is based on Extensible Markup Language (XML) and enables developers to specify a hierarchy of common language runtime (CLR) objects with a set of properties and logic"
"XAML is the preferred way to create a UI in the WinFX programming model because it provides a way to separate UI definition from logic, and enables you to integrate code by using code-behind files that are joined to the markup via partial class definitions.  XAML enables you to create a UI entirely without using code. You can create quite elaborate documents or pages entirely in markup using controls, text, images, shapes and so forth."
I am impressed with XAML.  It is early game, but GDI has done well for 20 years, Microsoft is betting on XAML, WPF, WinFX and Vista as a worthy successor to GDI and hoping it will last as long.  For the computer user, the next generation XAML based applications will be like when HTML first hit the web, (then FLASH), where everyone, all of a sudden, is a web site designer :-)  However, what shakes out is the next level of computing interactions based on these Microsoft technologies.
However, to make life a bit confusing, XAML is but one of the 5 ways, just using Microsoft Technologies to develop user interfaces.  Tim Sneath has an interesting angle on explaining these five UI technologies called, "Windows Forms, ASP.NET/Atlas, DirectX, WPF, Win32 - that's five UI technologies to choose between. How do I decide?"
Having read his article I am satisfied that using XAML and WPF to develop my Storyboard Designer Application is the right choice.  Once I have developed something, I can say to Grandpa that we dont have to worry about each individual character or number anymore, thats what the software tool does!
Sunday, 26 February 2006 00:57:46 (Pacific Standard Time, UTC-08:00)  #    Comments [0]
© Copyright 2010 Mitch Barnett - Software Industrialization is the computerization of software design and function.

newtelligence dasBlog 2.2.8279.16125  Theme design by Bryan Bell
Feed your aggregator (RSS 2.0)   | Page rendered at Saturday, 07 August 2010 05:11:35 (Pacific Daylight Time, UTC-07:00)