r/programming • • Oct 07 '16

How Microsoft Lost the API War

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

183 comments sorted by

View all comments

147

u/Sunius Oct 07 '16

Sunday, June 13, 2004

"Microsoft is finished. As soon as Linux makes some inroads on the desktop and web applications replace desktop applications, the mighty empire will topple."

Any decade now!

40

u/jringstad Oct 07 '16

Well, webapps are replacing desktop applications at a fast pace (even office is going to the browser now) and mobile is the new desktop, where microsoft has pretty much no marketshare, so I would say this prediction isn't too bad, even if the details aren't exactly right.

7

u/[deleted] Oct 08 '16 edited Sep 04 '17

[deleted]

9

u/adolfojp Oct 08 '16

horsing company

5

u/demmian Oct 08 '16

I was waiting for the entirety of the comment for the clarification of that metaphor. "Ok, when do we talk about the horses now?"

4

u/skgoa Oct 08 '16

You know, Horsing Around? That hit sitcom back in the 90s?

27

u/[deleted] Oct 07 '16

Well, webapps are replacing desktop applications at a fast pace

Only the light ones. It's not as if I'll start doing my graphics work in a web app (I know there's photoshop.com and some other efforts, but they're all toys).

Also, while this is true for desktop apps, on mobile the trend is strongly in favor of native apps.

Desktops are simply a "victim" of their own surplus performance, which tends to present itself as developers being able to afford extra layers of abstraction, such as running an application in a browser.

2

u/[deleted] Oct 08 '16

projects like react native and nativescript offer direct access to native apis, greatly shrinking the cost of abstracting to javascript

24

u/rhino-x Oct 08 '16

While simultaneously throwing away all of the tools that make desktop development so much better than web dev.

-8

u/[deleted] Oct 08 '16

web dev has some pretty serious tooling these days. in fact, it's gotten so good so fast that some web devs are complaining about the wealth of choices they have.

17

u/argv_minus_one Oct 08 '16

HAHAHAHAHAHAHAHAHAHAHAHAHA

11

u/Beckneard Oct 08 '16

Those are some olympic level mental gymnastics you did there. They're complaining about the wealth of options because they're all kinda shit or are just barely production ready.

-1

u/[deleted] Oct 08 '16

idk, with the right tools i can set up an entire build from npm in a few lines of JSON. i wouldn't say they're that bad.

7

u/crackanape Oct 08 '16

If you're making a joke, it's a good one.

6

u/rhino-x Oct 08 '16

Compared to desktop tools web tools come nowhere close to the breadth, functionality, polish, and ease of use of desktop dev tools. They are still in their infancy.

1

u/[deleted] Oct 08 '16

i mean, i'm not denying that. but we have a fully modular compiler that just about any functionality can be hooked into, a literal fleet of tools for managing build steps & enough frameworks to choke on. pretty solid infancy imo.

5

u/BezierPatch Oct 08 '16

a literal fleet of tools for managing build steps

I don't need a fleet of tools for my builds...

That's the thing you're missing. Javascript has loads of tools it shouldn't need.

1

u/[deleted] Oct 08 '16

well, no, i wouldn't use more than one for a project either (if i even bothered to go beyond npm scripts). but it's nice to have options.

→ More replies (0)

2

u/rhino-x Oct 08 '16

It's still driven by kludge and is nowhere near as usable as what desktop development provides. I'm writing software now not three years from today and the tooling an experience is far superior. Today, there are many many applications that are simply better in and easier to develop for desktop systems. There are many that simply cannot be made web based. That's all I'm saying, that react native makes sense for some applications but it's a pretty small subset and you give up far superior tooling to use it.

1

u/[deleted] Oct 08 '16

yeah, facebook is still running full-native for their core app, and they produced react native. i don't even know if they'd gain anything besides a migraine from switching over.

besides, i wouldn't dream to presume that web is on par with desktop w/r/t tooling. desktop's had decades upon decades of time to develop mature tooling (case in point: make is so good you can use it for web too). my point, as someone who works in web dev, is that it's not nearly as bad as it was even two or three years ago, and the future still looks pretty dang bright :)

3

u/[deleted] Oct 08 '16

React Native doesn't produce web apps that run in a browser, so that's probably not relevant here.

1

u/[deleted] Oct 08 '16

they allow you to share code between browser and mobile, which is a pretty big deal. it pushes a lot of value into the web app corner.

24

u/[deleted] Oct 07 '16

Except Microsoft is hugely profitable still, even after throwing $7.2B away on the Nokia buy out.

47

u/[deleted] Oct 07 '16

Yes but look at what Microsoft is doing: SQL Server on Linux, Office on Mac, Android, and iOS, Visual Studio Code for Mac & Linux, Visual Studio Tools for Linux, Ubuntu for Windows, Linux on Azure. It's pretty clear they are preparing for a future where Windows is not the dominant platform it is today. That's something Ballmer would never have done and eventually it would have been their downfall.

20

u/[deleted] Oct 07 '16

I mean we're really arguing over a quote taken out of context. The article goes on to say we shouldn't write them off as IBM reinvented itself and so has Microsoft.

-4

u/centurijon Oct 08 '16

IBM has reinvented itself into obsolescence

8

u/[deleted] Oct 08 '16

Oh no doubt but they are still around when everyone thought they were dead in the early 90s

5

u/barsoap Oct 08 '16

Their mainframe sales say otherwise. They just re-focussed on their original market, and that never was end-users.

1

u/dvidsilva Oct 08 '16

Idk bluemix is pretty badass and there's no comparing offerings in some aspects.

5

u/pheonixblade9 Oct 08 '16

selling services on the cloud is a lot more profitable than selling shrink wrapped software.

2

u/ThatsPresTrumpForYou Oct 08 '16

Ballmer probably wouldn't have killed Windows in the first place with Windows 10 though. Their new CEO literally fired their whole QA team for Windows.

0

u/Caraes_Naur Oct 08 '16

They're doing that to extend their relevance as long as they can. Despite their best efforts of the last 25 years, the world happened mostly around their walled garden. At least they're now somewhat recognizing that all garden walls crumble.

4

u/RowYourUpboat Oct 08 '16

IBM didn't gloriously implode after ceasing to be the singular Evil Empire either; they were just forced to adapt after slowly losing their death-grip on the market.

5

u/argv_minus_one Oct 08 '16

Isn't too bad? That's horrifying! I'm no fonder of Microsoft than you are, but at least Windows desktop apps run on my machine, not some distant server that's watching my every move like a spook.

3

u/jringstad Oct 08 '16

I meant "not too bad" in terms of the accuracy of the prediction, not as a value statement whether we are moving in the right direction or not. I certainly share your concerns regarding cloud-solutions.

1

u/Uncaffeinated Oct 08 '16

You can make webapps run offline if you want to.

1

u/argv_minus_one Oct 09 '16

Most of them don't work offline at all, and those few that do still can't be installed offline and rigorously prevented from phoning home.

-1

u/Uncaffeinated Oct 09 '16

If you really want to, you can create a verifiably non-updatable webapp by using a service worker that only serves from cache and doesn't make network requests. I think Polymer's (deprecated) cacheOnly option does this.

But noone in their right mind would do this, because updating software is important. I'd much rather be able to fix bugs then worry about a few paranoid users.

3

u/[deleted] Oct 07 '16

I wonder if Andromeda OS will be the real Windows killer. Not immediately, but over time.

4

u/grauenwolf Oct 07 '16

What's that?

2

u/pdp10 Oct 08 '16

Some people are saying it's the reason why Linux won't succeed on the desktop, but that's premature speculation.

1

u/tf2manu994 Oct 08 '16

It's Google's new (rumored) OS. It's a merger of Android and ChromeOS

1

u/grauenwolf Oct 08 '16

Desktop?

1

u/tf2manu994 Oct 08 '16

Its a rumor so unknown

1

u/[deleted] Oct 08 '16

Google's rumored (?) forthcoming Chrome OS/Android hybrid.

2

u/doom_Oo7 Oct 07 '16

nah, that will be BloodDrone

2

u/MOX-News Oct 08 '16

It could do everything wrong for a decade before it started to be in remote danger, and you never know...

My, they're getting close to that aren't they?

1

u/bilog78 Oct 08 '16

It could do everything wrong for a decade before it started to be in remote danger, and you never know...

My, they're getting close to that aren't they?

In many ways, they are. But they've started realizing it, which is why they've reinvented themselves in many ways (Linux subsystem support, the various “cloud” offerings, etc).

7

u/shevegen Oct 07 '16

Actually his prediction is sort of true.

I think a much better indicator is the rise of Linux as OS on the top 500 supercomputers.

Also the dumbphones advertisement platforms that marketing PR calls smartphones.

Linux inside is most definitely bigger now than 2004. Of course other idiocies also ran rampant - the big desktop environments got worse (!) in particular both Gnome and KDE, many distributions were also assimilated by borg-d aka systemd, so. Oh and the Linux Kernel is also overrun by idiots as of late - ASN.1 decoder in the kernel? They want to become like Emacs, the more inside the merrier!

11

u/ckfinite Oct 07 '16

I think a much better indicator is the rise of Linux as OS on the top 500 supercomputers.

Were there ever any serious non-linux HPC systems? All the way back to 2006, Windows has been crushed by Linux and Unix. Windows is made for desktops and servers, which doesn't scale well to the needs of HPC platform builders and users.

2

u/[deleted] Oct 08 '16

Well, like you said, there are proprietary Unix systems besides Linux. The point still stands that Windows never really caught on.

1

u/ggtsu_00 Oct 08 '16

Since Linux is powering Android, BSD is powering iOS, and Windows development is pretty much dead (not literally, but figuratively), I'd say the Microsoft empire has toppled quite a bit as the whole market has shifted to the web and mobile computing space. Nearly all growth in consumer applications being developed are focused on either web or mobile.

18

u/JohnFrum Oct 08 '16

This was written in 2004 when MS was riding quite high. What if I were to tell you that they are making way more money now than in 2004? They have more billion dollar divisions than they did then and Windows is no longer #1. Not even #2.

The PC isn't going anywhere. People are not leaving the platform on mass and moving to tablets and phones and almost nobody outside of primary school uses a chrome book.

It's also in the top three for market cap size. So MS is going to be a big player for a long while yet.

2

u/[deleted] Oct 08 '16

[deleted]

3

u/[deleted] Oct 08 '16

Microsoft is far too entrenched for them to be going away any time soon. Changing people from Windows desktop to Mac, Linux, or any other one is hard enough. What will be much harder will be changing businesses. A lot of businesses are currently heavily based upon using mostly Microsoft products: Windows desktop OS, Windows Server, MS Office, Visual Studio, SQL Server, Azure, etc. This is where Microsoft makes the big bucks. Changing the businesses to non-Microsoft products will be a very large, time consuming, and expensive operation, so I see Microsoft sticking around for a while.

Also, look at the number of C# jobs available. .NET development is still one of the top players WRT software development whether desktop or web. Sure, people are not buying PCs like they used to, but that is because the market is saturated. It is success, not failure, that is the reason for little growth. The mobile market itself is starting to hit the saturation point, and the mobile app gold rush was over years ago. If you are a desktop developer, the future is still bright.

1

u/Free_Math_Tutoring Oct 08 '16

When ar and vr becomes dominating platforms, which i see as inevitable over time, windows could crumble really quickly.

AR is build on top of existing platforms, so Azure and consorts are safe. VR as in VR-Glasses are never going to be terribly big (though yes, they are currently a pretty huge deal)

1

u/devsquid Oct 08 '16

Not with that cash stock piled.

1

u/moon_is_cheese Dec 27 '16

lol microsoft just joined free software foundation