is win32 programming dead?

L

leibnizster

hello,

a few years ago I started learning C#/.net. I noticed that it wasn't
very fast but it was easy to learn and fast to program. But recently I
saw some tests which proced .NET to be rather slow compared to native
windows programming.

What I'm asking is:
1) is it worth it to learn win32 programming anymore?
2) is .NET definitely the future of Windows programming? I heard that
this is going to be the main programming platform in Vista

Thank you
 
R

Rob Perkins

hello,

a few years ago I started learning C#/.net. I noticed that it wasn't
very fast but it was easy to learn and fast to program. But recently I
saw some tests which proced .NET to be rather slow compared to native
windows programming.

Depends on the tests and applications.
What I'm asking is:
1) is it worth it to learn win32 programming anymore?

For certain narrower-than-before applications, yes.
2) is .NET definitely the future of Windows programming? I heard that
this is going to be the main programming platform in Vista

Probably true, again, for most applications. But for device drivers,
system-level stuff, etc, you're gonna need to keep your C.

Rob
 
M

Michael Nemtsev

Hello leibnizster,

l> a few years ago I started learning C#/.net. I noticed that it wasn't
l> very fast but it was easy to learn and fast to program. But recently
l> I saw some tests which proced .NET to be rather slow compared to
l> native windows programming.

it's for lowlevel programming. Such areas as graphics, drivers, audio/video
processing are best with native code

l> What I'm asking is:
l> 1) is it worth it to learn win32 programming anymore?

it's worth to know how to use it. I see no reason to deep into it if you
are not going to work in the areas I've described early

l> 2) is .NET definitely the future of Windows programming? I heard that
l> this is going to be the main programming platform in Vista

It's main for windows now, but not on physical layer :) for vista .net is
a main platform and API will work in specific boundaries (like DOS now)

---
WBR,
Michael Nemtsev :: blog: http://spaces.msn.com/laflour

"At times one remains faithful to a cause only because its opponents do not
cease to be insipid." (c) Friedrich Nietzsche
 
W

William Stacey [MVP]

| From that you'd almost get the impression that .NET programming is
| dead... or will be in the near future.

Just use common sense. Look at the amount of managed code that comes out
just from MS and you will agree the answer is no. That article came to
totally wrong conclusions. Heck, they even have research projects based on
a totally managed OS and managed drivers.
 
4

42

| From that you'd almost get the impression that .NET programming is
| dead... or will be in the near future.

Just use common sense. Look at the amount of managed code that comes out
just from MS and you will agree the answer is no.

I'd agree MS is still very active with .net. But the article does raise
an interesting question.

The issue the article raises is that *despite* the piles of managed code
coming out of microsoft, practically none of it is part of any project
that generates revenue.
That article came to
totally wrong conclusions.

I hope so. I think .NET is one of the best things to come out of MS in a
long time. My biggest complaint is that its not cross platform - I want
..net to run on OSX and Linux without having to wait for the opensource
community to implement the specs and reverse engineer and rebuild, and
debug, thousands of API functions. :)
Heck, they even have research projects based on
a totally managed OS and managed drivers.

And yet, according to him, none of it ended up in Vista at any level.

You must agree that seems very odd?!

I'd have expected the new versions of mmc panels, wizards, the freebie
utilities and crap, and what not to largely all be running on .net. Not
to mention at least a few of the major apps like Internet Explorer,
Windows Explorer, Windows Update, Windows Media Player...

The fact that it doesn't is almost disquieting -- that would be like
Sun's Solaris OS coming with Java but not using it. Or that Apple's OS X
coing with quicktime but not using it. (In both cases the OSes make
extensive use of the respective technology.)
 
N

Nick Hounsome

42 said:
I'd agree MS is still very active with .net. But the article does raise
an interesting question.

The issue the article raises is that *despite* the piles of managed code
coming out of microsoft, practically none of it is part of any project
that generates revenue.


I hope so. I think .NET is one of the best things to come out of MS in a
long time. My biggest complaint is that its not cross platform - I want
.net to run on OSX and Linux without having to wait for the opensource
community to implement the specs and reverse engineer and rebuild, and
debug, thousands of API functions. :)


And yet, according to him, none of it ended up in Vista at any level.

You must agree that seems very odd?!

I'd have expected the new versions of mmc panels, wizards, the freebie
utilities and crap, and what not to largely all be running on .net. Not
to mention at least a few of the major apps like Internet Explorer,
Windows Explorer, Windows Update, Windows Media Player...

The fact that it doesn't is almost disquieting -- that would be like
Sun's Solaris OS coming with Java but not using it. Or that Apple's OS X
coing with quicktime but not using it. (In both cases the OSes make
extensive use of the respective technology.)

It sounds very much like a typical MS spoiler - their only real goal was to
dissuade people from using java as a multi-platform language/runtime - not
to actually use it themselves.

I'm very dissapointed as I used to find windows such a mess that I only did
Unix/linux work - C# and .NET changed that and made windows a pleasant
platform to program on.
 
G

Guest

It's interesting that Grimes would come to the conclusion that he did. He
based his conclusion on the fact that there didn't seem to be alot of managed
code in the system dll's. But to me, it would seem that's a bit like saying
back in the early 90's that Microsoft was dropping support for VB because
there wasn't a lot of vb code in Win95.

We all know that managed code makes life for application developers better.
Some might even argue that managed code and the associated tools make life
better for application developers than VB and VB controls did. It would
certainly surprise me if msft backs away from a strategy of delivering a
great application development environment. It would be as monumentally stupid
as backing away from VB back in the early 90's. It just wouldn't make sense.
 
W

William Stacey [MVP]

| The issue the article raises is that *despite* the piles of managed code
| coming out of microsoft, practically none of it is part of any project
| that generates revenue.

VS 2005, SQL 2005, Exchange 12, BizTalk, etc. probably make some coin.

| I hope so. I think .NET is one of the best things to come out of MS in a
| long time.

Agreed.

| My biggest complaint is that its not cross platform - I want
| .net to run on OSX and Linux without having to wait for the opensource
| community to implement the specs and reverse engineer and rebuild, and
| debug, thousands of API functions. :)

Porting to every OS would be hard to say the least for any company. You
point out one issue with opensource however. No single control point to
drive products/ports like this. You get a lot of start and stop as people
and interest moves around - so ya kinda get what you pay for unfortunately.

| And yet, according to him, none of it ended up in Vista at any level.
| You must agree that seems very odd?!

It is until you think about it. Taking dependencies on a version of .Net
would be hard for an OS. Not because they could not do it, but .Net changes
and will change (i.e. 1.0, 1.1, 2.0, 3.0, etc.). And people are free to
remove 1.1 if they want which would break any OS stuff that depended on it.
For example, you don't want NotePad to stop working because the user decided
to remove fx 1.1. They could ~maybe force some hidden system version and
use that, but you start to see some of the issues involved. Not sure what a
solution would be. Any ideas?
 
L

Lau Lei Cheong

But as far as I remember, WinXP has .NET v1.0 installed and Win2003 has
v1.1. Why not let the system use these versions?

As far as I remember, dos 6.0's xcopy won't work in Win95, so it's sensible
to have OS utilities stick with things come with the OS?

And porting the whole system's utilities is good QC exercise to make new
version of .NET framework even better.
 
W

William Stacey [MVP]

| But as far as I remember, WinXP has .NET v1.0 installed and Win2003 has
| v1.1. Why not let the system use these versions?

You sure? I don't recall seeing v1.0 in my XP install, but maybe I missed
it.

| As far as I remember, dos 6.0's xcopy won't work in Win95, so it's
sensible
| to have OS utilities stick with things come with the OS?
|
| And porting the whole system's utilities is good QC exercise to make new
| version of .NET framework even better.

How do you handle the dependency issue? Should they lock down 1.1 (for
example) so you can't Add/Remove Programs on it? Maybe.
BTW - I like the idea of more managed code for OS UI stuff. Just wonder how
to do it.
 
N

Nick Hounsome

brians said:
It's interesting that Grimes would come to the conclusion that he did. He
based his conclusion on the fact that there didn't seem to be alot of
managed
code in the system dll's. But to me, it would seem that's a bit like
saying
back in the early 90's that Microsoft was dropping support for VB because
there wasn't a lot of vb code in Win95.

We all know that managed code makes life for application developers
better.
Some might even argue that managed code and the associated tools make life
better for application developers than VB and VB controls did. It would
certainly surprise me if msft backs away from a strategy of delivering a
great application development environment. It would be as monumentally
stupid
as backing away from VB back in the early 90's. It just wouldn't make
sense.

It's not really the same - they made claims about basing a lot of core
functionality on .NET - those claims were never made for VB
 
N

Nick Hounsome

William Stacey said:
| The issue the article raises is that *despite* the piles of managed code
| coming out of microsoft, practically none of it is part of any project
| that generates revenue.

VS 2005, SQL 2005, Exchange 12, BizTalk, etc. probably make some coin.

I think you will find that they only host it - they're not written in it.
| I hope so. I think .NET is one of the best things to come out of MS in a
| long time.

Agreed.

| My biggest complaint is that its not cross platform - I want
| .net to run on OSX and Linux without having to wait for the opensource
| community to implement the specs and reverse engineer and rebuild, and
| debug, thousands of API functions. :)

Porting to every OS would be hard to say the least for any company. You
point out one issue with opensource however. No single control point to
drive products/ports like this. You get a lot of start and stop as people
and interest moves around - so ya kinda get what you pay for
unfortunately.

Java manages.

That is why I frequently find web pages downloading java applets but not
..NET ones.
| And yet, according to him, none of it ended up in Vista at any level.
| You must agree that seems very odd?!

It is until you think about it. Taking dependencies on a version of .Net
would be hard for an OS. Not because they could not do it, but .Net
changes
and will change (i.e. 1.0, 1.1, 2.0, 3.0, etc.). And people are free to
remove 1.1 if they want which would break any OS stuff that depended on
it.
For example, you don't want NotePad to stop working because the user
decided
to remove fx 1.1. They could ~maybe force some hidden system version and
use that, but you start to see some of the issues involved. Not sure what
a
solution would be. Any ideas?

Firstly uninstalling a version of the framework would be no worse than
removing some system dlls - the only difference is that it is easier to do
but that could be fixed.

Secondly one of the main plus points of .NET is the support for side by side
versioning.

Thirdly all the MS apps would almost certainly be converted to binaries to
improve startup speed which would or could eliminate any dependency problem
with installed frameworks.
 
N

Nick Hounsome

William Stacey said:
| But as far as I remember, WinXP has .NET v1.0 installed and Win2003 has
| v1.1. Why not let the system use these versions?

You sure? I don't recall seeing v1.0 in my XP install, but maybe I missed
it.

| As far as I remember, dos 6.0's xcopy won't work in Win95, so it's
sensible
| to have OS utilities stick with things come with the OS?
|
| And porting the whole system's utilities is good QC exercise to make new
| version of .NET framework even better.

How do you handle the dependency issue? Should they lock down 1.1 (for
example) so you can't Add/Remove Programs on it? Maybe.
BTW - I like the idea of more managed code for OS UI stuff. Just wonder
how
to do it.

You need to design it in from the start to minimize OS dependencies as in
Java Swing and gtk
 
P

Patrice

I still have to give this a close look at this paper but I'm not really
convinced that checking which type of files the OS provides is a valid
approach (sorry if I got a wrong idea by a quick read).

If you see .NET as a way to abstract the API from the underlying gory
details (and not something on which each and every component should be
necessarily built upon), the approach would be rather to see which new and
existing APIs are exposed to the Managed world in Vista...
 
4

42

| The issue the article raises is that *despite* the piles of managed code
| coming out of microsoft, practically none of it is part of any project
| that generates revenue.

VS 2005

I'm not sure you can count the .net developement tool. (And I was under
the impression MS runs its tools division at a loss; justified by
increasing the number of happy developers will drive server sales --
but I could be mistaken.

SQL 2005

Only for Reporting Services. I'd have sort of like to see some of the
management tools in .net too; but obviously the db engine itself should
be native. Still, I think this counts.

http://www.microsoft.com/sql/editions/enterprise/sysreqs.mspx


Exchange 12

Does't mention .net:

http://www.microsoft.com/exchange/evaluation/sysreqs/2003.mspx

BizTalk

Is it actually in .NET itself or is this just like saying IIS requires
the .NET framework to host asp.net applications. But even if it did; its
sort of like Visual Studio. in that its whole "raison d'etre" is to
support -other- .net applications; it doesn't really have a purpose
without .net.

----
| I hope so. I think .NET is one of the best things to come out of MS in a
| long time.

Agreed.

| My biggest complaint is that its not cross platform - I want
| .net to run on OSX and Linux without having to wait for the opensource
| community to implement the specs and reverse engineer and rebuild, and
| debug, thousands of API functions. :)

Porting to every OS would be hard to say the least for any company. You
point out one issue with opensource however. No single control point to
drive products/ports like this. You get a lot of start and stop as people
and interest moves around - so ya kinda get what you pay for unfortunately.

Microsoft could do a lot more to help though, at no real cost to them.
Although I understand why they don't. They want .net to sell microsoft
servers, not mac/linux ones. That's the problem with vertical
integration, I suppose.
| And yet, according to him, none of it ended up in Vista at any level.
| You must agree that seems very odd?!

It is until you think about it. Taking dependencies on a version of .Net
would be hard for an OS. Not because they could not do it, but .Net changes
and will change (i.e. 1.0, 1.1, 2.0, 3.0, etc.). And people are free to
remove 1.1 if they want which would break any OS stuff that depended on it.
For example, you don't want NotePad to stop working because the user decided
to remove fx 1.1. They could ~maybe force some hidden system version and
use that, but you start to see some of the issues involved. Not sure what a
solution would be. Any ideas?

Bundle it as part of Vista. Don't make a separate install/uninstall.

Its really no different than other OS dependancies, actually its
*better* than most other OS dependancies thanks to side by side
versioning. If the user wants to update to framework 3.0 version 1.1 and
OS components that depend on that will chug along unaffected.
 
W

William Stacey [MVP]

| > VS 2005, SQL 2005, Exchange 12, BizTalk, etc. probably make some coin.
|
| I think you will find that they only host it - they're not written in it.

SQL UI is .Net, Exchange UI is .Net and MSH which is c#, BizTalk is c#, ASP
2.0 is c#. IIRC, WPF, WCF, and WWF are all .Net.

| That is why I frequently find web pages downloading java applets but not
| .NET ones.

Applications! These are not OS's. There is a big difference I think. One
is a non-moving platform you need to run the whole system, the other is an
application framework ontop of the OS.

However, I would like to see it also.
 
N

Nick Hounsome

William Stacey said:
| > VS 2005, SQL 2005, Exchange 12, BizTalk, etc. probably make some coin.
|
| I think you will find that they only host it - they're not written in
it.

SQL UI is .Net, Exchange UI is .Net and MSH which is c#, BizTalk is c#,
ASP
2.0 is c#. IIRC, WPF, WCF, and WWF are all .Net.

The UIs are a minor part of SQL and Exchange.

ASP.NET and the associated web stuff is the one big area but that is just
the exception that proves the rule: MS had to do ASP.NET et al because
otherwise JSP would rule the web virtually unchallenged.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top