471,339 Members | 1,258 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,339 software developers and data experts.

"How Microsoft Lost the API War"


http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET,
in several language flavors, and don't get too attached to any of that,
because we're making Avalon, you see, which will only run on the newest
Microsoft operating system, which nobody will have for a loooong time.
And personally I still haven't had time to learn .NET very deeply, and
we haven't ported Fog Creek's two applications from classic ASP and
Visual Basic 6.0 to .NET because there's no return on investment for us.
None. It's just Fire and Motion as far as I'm concerned: Microsoft would
love for me to stop adding new features to our bug tracking software and
content management software and instead waste a few months porting it to
another programming environment, something which will not benefit a
single customer and therefore will not gain us one additional sale, and
therefore which is a complete waste of several months, which is great
for Microsoft, because they have content management software and bug
tracking software, too, so they'd like nothing better than for me to
waste time spinning cycles catching up with the flavor du jour, and then
waste another year or two doing an Avalon version, too, while they add
features to their own competitive software. Riiiight."
Aug 18 '05 #1
20 2531
Do you feel better? Get a hobby because you've got too much free time on
your hands.
"John Bailo" <ja*****@texeme.com> wrote in message
news:qM*****************************************@s peakeasy.net...

http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET, in
several language flavors, and don't get too attached to any of that,
because we're making Avalon, you see, which will only run on the newest
Microsoft operating system, which nobody will have for a loooong time. And
personally I still haven't had time to learn .NET very deeply, and we
haven't ported Fog Creek's two applications from classic ASP and Visual
Basic 6.0 to .NET because there's no return on investment for us. None.
It's just Fire and Motion as far as I'm concerned: Microsoft would love
for me to stop adding new features to our bug tracking software and
content management software and instead waste a few months porting it to
another programming environment, something which will not benefit a single
customer and therefore will not gain us one additional sale, and therefore
which is a complete waste of several months, which is great for Microsoft,
because they have content management software and bug tracking software,
too, so they'd like nothing better than for me to waste time spinning
cycles catching up with the flavor du jour, and then waste another year or
two doing an Avalon version, too, while they add features to their own
competitive software. Riiiight."

Aug 18 '05 #2
John Bailo poked his little head through the XP firewall and said:
http://www.joelonsoftware.com/articles/APIWar.html


Interesting. And more than just the point you picked out.

His sidebar on automatic memory management is interesting because he
forgets that C++ does have automatic memory management:
constructors/destructors for local variables, and temporary objects.
You can also do pointers if you want, but most often you don't need to.
And when you do you have auto pointers. He tries to equate C++ with C
and the Win32 API, which is just C.

--
Linux - A most satisfying eXPerience
Aug 18 '05 #3
Scott M. poked his little head through the XP firewall and said:
Do you feel better? Get a hobby because you've got too much free time on
your hands.

"John Bailo" <ja*****@texeme.com> wrote in message
news:qM*****************************************@s peakeasy.net...

http://www.joelonsoftware.com/articles/APIWar.html


Looks like you got a byte^H^H^Hite with your troll, Bailo.

--
Linux - A most satisfying eXPerience
Aug 18 '05 #4

"John Bailo" <ja*****@texeme.com> wrote in message
news:qM*****************************************@s peakeasy.net...
:
: http://www.joelonsoftware.com/articles/APIWar.html
:
:
:
: "So you've got the Windows API, you've got VB, and now you've got .NET,
: in several language flavors, and don't get too attached to any of that,
: because we're making Avalon, you see, which will only run on the newest
: Microsoft operating system, which nobody will have for a loooong time.
: And personally I still haven't had time to learn .NET very deeply, and
: we haven't ported Fog Creek's two applications from classic ASP and
: Visual Basic 6.0 to .NET because there's no return on investment for us.
: None. It's just Fire and Motion as far as I'm concerned: Microsoft would
: love for me to stop adding new features to our bug tracking software and
: content management software and instead waste a few months porting it to
: another programming environment, something which will not benefit a
: single customer and therefore will not gain us one additional sale, and
: therefore which is a complete waste of several months, which is great
: for Microsoft, because they have content management software and bug
: tracking software, too, so they'd like nothing better than for me to
: waste time spinning cycles catching up with the flavor du jour, and then
: waste another year or two doing an Avalon version, too, while they add
: features to their own competitive software. Riiiight."

A loser's approach to the market, John! Appropriate for COLA, though.
LOL!!!

Aug 18 '05 #5
In comp.os.linux.advocacy, Scott M.
<s-***@nospam.nospam>
wrote
on Wed, 17 Aug 2005 21:22:57 -0400
<up**************@TK2MSFTNGP15.phx.gbl>:
Do you feel better? Get a hobby because you've got too much free time on
your hands.
It's a given with Bailo. :-) As it is, Microsoft has not yet lost
the war -- it probably hasn't even noticed RedHat, which is a
relative upstart.

But it is a profitable relative upstart, and Microsoft is going
to have to be very careful -- as is RedHat, as RH is showing
some tendencies to charge a premium for its products.


"John Bailo" <ja*****@texeme.com> wrote in message
news:qM*****************************************@s peakeasy.net...

http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET, in
several language flavors, and don't get too attached to any of that,
because we're making Avalon, you see, which will only run on the newest
Microsoft operating system, which nobody will have for a loooong time. And
personally I still haven't had time to learn .NET very deeply, and we


[rest snipped]

--
#191, ew****@earthlink.net
It's still legal to go .sigless.
Aug 18 '05 #6
The Ghost In The Machine wrote:
It's a given with Bailo. :-) As it is, Microsoft has not yet lost
the war -- it probably hasn't even noticed RedHat, which is a
relative upstart. But it is a profitable relative upstart, and Microsoft is going
to have to be very careful -- as is RedHat, as RH is showing
some tendencies to charge a premium for its products.


This article was actually sent to me by a colleague at work...who has
been having a running battle w/me about OOP (he's a SQL Developer). I
wrote this response to the article (yes, as many of you have pointed out
there are many salient points in the article, right or wrong):
MY RESPONSE:

(1) He mentions Linux in the opening, but never again in the rest of
the article; he criticizes Apple and Sun, but does not mention Linux
desktops. He should have continued his Linux arguments since what he
is describing is not the end of the Windows API – but a
franctionalization to match the successful fractionalization of API’s in
the Open Source world. Originally it was a constant complaint of
having 10 of everything – however, the user seems to like choice, and I
think M$ has stepped up on that.

(2) He seems to think of applications as client applications – he
does not address things like SOA or inter machine operability, where XML
webservices are gaining traction in IT.

(3) He poo-poo’s object oriented programming, saying VB is not
object oriented – however, the strength of VB6 is that it is glue that
holds together COM objects; .NET extends that further because it is
essentially a virtualized object of the entire computer network to which
we program.

(4) He does not mention some basic smart client examples that are
growing in every day use:

(a) the cell phone and wireless PDAs, which has its own OS, such as
symbian, PalmOSand now java/linux often

(b) gaming. Gaming is the forth most popular use of the home PC and
its usually driven not by some hokey web interface, but by a super rich
client interface. Even the most basic games are not HTML, but are
plugins ( essential smart clients) in Flash or java.

(c) email and newsreaders: while webmail is very popular, many use
Thunderbird or Outlook for email, one of the most prevalent

(5) I definitely think Longhorn was Wronghorn – it reminded me of
the attempts in the late 80s of IBM to reproprietize the PC with
microchannel architecture. Again, they correctly fractionalized it
into many different attempts rather than a monolithic take it or leave
it approach – but the individual products are still there.

Aug 18 '05 #7

The Ghost In The Machine wrote:
In comp.os.linux.advocacy, Scott M.
<s-***@nospam.nospam>
wrote
on Wed, 17 Aug 2005 21:22:57 -0400
<up**************@TK2MSFTNGP15.phx.gbl>:
Do you feel better? Get a hobby because you've got too much free time on
your hands.
It's a given with Bailo. :-) As it is, Microsoft has not yet lost
the war -- it probably hasn't even noticed RedHat, which is a
relative upstart.


Microsoft is VERY aware of Linux. It's been biting into their server
market in a very big way, and even though Linux only represents about
10-12% of the total installed base, that's still gains that reflect a
net of nearly 30% of the annual unit volumes. Essentially, for every
two machines sold with Windows, one machine is converted to Linux.
Granted, the two machines sold with Windows are sold to U.S.
corporations or retail customers, and the machine converted to Linux is
in Brazil, India, China, or Europe, but it's a trend that Microsoft
does worry about.
But it is a profitable relative upstart, and Microsoft is going
to have to be very careful -- as is RedHat, as RH is showing
some tendencies to charge a premium for its products.
Microsoft nearly lost a huge chunk of market share when they tried to
force-feed Windows XP licenses to U.S. corporations and triple the
support fees. Many companies prepared contingency plans and are
prepared to implement them if Microsoft attempts to play hard-ball with
the next release of Windows. In fact, any corporation that doesn't
have such contingency plans should probably find a new CTO.

Microsoft is also acutely aware of how much Open Source is starting to
creep into the application market. Many new applications are based on
the Cygwin API model, which is essentially a Posix/Linux/*nix API
rather than the traditional Windows API. QT applications are also
becoming much more popular, and many hardware vendors are now providing
support for both DirectX and OpenGL.

Microsoft stumbled with 64 bit Windows, and Linux got the jump on the
market. People could purchase an HP Pavilion and get a SuSE Linux
distribution DVD, complete with drivers customized to the HP hardware.
This little feature sold quite a few AMD/64 machines and Linux will
probably continue to be the dominant player in the Lintel/64 and
LinAMD/64 market.

It's gotten to the point where 32 bit machines have maxed out. They
are capped at about 4 gig of memory before going to convoluted schemes
similar to the 80286 segmentation schemes. This also includes virtual
memory.

Microsoft has another problem because most third-party Windows 9x and
NT applications won't run on XP/64. Microsoft knows this is a problem,
but really isn't ready to put real product on the market yet. OEMs
seem to have committed themselves to another year of Microsoft-only
product, but the value of Windows XP workstations has reached the point
where price erosion and lack of new features has nearly completely
killed the market. Most OEMs now lose money on the core CPU and
attempt to make their profit on LCD screens, accessories, and other
"bundling" designed to create a "package" that customers will actually
pay $2000 for. The problem is that even that is not working so well.

Most desktops are selling for $300-400 and most laptops are selling for
$600-700, and most corporate workstations don't actually NEED to be
replaced.
"John Bailo" <ja*****@texeme.com> wrote in message
news:qM*****************************************@s peakeasy.net...

http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET, in
several language flavors, and don't get too attached to any of that,
because we're making Avalon, you see, which will only run on the newest
Microsoft operating system, which nobody will have for a loooong time. And
personally I still haven't had time to learn .NET very deeply, and we


According to Steve Ballmer "Microsoft IS the STANDARD" and
according to the EULA "We can Change the standard any time we want"
[rest snipped]

--
#191, ew****@earthlink.net
It's still legal to go .sigless.


Aug 18 '05 #8
John Bailo wrote:
http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET,
in several language flavors


What on earth is wrong with good old C and C++? Why does MS keep
inventing new languages and VMs? Are they going to rewrite their kernel
in VB and .NET? Should be difficult to do, given the fact that the NT
kernel is currently written in QBASIC. Line numbers and gotos are hard
to port...
Aug 18 '05 #9
> What on earth is wrong with good old C and C++? Why does MS keep
inventing new languages and VMs? Are they going to rewrite their kernel
in VB and .NET? Should be difficult to do, given the fact that the NT
kernel is currently written in QBASIC. Line numbers and gotos are hard to
port...


What is wrong with good old macro assembler, why did they event languages as
C?

:-)

Innovation did not stop with the invention of fire.

Cor

Aug 18 '05 #10
Cor Ligthert [MVP] wrote:
Innovation did not stop with the invention of fire.


Good analogy. But, also note, that progress has not stopped the use of
fire, even in the 21st century.
Aug 18 '05 #11
John,
Innovation did not stop with the invention of fire.


Good analogy. But, also note, that progress has not stopped the use of
fire, even in the 21st century.


True John, however I like more to use by instance matches or a lighter to
make that, than the tools as in the days that it was invented.

You could have expected this answer

:-))))

Cor
Aug 18 '05 #12
Cor Ligthert [MVP] wrote:
What on earth is wrong with good old C and C++? Why does MS keep
inventing new languages and VMs? Are they going to rewrite their kernel
in VB and .NET? Should be difficult to do, given the fact that the NT
kernel is currently written in QBASIC. Line numbers and gotos are hard to
port...


What is wrong with good old macro assembler, why did they event languages as
C?

:-)

Innovation did not stop with the invention of fire.


To me, it looks more like MS is going backwards. Their new products
decrease portability, rather than enhancing it. Hmm, why is that?

I just noticed that the OP has cross posted this to m.p.dotnet.general.
Maybe in hope to start yet another holy war. Replies are therefore
redirected to c.o.l.advocacy, the *only* place where flaming is allowed
by definition... :)

Aug 18 '05 #13
On Thursday 18 August 2005 01:37, Nikos Chantziaras <re****@hotmail.com>
(<43***********************@authen.white.readfreen ews.net>) wrote:
John Bailo wrote:
http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET,
in several language flavors
What on earth is wrong with good old C and C++?


They aren't simple and/or safe.
Why does MS keep inventing new languages and VMs?


The otherwise unexplainable success of Sun's Java "platoform" is a threat to
The Microsoft Hegemony. Their new languages and VMs are intended as
nothing more than Java killers.
Aug 18 '05 #14
Arkady Duntov poked his little head through the XP firewall and said:
On Thursday 18 August 2005 01:37, Nikos Chantziaras <re****@hotmail.com>
(<43***********************@authen.white.readfreen ews.net>) wrote:
John Bailo wrote:
http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET,
in several language flavors


What on earth is wrong with good old C and C++?


They aren't simple and/or safe.


C is simple, but it is not safe.

C++ is safe (sort of), but it is not simple.

Java may be safe, but it is not simple.

Perl is not simple, and may not be safe.

.... (continue with your own aphorisms)

--
Linux - A most satisfying eXPerience
Aug 19 '05 #15
In comp.os.linux.advocacy, Cor Ligthert [MVP]
<no************@planet.nl>
wrote
on Thu, 18 Aug 2005 10:32:08 +0200
<ew**************@TK2MSFTNGP14.phx.gbl>:
What on earth is wrong with good old C and C++? Why does MS keep
inventing new languages and VMs? Are they going to rewrite their kernel
in VB and .NET? Should be difficult to do, given the fact that the NT
kernel is currently written in QBASIC. Line numbers and gotos are hard to
port...


What is wrong with good old macro assembler, why did they event languages as
C?

:-)

Innovation did not stop with the invention of fire.

Cor


Luxury! In my day we didn't truck with all those newfangled
fiddlybits like Java, C/C++/VB! We did it the old-fashioned
way, trudging through octal dumplistings 5 miles uphill both ways...
and that was before plugboards were invented.

:-)

On a slightly more serious note -- I've now forgotten it (haven't
used it in awhile and you know what they say...), but I used
to have to key in a tapeloader for my 1802. It was about 2 dozen
or so bytes in length.

As for NT in QBasic...I can't say, but VMS was at one point written in
BLISS, and parts of AmigaDOS (not the kernel) were probably written
in BCPL.

Apple had an interesting Sweet16 interpreter, which I for one have
no idea exactly what its purpose was.

--
#191, ew****@earthlink.net
It's still legal to go .sigless.
Aug 19 '05 #16
Cor Ligthert [MVP] wrote:
What on earth is wrong with good old C and C++? Why does MS keep
inventing new languages and VMs? Are they going to rewrite their kernel
in VB and .NET? Should be difficult to do, given the fact that the NT
kernel is currently written in QBASIC. Line numbers and gotos are hard to
port...

What is wrong with good old macro assembler, why did they event languages as
C?

:-)

Innovation did not stop with the invention of fire.


But innovation hasn't really started with M$ yet has it?
Aug 22 '05 #17
Phil,
Innovation did not stop with the invention of fire.


But innovation hasn't really started with M$ yet has it?


What is innovation will always be a question of personal acceptance.

Apes do still not like fire.

Cor
Aug 22 '05 #18
Cor Ligthert [MVP] poked his little head through the XP firewall and said:
Phil,
Innovation did not stop with the invention of fire.


But innovation hasn't really started with M$ yet has it?


What is innovation will always be a question of personal acceptance.

Apes do still not like fire.


We are apes.

--
Linux - A most satisfying eXPerience
Aug 22 '05 #19
Cor Ligthert [MVP] wrote:
Phil,

Innovation did not stop with the invention of fire.


But innovation hasn't really started with M$ yet has it?

What is innovation will always be a question of personal acceptance.

Apes do still not like fire.


some apes are happy with fire, but others wont settle for anything less
than a flamthrower.
Aug 23 '05 #20


"Nikos Chantziaras" wrote:
John Bailo wrote:
http://www.joelonsoftware.com/articles/APIWar.html

"So you've got the Windows API, you've got VB, and now you've got .NET,
in several language flavors


What on earth is wrong with good old C and C++? Why does MS keep
inventing new languages and VMs? Are they going to rewrite their kernel
in VB and .NET? Should be difficult to do, given the fact that the NT
kernel is currently written in QBASIC. Line numbers and gotos are hard
to port...


FYI, NT kernel is written mainly in C and some assembly code for lower level
hardware support. Kernel in QBASIC? Where did you get that impression?
Aug 27 '05 #21

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

24 posts views Thread by Christopher J. Bottaro | last post: by
reply views Thread by Jim the Bad | last post: by
4 posts views Thread by Tony | last post: by
20 posts views Thread by John Bailo | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.