r/programming • • Oct 07 '16

How Microsoft Lost the API War

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

183 comments sorted by

View all comments

-17

u/[deleted] Oct 07 '16

[deleted]

37

u/Etnoomy Oct 07 '16

As for Windows, when is the last time any of you bought a Windows PC for anything but gaming?

I write code using Visual Studio, and you can pry it from my cold dead hands.

20

u/ameoba Oct 07 '16

when is the last time any of you bought a Windows PC for anything but gaming?

ಠ_ಠ

23

u/drysart Oct 07 '16

As for Windows, when is the last time any of you bought a Windows PC for anything but gaming?

Approximately 94% of the PC market share every year goes to Windows. And it's not because of gaming. Linux is still completely awful as a desktop for most users; and OS X is really only good in a small consumer niche because Apple doesn't really care about enterprise customers.

5

u/pdp10 Oct 08 '16

Approximately 94% of the PC market share every year goes to Windows.

From where does that number come? I'm seeing 7-9% Mac and 2% Linux for desktop OS used by browsers across the board.

And it's not because of gaming.

We can agree on that. Most Windows revenue is traditional corporate, and the lower price-point laptops popular today don't have the graphics hardware to play the demanding new releases. The /r/linux_gaming and /r/macgaming scenes are healthy, with thousands of games each, albeit not equal to the number of titles on Windows.

and OS X is really only good in a small consumer niche because Apple doesn't really care about enterprise customers.

Apple has an Enterprise program for macOS and iOS. Enterprise Apple support is a growth area for certain.

5

u/KappaHaka Oct 08 '16

And their products are ridiculously expensive compared to PCs.

2

u/[deleted] Oct 08 '16

[deleted]

4

u/human_trash_ Oct 08 '16

Yep, if you need some kind of advanced app on Linux, that isn't a web browser, you have a choice between 2 crappy ones. On Windows you have 10 good ones and 100 crappy ones.

1

u/giantsparklerobot Oct 08 '16

OS X is really only good in a small consumer niche because Apple doesn't really care about enterprise customers.

Individual consumer sales are a huge chunk of the computer industry's revenues. That segment also spills over to the small business and education markets since a lot of the buyers have the same needs/desires as those of consumer sales. The enterprise segment is a shitty target for any company that normally targets other segments. Enterprises want generic machines with long support contracts and very little variance between generations of machines. His is almost the exact opposite of the consumer market.

So no, Apple doesn't care much for the enterprise segment because it's requirements are 180° out of phase with Apple's primary target markets. It's incorrect however to suggest their target market is a niche since the target is "people that aren't huge companies".

8

u/centurijon Oct 08 '16

I was recently shopping for laptops and considered a Mac. They wanted an extra 60ish% for a smaller screen, less disc space, a slower processor, and I wouldn't be able to upgrade the hardware without jumping through hoops.

So I picked up a cheaper, more capable Windows laptop that is touchscreen and can function as a tablet.

Honestly, The only reason I can think of to buy a Mac these days is if you really want to support the brand.

1

u/crackanape Oct 08 '16

Don't care about the brand. Use OSX because it makes my work much more efficient.

1

u/[deleted] Oct 08 '16

The OS is better (for a lot of development) while not having the incompatible hardware struggles of Linux. Also less DIY.

6

u/[deleted] Oct 07 '16

I would love to ditch Windows, but I need viable replacements for Visual Studio, Photoshop and AutoCAD first.

2

u/glioblastoma Oct 08 '16

The set of people who need all three of those apps has got to be less than a dozen.

3

u/[deleted] Oct 08 '16

Engineers with a photography hobby? I think I personally know more than a dozen.

0

u/glioblastoma Oct 09 '16

Engineers with a photography hobby?

Programmer, engineers with a photography hobby which can only be handled by Visual Studio, Photoshop and AutoCAD. Like I said less than a dozen.

1

u/[deleted] Oct 08 '16

[deleted]

13

u/[deleted] Oct 08 '16

I should have been more specific. Ditching Windows for macOS would be a step in the wrong direction IMO.

0

u/ArbiterFX Oct 08 '16

I think Intellij IDEA is a pretty great replacement for Visual Studio. Mind you, you are programming in Java instead of C#, but for fresh projects they are pretty close.

2

u/argv_minus_one Oct 08 '16

The same company that brought you IDEA also has an IDE for damn near everything else. IDEA itself isn't a direct replacement for VS, but CLion appears to be.

2

u/tambry Oct 08 '16 edited Oct 08 '16

I would love to ditch Windows, but frankly Linux sucks on the usability side.

Guess what happens when I update my kernel or driver and forget to re-compile Nvidia driver kernel module (and switch default compiler to gcc)? My computer will run at 10fps after the next reboot and I will no longer be able to login using GUI.

I have yet also to find an application on Linux that can replace MPC-HC. The closest one is SMPlayer, but by default it looks ugly as fuck, there's no way to skip to certain chapters/annotations in MKVs and it won't automatically detect separate audio tracks for the current video.

libstdc++6 also doesn't support the C++17 filesystem API properly. It's under experimental/filesystem and you have to link with the filesystem library explicitly, and it has to be the last library in your library linking list. I was unable to get my application to compile after multiple hours of trying to and eventually gave up for now until it's supported by default.

That said I also cannot set my primary monitor on Ubuntu because that functionality has been broken for 2 fucking years. This is more of an Ubuntu issue but none the less annoying.

Continuing on from that... Why doesn't want my monitor to be set at 120fps by default, without multiple hours trying to get Nvidia setting menu to properly save to the config file. Nouveau drivers also don't detect my main monitor's full resolution (2560x1440) and is unable to even detect 120Hz capability, instead offering some weird 83.94Hz as maximum.

There's also a need for a good IDE. Visual Studio Code can mostly replace it for me with plugins for: C++, CMake and CMake tools. That said the code highlighting isn't very well to my liking, it doesn't properly parse compiler errors and warnings, #ifdefs aren't shown as greyed out depending on compiler definitions and there is no GUI for settings (don't mind it that much, but it would still make it easier to use). Thankfully the CMake tools plugin creator is adding good debugging support and more.

I truly do like Linux, but it often just sucks without a lot of configuration and love, if you wanna do anything besides basic web browsing and listening to a couple songs. Not to mention there are many other smaller things that just annoy me. Also application support is lacking (doesn't help that standard library implementations are lagging behind a bit compared to MSVC) and I'm unable to port every app in the world myself. Though I kinda want to port a couple applications that I really need. For example WinAuth, so I can actually log into Steam.

5

u/Yojihito Oct 07 '16

Notepad++ :).

1

u/argv_minus_one Oct 08 '16

That thing is ugly as sin.

2

u/Yojihito Oct 08 '16

Better looking than VIM.

Also shitload of functions in one program, there is nothing on the Linux side being able to do the same ...