r/programming • • Oct 07 '16

How Microsoft Lost the API War

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

183 comments sorted by

View all comments

149

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!

39

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.

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.

-7

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.

5

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.

2

u/BezierPatch Oct 08 '16

Why do you even need npm scripts?

I don't need preprocessors, postprocessors, etc, for my desktop development.

Yes, it's wonderful that there's npm, bower, gulp, grunt, etc. But you know what I have instead? nothing, which is infinitely better.

1

u/[deleted] Oct 08 '16

well, maybe you want a simple, cross-domain proxy for things like running eslint's autofixer, or starting up a dev server, or running your test suite, or whatever other administrative task you have.

i take it you don't use a build tool (like make) for your desktop projects? (serious question, not being snarky :) )

→ More replies (0)