May 21, 2008
A couple of recent articles covering the relationship between Windows Vista and developers are worth reading... and commenting.
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.
posted by
marcocantu @ 6:29PM | 11 Comments
[0 Pending]
11 Comments
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
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.