6 ms·
So what? I have to build a Windows app on Windows, most likely using Visual Studio.
by msie 10y ago
So what? I have to build a Windows app on Windows, most likely using Visual Studio.
- cptskippy 10y agoI think his point, and one I agree with, is that the tool chain is incredibly expensive, obsoleted frequently, and requires lots of maintenance. If you used Microsoft's tool chain to build Windows apps, you can do so with a VM under the Dream Spark license for free. The barrier to entry for OSX/iOS development is hundreds to thousands of dollars.
- msie 10y agoWell, Xcode is free. Apple Dev membership is free. You need a computer to develop software on. Windows machines aren't free. A legit Windows OS license is more expensive than OSX.
- smt88 10y agoIs a Dev membership free, or is it $99/year?
- bitserf 10y ago$99 is when you want to distribute via App Store. You don't need that to do the development or use the tools.
- JimDabell 10y agoA developer account is free, the $99 is to publish in the App Store, receive technical support, and receive free versions of various things (e.g. OS X Server).
- cptskippy 10y agoOh so you can buy the OSX upgrade and install it on any x86 hardware? No? Then it's not comparable to the retail Windows License. You can pickup a Windows PC and an Android phone for half the cost of just a Mac Mini that still requires a display.
- JimDabell 10y ago> the tool chain is incredibly expensive, obsoleted frequently, and requires lots of maintenance. The toolchain isn't expensive or obsoleted frequently. A new Mac mini is $499 and can last more than five years. When you consider a professional iOS developer can easily make $100/hr, a cost of $100/yr for equipment is beyond negligible. Not sure where you get "requires lots of maintenance" from – he doesn't seem to have said anything about that? Obviously in rich Western country terms.
- cptskippy 10y ago$499 is a big investment for the majority of the population and assumes you have a monitor and an iOS device already. It's not a sum many people will drop just to try it out. For a lot of people it means completely adopting the platform. A new Apple device could potentially last you 5 years but Apple has also been known to obsolete hardware in as little as a year. The majority of developers making iOS apps do not make $100 and that's not assured income, its potential. If you happen to work for a professional shop with a team, chances are you want to do CI or automation. It's a pain. If your IT department manages your machines then they need someone dedicated to maintaining enterprise security policies on your Macs, it's a pain for the user and the admin.
- JimDabell 10y ago> $499 is a big investment for the majority of the population I think labelling a $499 computer as "incredibly expensive" isn't accurate when you're talking about typical Western countries. That's a pretty normal cost for a computer. > and assumes you have a monitor and an iOS device already. Most platforms require you to have an instance of the platform available to you. Yes, people who want to develop for iOS should reasonably be expected to have an iOS device, just like people who want to develop for Android should reasonably be expected to have an Android device, and people who want to develop for BlackBerry should reasonably be expected to have a BlackBerry device. Apple are not unusual in this respect – you appear to be holding them to a different standard to other platforms here. > Apple has also been known to obsolete hardware in as little as a year. I can't think of a case where this has happened – can you give an example? > The majority of developers making iOS apps do not make $100 and that's not assured income, its potential. I'm trying to put the cost/benefit into perspective. The cost of iOS development is minuscule in context. > If you happen to work for a professional shop with a team, chances are you want to do CI or automation. It's a pain. If your IT department manages your machines then they need someone dedicated to maintaining enterprise security policies on your Macs, it's a pain for the user and the admin. Again, you seem to be holding Apple to different standards than other platforms. If you have employees using computers, then IT needs to manage them. Yes, of course – but this is true for Windows developers, Android developers, and all other developers as well.
- mtrpcic 10y agoYou can set up build servers for your app on Microsoft Azure, or AWS' Windows Server instances. Microsoft produces articles on how to do Windows development on a Mac (Bootcamp, Parallels, etc.) [1]. Microsoft has shown commitment to bringing it's core offerings to other platforms. Apple has in no way done that. You literally, absolutely need an Apple computer for every step of the development process for iOS. Your comparison is not valid. [1] https://blogs.msdn.microsoft.com/interoperability/2012/12/21/how-to-develop-for-windows-phone-8-on-your-mac/ https://blogs.msdn.microsoft.com/interoperability/2012/12/21...
- jboles 10y agoAnd Windows used to be considered the more closed platform. How times change.
- msie 10y agoIs it really developer hostile that Apple is not bending over backwards to provide free tools to Windows and Linux users? I think it's prudent of them not to waste money on such a small segment, some of which vehemently hate Apple. And when you talk about build servers you are still spending money on some machine to build your iOS app. You can get pretty good used Mac hardware if you really want to. For all those developers sitting on the sidelines refusing to develop iOS apps because they can't setup a build server on Azure, etc. Well, you're just making excuses.
- WayneBro 10y agoI've been in computers since the early 90's and as far as I can see, Apple has always been hostile towards developers (and users). > For all those developers sitting on the sidelines refusing to develop iOS apps... I've made a ton of money building Ionic and Xamarin apps and recommend those to anybody building for iOS because both of them will let you spend as little time using OS X as possible. The way my workflow is now, I could totally rent a cloud Mac and just compile and publish stuff from there. Anyway, even though I think OS X and iOS are quite possibly the worst operating systems I've ever had the displeasure of using and even though I know for a fact that Apple is hostile to developers and users, I don't mind making apps for them because I figure anyone who uses there stuff must not care about wasting money and it should be easy for me to grab some...and it is :) And, like Spotify, all of my apps are subscription based with out-of-app signup, so Apple doesn't get 30% of my money. I also only buy used Macs because Apple doesn't get your money that way either. Right now I'm running a Mid-2012 Mac Pro with 32GB RAM that I got for ~$1,200. It was about double the money that I spent for a similar PC server, but I made all that back by taking money out of Apple's ecosystem and not putting it back in, so I feel like that's a win for everybody (except Apple of course, but hey - fuck them - if they're going to be hostile to me, I'm going to be hostile to them.)
- justabystander 10y agoCross-compiling Windows apps from Linux using Mingw has been a thing for a very long time. Mingw itself is 18 years old. There are also options for using LLVM or compatibility layers like Midipix. So, no, Windows is not required and hasn't been for a long time. As far as Visual Studio, it's not required, either. 3rd party compilers have always been a thing for MS operating systems. In fact, for a long time, you weren't even able to use VS to build drivers for Windows. Microsoft is also currently going out of its way to create neutral tools to enable developers to use the workflow and tools they desire. Omnisharp exists for providing intellisense to editors and IDEs. VS Code is a new, cross-platform IDE that works for both node and C#, among other languages. MonoDevelop still exists and can be used to write Windows-compatible applications. But for Apple, you have to own a mac or, as is common, lease a mac to build and sign on. So, no, these things aren't even in the same realm of control. MS treats Windows as its primary platform for innovation. Apple treats OSX as the only platform in existence.
- msie 10y ago> Cross-compiling Windows apps from Linux using Mingw has been a thing for a very long time. Mingw itself is 18 years old. There are also options for using LLVM or compatibility layers like Midipix. So, no, Windows is not required and hasn't been for a long time. Sure, develop for Windows without using Windows. But why spend time developing for a platform that you don't use regularly? What about testing? How far can you go without Windows? > As far as Visual Studio, it's not required... VS or Windows is not required but the majority of developers develop using VS on Windows. You could cheap-out by avoiding these but you're being penny-wise and pound-foolish. > But for Apple, you have to own a mac But for Windows/Linux you still have to buy an Intel machine. You just don't want to buy another machine to develop iOS or OSX apps. Anyhow, I think Windows/Linux owners are complaining they have to spend more money to develop on a different platform. You never hear this from Mac owners who want to develop for Windows or Linux.[Edit: Not trying to start a flame war. I'm really trying to understand the outrage...]
- Tiksi 10y agoBecause neither windows or linux restrict which hardware or vms you can install them on like osx does? Obviously you won't hear it from Mac owners, because they can still develop for windows or linux, the inverse isn't true thanks to Apple's artificial restrictions.
- blisterpeanuts 10y agoWouldn't it be a more fair comparison with Android? You can develop Android apps on Windows, Mac, and Linux (though in my experience the Mac is the best supported of the three).
- kartickv 10y agoIf your OS of choice is OS X or Linux, you can set up a Windows VM on it. But not the other way around. Besides, Windows machines are much cheaper, so if you're from a developing country or a student, you have access to a Windows machine, not a Mac.
- joshmn 10y agoI've never had a problem setting up an OS X VM. Just need to look in the right places. Linux VM on a Windows machine was a thing in the early 2000s.
- enobrev 10y agoI'd like to hear more about this. Are you saying you've set up an OSX VM on non-apple hardware? I haven't tried in at least a year, so maybe things have changed, but I have put a significant amount of effort in trying to get an OSX VM running on non-apple hardware and was not even close to successful.
- sigjuice 10y agohttp://www.contrib.andrew.cmu.edu/~somlo/OSXKVM/ http://www.contrib.andrew.cmu.edu/~somlo/OSXKVM/
- enobrev 10y agoThanks for this. Searching around for the title of that article[1] opened up plenty more resources as well. I ended up grabbing a refurb'd Mini last time I needed to do OSX-specific testing locally, but it's great to know progress is being made to open the possibilities on non-Apple hardware. 1: "Running Mac OS X as a QEMU/KVM Guest"
- derefr 10y agoI've gone down that path; it was a big pain—Apple just doesn't bother to make drivers for what most hypervisors consider "generic" hardware. You basically need to do the same stuff Hackintosh builders do, to your VM, to get even some of the features working. By contrast, you can just create an OSX VM in VMWare Fusion in OSX and then copy it over to VMWare Workstation on Windows (or an ESXi server, or whatever else) and it'll work fine after being convinced[1] that it's allowed to try. [1] http://www.insanelymac.com/forum/files/file/339-unlocker/ http://www.insanelymac.com/forum/files/file/339-unlocker/