3 ms·
...Apple, which gives all its development tools away for free... I have to purchase some overpriced PC hardware to run Xcode though. Meanwhile, I can run a com
by WayneDB 14y ago
...Apple, which gives all its development tools away for free...
I have to purchase some overpriced PC hardware to run Xcode though. Meanwhile, I can run a complete Windows development environment of in a remote hyper-visor VM on commodity hardware (and I do).
On OS X, I can at least trivially compile for older versions.
I can write a program today on Windows 7 and go install it on Windows XP, a system that was released over 11 years ago. I can also make a program that will run on Windows 95 or 98. Can you do that from OS X to Mac OS 8 or 9?
How well do Mac OS 8/9 programs run in OS X? Do you really think they run as well as Win 95/98/XP programs run on Windows 7 or 8? Do you actually run programs from that era? Which ones?
It's funny that you compare Apple, which gives all its development tools away for free [minus the cost of a Mac], with a company that charges 615 Euro to get a Pro version of their development tools, and suggest that the latter is developer-friendly.
That's not why people often say that Apple is not developer friendly. There are many reasons but I believe the primary one is that Apple often locks out developers where Microsoft does not. For instance, only Apple can affect NSScreen visibleFrame. Nobody else. That's why every Dock replacement on OS X has the same bug: windows end up beneath the replacement dock when "maximized".
Microsoft also creates tools and frameworks for all types of developer stories where Apple simply has nothing. Corporate developers, game developers and add-in developers. (Apple doesn't even have official APIs for developing add-ins for products whereas Microsoft created an entire markets for Visual Studio add-ins or Office add-ins.)
- danieldk 14y agoI have to purchase some overpriced PC hardware to run Xcode though. That has very little to do with developer-friendliness, since it applies to any Mac or iOS-only application. I can write a program today on Windows 7 and go install it on Windows XP, a system that was released over 11 years ago. I know, that's why I asked what he is comparing the backward compatibility too. Microsoft goes through great pains to guarantee backward compatibility, I wish Apple would go so far. But backward compatibility on OS X is definitely better than e.g. Linux. There are many reasons but I believe the primary one is that Apple often locks out developers where Microsoft does not. For instance, only Apple can affect NSScreen visibleFrame. Microsoft also has a history of private APIs. In fact, it is well known that Microsoft used APIs only available to them to get an edge over competition. Even Windows RT has such limits. E.g. Microsoft is the only developer that can use the desktop mode on Surface RT tablets. Microsoft also creates tools and frameworks for all types of developer stories where Apple simply has nothing. Well, it's no secret that Apple is not really in the enterprise server market. So, no, you'll not find an equivalent of Microsoft's enterprise .NET stack. Fortunately, you can use Java or any mixture of widely-used open source libraries, which are often far easier to compile and use, given that OS X is a fairly regular UNIX.
- WayneDB 14y agoThat has very little to do with developer-friendliness... The ability to run my development OS in a virtual machine, preferably on a hyper-visor, is paramount. Am I supposed to buy one physical machine per configuration that I want to test? Apple has recently gotten a little friendlier in this regard. At least now you can run OS X in a virtual machine at all, even if it does have to be on Mac hardware. Microsoft also has a history of private APIs. Not really...and especially not on the level that Apple does. (Can you name some off the top of your head that are not security related?) It's not just about APIs either. It's usually an utter lack of functionality on Apple's part. For example, look at Finder vs Explorer. Does Finder have an official/supported plug-in architecture yet? Why not? Power users and developers have been begging for this for over ten years. What do you suppose Apple's reason is for only allowing the Dock program to affect NSScreen visibleFrame? I believe that it's the same reason that Apple took forever to allow people to resize Windows by all sides. It's the same reason that they never admitted that a single-button mouse is not better - they think they know better than any other developers out there. That's unfriendly. Fortunately, you can use Java or any mixture of widely-used open source libraries, which are often far easier to compile and use, given that OS X is a fairly regular UNIX. Apple is not very inviting to a large portion of developers, yet there's (sometimes) an alternative, so that means Apple is friendly to developers? I know that all of the *nix devs out there are on Macs now because Linux failed miserably as a desktop OS...but that still doesn't make Apple friendly to developers. There's a reason that Apple has this bad reputation with developers, particularly in comparison with Microsoft. Part of it has to do with their business model, part of it is simply hubris and in any case, there's a long history to consult here.