473,396 Members | 1,836 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 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 2685
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 thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

16
by: Dave Smithz | last post by:
Hi, In summary: I want to a form to submit information via a HTTP POST, however, when using Internet Explorer I want to be able to use the back button and all the information retained....
24
by: Christopher J. Bottaro | last post by:
This post is just the culmination of my thoughts and discussions with my coworkers on Python. If you are not interested, please skip over it. At my work, we are developing a product from...
0
by: Jim the Bad | last post by:
Hi, I wonder if anyone can help me with this. Bog standard SuSE 8.2 Linux install. I have installed mySQL (off the SuSE 8.2 distro CDs). I can connect locally, e.g: bealzebub> mysql -u root...
4
by: Tony | last post by:
Is there any known SQL Server bug whereby a record can be successfully inserted and committed, but then later be found not to be in the database? For example, if there was a server crash just...
1
by: TJRobertsJob | last post by:
Was wondering if someone could help. Over the last month I've been developing a small database application, using Access 2000, for use in a friends shop. Everything was going well until about a...
4
by: nsj | last post by:
How shall i use quotation marks within another in asp.net?
20
by: John Bailo | last post by:
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...
44
by: Tolga | last post by:
As far as I know, Perl is known as "there are many ways to do something" and Python is known as "there is only one way". Could you please explain this? How is this possible and is it *really* a...
0
by: WORKING IN FAITH | last post by:
" Interviewing Seminar LEADERS; How did I do that ? Faith that's HOW... " Inbox Craig Somerford to Apple, Katrinas, Bruno, Wiz, Kettering, City, Katie, CBC, Harvard, (bcc:Local), (bcc:Local),...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

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.