As for your comment on the 30% fee, that's industry standard and few serious developers complain. The $99 fee is nothing compared to the amount of time it takes to build and design a quality app.
The 30% fee is not an industry standard that was debated and researched and rationalized. It's an abitrary number picked out by Apple first and then followed by others in order to maximize income from the work of third-party developers who are forced to pay or quit the platform. It's a de facto standard imposed by the platform gatekeepers. Calling it an "industry standard" sounds like it's an ISO recommendation :-)
There is no reason at all to charge a $99 fee to developers given the vast income generated from the 30% and the overall health of the company. This is nickle'n'diming developers. Some people claim that "Apple Developer" is a cost-center, an independently run business silo that must generate a profit to justify its existence, that it's not a charity... i say no. It contributes to the overall well-being of Apple Inc as a whole, just like human resources and research and development does, it helps contributes to the overall profits of the company, so when we look at the company's overall financial health, in my mind, there is no doubt that developers are being taken for a ride because...
...they have nowhere else to go because their Apple centric skill-set is not transferable to other platforms.
What about Sketch, AgileBits, Alfred?
I know many long time devs who are still doing it and haven't sold their products to others to maintain... And I also happen know -lots- of new Mac/iOS devs.
Nothing to say about the 30%, it's just a pathetic argument, people have pointed it out already.
There is a reason to charge a $99 fee. There's also a reason to force a user to put a credit card to create an App Store Account, there's a reason to request a CC to create an Amazon account too. And $99 bucks is literally nothing, check MSDN and Visual Studio (https://www.visualstudio.com/en-us/products/how-to-buy-vs.as...).
About 'Apple Centric Skill-set' not being transferable to other platforms? Sorry, but... are you f'ing kidding me?
If you learn -any- framework, made by anyone at all, in-depth (not just copy pasting code here and there), you'll get skills that are transferable to other development environments. I've learned a ton of C/C++ and even some Assembly by doing iOS, I've also dealt with several scripting languages in the process.
If you're a real Engineer, and you really learn and understand a framework (Apple's or not) it should contribute to your growth.
Cheers.
What's the point here? :)
Apple democratized and revolutionized that entire industry, providing a level playing field where I can compete with Omni, and we both have the same hoops to jump thru and get the same deal. We both get a much better deal than before.
The $99 fee covers the cost of administering the developer program. This program is hugely popular, and is already overrun with people who just want to get access to early versions of iOS before they are released publicly. Even with the $99 fee. It's a very low fee so that anyone serious can afford it, but high enough to keep out the problematic people who would abuse the service and overwhelm Apple's developer support resources.
Seriously, I find it kinda curious that you're complaining about $99 as if it's some big barrier.
The idea that an "Apple centric skill-set is not transferrable to other platforms" is pretty darn silly. I mean, sure, if you learn to program using Cocoa you will be frustrated and annoyed at how terrible certain other platforms are to develop for.
But these days only HR people seem to think that programmers can only learn one langage and that experienced in one language is not useful in other languages or using other frameworks. Are you an HR person? Because that perspective is not one I would expect from any software developer.
Apple charges 30% because they can, just like how CompUSA could charge whatever they wanted and make you pay for boxing and associated costs, because the software you spent a year writing cannot be sold anywhere else except on their platform. And if you want to sell by yourself on the Mac, without using the Mac App Store, you are a second class citizen because certain APIs like the iCloud SDK are not available to you.
If the $99 is a nominal amount, why even charge it? Why $99 and not $49? Or $199? Again, it's a number they came up with which they felt a certain demographic, let's say teenage programmers could afford, or younger kids could get their parents to pay for. I'm open to better reasons if you have one.
Being experienced in many languages does not make one a good programmer. You can be the jack of all trades and master of none. You think someone can just pick up C++ in a few weeks and become an "expert"? It takes years to become proficient in not only a single language but it's associated tooling and ecosystem.
I have no doubt that there are many developers out there who have spent years of effort learning Apple's proprietary stack and are now regretting it and kicking themselves because a decade has passed and Apple, as a friend to developers, has regressed and gone backwards.
Finally, Cocoa is a nice enough API, but have you ever had a problem and then tried to resolve it? Good luck going to the sign-in Apple developer forums where everyone shouts "ssh, we can't talk about it, it's under NDA" or having to file a bug report on Radar where nobody even responds and when they do it's to say it's a duplicate bug filing or, or opening a DTS incident and having the person say "Yep, it's a bug on our end, not sure when it will be fixed, in the mean time try a workaround". How is this better than having an open roadmap with discussion in public forums regarding language/SDK features, bugs, fixes etc?
Advance access to IOS kind of messed that up, (at lot of people paid the developer fee to access the next operating system) which is why application to the WWDC lottery is probably a better estimate of developer count.
I guess another way to look at it is this: If you had an idea for a desktop app today, would you decide to write for Mac first using a proprietary language Swift and proprietary SDKs like CoreData or would you pick C# and .NET so the bulk of your code could be re-used on both desktop and mobile, and you could bind to native toolkits for the UI?
Who are some big C# developers that create major applications consumers (Not enterprises) use everyday?
You mentioned the paucity of major OSX/iOS developers, but I'm not sure the case isn't the same for C#/.NET.
The last 12 months have been pretty horrible for them in terms of their relations with Apple. Sure they're toughing it out because it's not like they have other revenue sources, but those experiences have jolted them into finally considering moving beyond being just a Mac/iOS shop. So they're not a very good example of "all is well in Apple developer land".
I've been itching for someone to stick it to Apple since they're really being tight with money in some places (annual developer fee as you mentioned), and wasting it on share repurchases.
It's time for someone to really compress Apple's margins.
And developing native Windows applications with Microsoft's tools is still just as proprietary as anything on the OS X platform. The recent open-sourcing of the .NET web stack means nothing in this regard. Unless you're telling me that there's an open source C# compiler that can do the job now?
I'm a couple weeks away from paying the Apple license, and starting to write my first iOS app, so I may not know all the costs and foibles of Apple development yet. I'm open to the fact that I may be ignorant of needing some basic things, like on Windows, to REALLY get the job done.
My standpoint is that by developing on someones platform, I am doing them a favor. I'm happy for them to not roll out the red carpet, but there better not be a bouncer checking me at the door, either.
If I have to sign up to used your SDK (unreal, unity), I'll just use something else.
And Microsoft will rescue them... Yeah, right...
What's wrong with C# and F#?
I've watched Microsoft since the 1980s. One year is way too soon for me to believe that they've changed their stripes. In particular, it's way too soon for me to want to tie myself to their platform.
Once their open source .Net would get most of Windows version features there may be some use for it with same drawbacks like you have with Java for example.
Slowly but surely the best developers are going to leave the Mac platform leaving only consulting body-shops and corporates on iOS. Developing for the Mac and iOS is miserable. It wasn't always that way, but it is now.
Developers* are sick of proprietary stacks, from the language (Swift), to the APIs (Cocoa/CoreX/iOS), to the conditions attached (iCloud SDK only available for Mac Apps sold through the Mac Store), to the penny-pinching (pay your $99 fee and 30% even though we're raising $billion in debt to buy-back shares and hand out dividends because we're too tight-fisted to repatriate overseas funds and pay taxes on it) to the still broken XCode which only runs on a Mac, which must run Yosemite which feels like a Fisher-Price toy rather than a workstation for developers.
*Well, ok, I'm sick of it, but I'm sure a few people reading this are feeling the same way.