May 21, 2008
Vista and Developers
Over the last two days, I read a couple of articles covering the relationship between Windows Vista and developers. The first is the result of an Evans Data poll, summarized here by Computer World. The (apparent) result is that "8% of the 380 developers surveyed are writing applications for Vista, while 49% are still writing applications primarily for XP". I say apparent because it is not clear to me what it really means to write applications for either Vista or XP. Are we talking Windows API here? Or are we talking about using a specific version of the .NET framework?
The second article makes it somewhat clear people seems to talk about the latter. In the PC World article "Coders tell why they are avoiding Vista" a few developers (including Julian Bucknall, that many of you know for his Delphi books and for his current role at Developer Express) tend to equate WinForms development with XP development and WPF development with Vista development. Beg your pardon, but I tend to disagree!
Whether you like them or not, most of the new features in Vista, from Aero graphics to the new TaskDialogs, from the brand new Desktop Manager (that changes Windows painting from the first time ever) to the resource protection and dreaded UAC, are totally unrelated with and not supported by Windows Presentation Foundation. This is a fact, not an opinion.
Microsoft was so hard at work pushing WPF and other .NET technologies, that they almost forgot about supporting Vista native features. It looks almost like the Vista team and the .NET team never talked. In fact, Vista comes with no prepackaged .NET applications, with the only exception of the Media Center (in the editions of Vista sporting it, of course).
Where were Microsoft development tools focused on Vista when the OS was launched? The C++ MFC classes were updated with a long delay, WinForms specific support for Vista is minimal... the only exception is the Delphi VCL, which has a good (not perfect, I know) support for Vista. What's nice is that most VCL solution will make your applications still backwards compatible with XP, while supporting some of the specific Vista features at the same time. This should have been Microsoft paths as well, but it apparently wasn't.
The PC World article also cover Microsoft graphic push, saying it has little to do with business applications. Certainly in the light of Vista's problems, the quote "More attractive apps are more user-friendly apps, says Microsoft, and that translates into increased user productivity" seems a little off place. The same graphics theme is the focus of the non-tech thread covering the article, which is were I noticed it.
11 Comments
Vista and Developers
I work for an engineering company that sells hardware boxes. Engineers that install these hardware boxes need my Windows tools to set them up. The company makes money selling hardware, not software. What I do is a necessary cost and constantly modifying perfectly good tools so they play ball with Microsoft's latest inspiration is money down the drain. This is a common dilemma in the engineering world. For this reason I use Delphi Win32 D2007 and probably shall for quite some time. The move from the DOS Turbo/Borland Pascals to Delphi went remarkably smoothly and I hope this continues (altho' simple expedients, like only buying libraries with source, or sticking to .INI files instead of using the registry, helped a lot). When Microsoft translates its Office suite to .Net, we will know at least those core parts of the runtime will not change (much) over the long-term. Until I have that assurance, I shall continue to write to the same interface Microsoft's crown jewels run on.Comment by delfi phan on May 22, 12:18
Vista and Developers
"It is time to use the new MS technologies such as ADO.NET Entity Framework (+ LINQ to Entities), ADO.NET Data Services (Astoria), Synchronization Services and so on" Oh yes. Until MS decides that POA.PEP is better than ADO.NET, LINR is better than LINQ and of course you have to rewrite everything and buy a lot of new MS software...Comment by Luigi D. Sandon on May 22, 14:38
Vista and Developers
Some years ago, I asked a Microsoft Software Architect about their plans to migrate Office to .Net. His answer was "Why would we ever do that? There is no business case for doing that." So I agree with delfi phan; so long as the Office team does not see any compelling reason to move to move their existing software .Net, why would anyone outside of Microsoft feel otherwise. Should we ever conclude our customers long for more "bling" on the user interface, the Win32 API offers ample opportunity to add this (what do you think WPF uses?) VCL and third-party components can be used without having to completely rewrite existing forms. Similarly, as long as the majority of customers using our software is using it on Windows XP, why would we develop for Vista? The only thing we do is make sure it runs on Vista as well as XP.Comment by Victor van Uitert [] on May 22, 15:19
Vista and Developers
"Oh yes. Until MS decides that POA.PEP is better than ADO.NET, LINR is better than LINQ and of course you have to rewrite everything and buy a lot of new MS software..." where? When? .NET is not a Visual Basic. It is a new platform of Microsoft instead of Win32. Moreover, Delphi days at Microsoft :): http://www.microsoft.com/hun/msdnszakmainap/080602/ Otherwise, I have some friends who are working at Microsoft now and there are very serious plans, for example: www.livemesh.com (it is a beautiful plan). In addition, there are .NET APIs for Live services!Comment by daywalker on May 22, 16:58
Vista and Developers
@daywalker: perhaps you could highlight the relevant part in the Delphi Days at Microsoft page; my Hungarian stops at egészségedre. Not wanting to hurt your feelings here, but I suspect you may be somewhat young or perhaps not have had much real-world project experience yet. It will come. Once you have swallowed waves of industry hype (and not only from Microsoft and Borland/CodeGear), then you, too, will attain a healthy level of self-preserving scepticism and will learn to adjust your coding practices accordingly.Comment by delfi phan on May 22, 17:41
Vista and Developers
Are you kidding? Of course, I also understand your feelings but these are facts. On Microsoft platform there isn't another solution and I believe in Microsoft's innovation. In my opinion, this is healthful. "I suspect you may be somewhat young" - Indeed, but it is a bad reason. I've been working as developer at our firm for 7 years. So I'm not a beginner. In fact, at the moment we are working on our own partner management with .NET 3.5 and Visual Studio. More details: www.partnerinfo.EU This is the real World! :)Comment by daywalker on May 23, 10:56
Vista and Developers
.NET is an abstraction. It adds convenience. But it is the real world only for as long as Microsoft chooses it to be. The true real world is the Windows API (and the processor native code). Everything relies on it, even .NET. Microsoft cannot mess with it, as 3 previous posters have made clear. Not intending this to become a flaming war, so I promise this is my last posting on this topic.Comment by delfi phan on May 23, 17:05
Vista and Developers
Debating about WinForms/Win32 vs. WPF is silly. Anyone that's been in the programming game more than a few years knows that abstractions come and go as well that multiple abstractions/frameworks are almost always around longer than most people would like. Using WPF vs. WinForms vs. Win32 has *nothing* to do with developing for Vista. Developing for Vista means following application guidelines for where files are installed, including the proper manifests, proper application icons, proper fonts, an understanding of privileges, etc. My biggest issues are the developers that aren't even trying to make their applications Vista-compatible, especially when a lot of the things that would make them compatible are trival. For example the next developer that stores application data in the same folder as the exe should get smacked around. Or what about applications that always assume Admin privileges? XP let coders become very, very lazy.Comment by Shawn Oster [http://blog.enginefour.com] on May 28, 21:32
Vista and Developers
@Shawn: "For example the next developer that stores application data in the same folder as the exe should get smacked around." Allow me to disagree. I think it is a basic courtesy to users to permit them to run their PC how they see fit. It is a "Personal Computer", after all. If at all possible, I supply single .exe programs that users install into a directory of their choosing. How many PCs have multiple users, for goodness sake? On the contrary, many users own multiple PCs! It annoys me when I install a demo version of a program, only to watch helplessly as it installs all manner of runtimes, dlls into the system directory, registry entries, services, live updates, links into every conceivable corner, etc., and not know what it will leave lying around when I remove it again. Lazy? Our company employs people that do nothing else but build and configure install programs for our products. I have yet to meet a user that fully understand what is happening on her/his PC anymore. I sure don't, and I'm a programmer of over 20 year's experience on Microsoft OSs.Comment by James Brozier on June 7, 13:21
Vista and Developers
It's very simple. Vista right now is worse system, than XP because of MS doesn't care about real people and companies. They just do business. The worst thing, IMHO, is that Vista doesn't have backward compatibility. I have Vista Ultimate Edition. My own experience: 1. Our clients lost some medical data (tests) about their patients because MS desided not to let the users to write to Program Files. Instead they put these data automatically to Virtual Store. But they let to read the data from Program Files. So we got 2 copies of the data. And we didn't see the problem for a while. MS informed on they site that they just did it to make developers to develop "right" programs. They promised to swith off this rule in a year when developers would be ready. 2. After installation of SP1 our programs stopped working. They just don't start up. These programs work on different versions starting with Windows 98 and up to XP. The programs have up to several hundreds thousands lines of the code, including forms and conditional compilation. I found out that is something with the data (probably ADO). 3. The behavior of the system constanly changes up to MS. It's just unreliable. 4. MS requires different drivers for Vista. For example, during installation of Bluetooth drivers for external device it has two different options for XP and previous versions and for Vista explicitly (the user supposed to choose).Comment by Dmitry on July 17, 23:54
Post Your Comment
Click here for posting your feedback to this blog.
There are currently 0 pending (unapproved) messages.



Vista and Developers
It is very nice but Windows Presentation Foundation is the future of Microsoft applications such as Silverlight 2.0 (!= Flash), XBAP (XAML Browser Application) and WPF Rich Client Applications. VCL and WinForms are out of date. Why? Microsoft is working on the Acropolis project (WPF) now and will give to the developers modern design patterns for WPF. But, for example these aren't in VCL: 1. Templating - ControlTemplate - DataTemplate - DataTemplateSelector - etc. 2. WPF "XAML" Data Binding != VCL DBControls != WinForms Data Binding 3. Command pattern (!= VCL TAction) It is worth reading this article: http://www.microsoft.com/belux/msdn/nl/community/colum ns/jdruyts/wpf_commandpattern.mspx In addition, designers could work with MS Expression products (without developers). It is time to use the new MS technologies such as ADO.NET Entity Framework (+ LINQ to Entities), ADO.NET Data Services (Astoria), Synchronization Services and so on. Microsoft .NET is the best solution if someone want to develop for Windows. For example, Delphi for .NET was a good step... but without .NET 3.5? Of course, I understand the differents between companies. Otherwise, I like Delphi and Visual Studio too.Comment by daywalker on May 22, 01:56