Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: How many people upset over Apple's rules are actually iPhone developers?
58 points by jasongullickson on April 11, 2010 | hide | past | favorite | 83 comments
It would be interesting to know what percentage of the people in uproar about the new no-cross-compiling rules are actually developers for the platform (who are affected by the rules) and what percentage are developers of other platforms, or not developers at all?


I'm an iPhone developer and I like the new rules.

The privacy thing was getting out of hands - according to survey of 600 people I ran on mturk about 1/3 of the users are concerned about privacy ("what do you mean my data is collected!?"), 1/3 are willing to give developers benefit of the doubt and 1/3 don't care one bit. Apple should get praise for addressing this thing before it blew up, not "after numerous warnings were ignored". We don't want scared users, we want users happy and safe.

I also like the ban on 3d-party analytics for purely selfish reasons - I have my own and this ban gives me an advantage. It also paves the way for me to sell my analytics package to people to use in-house later on. Apple has shown indifference to dev analytics (beyond daily sales numbers) so I hope they keep doing that.

I like the cross-language compiler ban as well, again for selfish reasons. I was not looking forward to a horde of flash developers joining the fray and flooding the app store with more apps. It also elevates value of my Obj-C skills, should I decide to market them instead of building products.

I'm only concerned about smooth transition from current regime to the next one - I wanted to release an ad-supported app next week and I hope these new rules don't put me in limbo (e.g. Apple's ads aren't there yet, other ads are banned).


Your second and third points could be read as, "I like it because it makes the app store less competitive."

I guess I like it too because I don't want the next decade of personal computing to be an Apple monopoly, and making the app store less competitive is a good thing.


Well, I have admitted to selfish motivation. If Apple did an about-face and encouraged flash development I would like it too because I could better reach my target customers. In that sense I like clarity of any kind over uncertainty that was there a week ago.

I guess my point really is that as circumstances change I will find best way to use them to my advantage by changing what and how I do things. People who can't change some/any of that will obviously suffer, but I don't see why I should care about them.

The only bad things are when they change too fast, so I appreciate warning shots so I can maneuver out of the way in time. This time Apple gave us two months after a hard warning, and if they stay consistent with timing I'm fine with that too.


Other ads are NOT banned--that was in the Q&A session specifically, and Jobs said you can use any package you like.

(I guess as long as it's not collecting data that's user-specific.)


There are currently ad libraries you link into your app, and I really have no idea what's in those libraries and what kind of stuff they send home. Which is the crux of the problem, really, and one of the things Apple is trying to address - we should know where we send the data and how it's being used, but individual developers are not powerful enough to affect change from ad provider. Apple is.

So anyway, since I don't know what these apps collect, I can't be certain if thy will be banned in short term. Obviously once they clean up their act they will be admitted, but the transition period may be messy, that's all I'm saying.


The intersection of ads with the new rules only has to do with location-targeting. Apple had unofficially discouraged it before, saying your app couldn't use Core Location "primarily" to serve targeted ads, and they've now strengthened that language and put it in the dev agreement (3.3.9).

There's no reason to think the Deck or FusionAds or AdMob are going away in their current incarnations.


Not true, agreement forbids using user data in ways not related to the primary function of the app and it also forbids passing device data to third parties.

I'm fairly sure moblcix and admob libraries collect device ID which falls under "device data".


BTW: Is there a market in 3rd party libraries for the iPhone?


Not that large - most iPhone devs are poor and value there time less than money. But I think if you move away from "library" towards "I will solve your problem around X so you don't even have to think about it" there will be more people like me willing to pay. I didn't write my own analytics because I enjoy doing it - I needed the data but I didn't want to give up all my data to admob/mobclix etc to party on, and I wanted data to be high-granular.

Here is one guy selling stuff: http://www.drobnik.com/touch/ I planning to buy his calendar control because Apple can't be arsed to give me theirs and I don't want to spend weeks writing my own.


Thanks, 3rd party library are a healthy sign for a platform. I was thinking they go partially towards the fears in 3.1.1, of a layer, potentially cross-platform, and out of Apple's control. But I guess if they are iPhone-exclusive, it's less of a concern.


Many top charting 3D & 2D games by indie developers (like top ten world wide, and staying there) use the the Unity3D framework to develop their games. It saves a ton of time, and the engine is very efficient and well developed and probably would do a better job than you whipping something yourself with just OpenGL ES. (Not to mention you don't have to learn OpenGL). The main chunk of the engine is written in C/C++ with other C libraries, but developers don't see that part and instead interface with the engine through a C#/javascript with types/Boo scripting interface and a 3D modeling interface to build objects and assets. I used it to make a game that didn't go through and I know using anything else would taken many months more of my time. If I was one of the developers who made one of those top listing games, I'd be pretty worried now about the future of my business.

Also not to mention, almost every type of game engine/game development methodology use a very similar model of main engine in c/game logic in a scripting language, and to not to be able to do that significantly decreases productivity. Baldur's gate, unreal engine, EVE online, Unity3D and probably many others.


That games point is worth mentioning again.

Using an engine can result in crap-ware. But is also allows developers to focus on the gameplay/story/important stuff. Planescape Torment wasn't good because it had a new engine (it just used the BG engine) - it was good because of the story/artwork/effort put into it.

Apple should focus on discovery. It doesn't matter how many crap apps there are (put it this way - There's far more crap webpages than there are crap apps) - as long as I can see and find the good ones.


Agreed. I'm working on a game for release in a couple months, and last week had wrapped up a two week project building a nice system for scripting game objects using Lua. I'm now in the process now of scrapping it and going back to C++ for game logic. I guess the bright side of this is that I didn't have that much script code written yet, so I don't have to port too much. :P


I think this is great news for "real" iPhone developers.

The good thing about being an ObjC iPhone-developer is that there aren't that many iPhone developers. So if you're producing decent stuff (or better, of course), you'll be in high demand. I'm not sure for how long you'll be in high demand, but I think this is a great move from Apple for ObjC-developers. It makes them in even higher demand. Anybody can program in Flash or Java, but learning ObjC is a bit different and perceived as more difficult, due to things like no automatic garbage collection and (sometimes) low-level C APIs. All those developers that have invested their time in learning these things are now rewarded by Apple.

I used to be an iPhone developer, and although it's really good for making money, I was personally frustrated by Obj-C. It's not that I can't program in it: I've been making good money from it for over a year. It's just that I also program in Haskell, and that is just such a better fit for me. I guess it's really a personal thing. I've decided to quit before I grew really frustrated, and start doing things I love. I'm not sure if it's a wise thing, but it works for me.

I was hoping that someday in the future we could use Haskell on the iPhone, either via the arm-ghc, jhc (which can compile to ansi C) or DDC (a Haskell-variant). So it's too bad that this isn't going to work anymore.

To answer the question: I stil consider myself an iPhone developer, and I am a bit upset.


I'm an iPhone dev, and I really don't care. I knew going into it that if I wanted to make iPhone apps that I was playing in Apple's ballpark and that essentially my apps could be blacklisted for whatever reason. I decided that if I ever came to the place that I had reason to believe an app wouldn't make it through the review process that I'd do something web based.

That said I took the time to learn Obj-C as I figured MonoTouch would deliver a subpar user experience and would also be a few steps behind whatever the latest version of the SDK was.

Truth be told, I'd much rather write F# than Obj-C. However, when in rome...


Good question. It is unlikely that many real iPhone devs are upset with the rules regarding 3rd party frameworks.

Here is a portion of my comments on mobileorchard

On the question of cross-platform tools, I think the old dev agreement did have some language against using 3rd party frameworks. The new dev agreement makes it much more explicit/clear. If I wanted to develop Android apps, I wouldn’t expect to use Cocoa-Touch and Objective-C. Similarly, I don’t need .NET or Flash to write iPhone apps. I like the Apple platform and code to it.

It appears that Apple wants to limit their app-store to developers who want to work with their platform. I think this is a legitimate desire. From Apple’s perspective, it helps iPhone users by improving quality and reducing quantity in the app-store and it also helps developers who invested the time to learn Apple’s platform. Obviously, it also helps Apple if developers use their platform directly instead of going through middle-men. Overall, I don’t have a problem with Apple’s policy.


I am. I'm an iPhone developer, and I do a lot of stuff in Phonegap. While Phonegap seems to be safe, for now (they explicitly allow Javascript in their Webkit in 3.3.1), that might change, which is scary. Also I have just discovered Titanium, and played with it. It's impressive: it's easier to make nice looking apps with it than Phonegap, and native components still react (a bit) better than elements in a webview. I would argue it's also simpler/faster to develop in Titanium than in Objective C. I would be really disappointed if the Titanium apps I'm building won't be allowed.

Also, on a more (for me) theoretical level: I do believe a lot of innovation around languages and compilers is and will happen outside Apple's 'approved' tools. They will hold their platform back if they don't allow this. It also pisses me of they change the rules like this. In a way it's a modern company disallowing tools like those newfangled 'Computer' thingies..

I don't really buy into the quality argument: It's also possible to build really crappy apps with Objective C (have a look in the Appstore). Also, they already have their testing in place, and can not allow crappy apps.

It seems Apple wanted to stop Flash. I have talked to people in the CS5 beta's, and it's not easy to build a well-working Flash iPhone app: It takes a lot of optimization. So I understand they not wanting Flash apps. But the way they worded this has a lot (too much) collateral damage.

tl;dr: I'm affected by this now, it sucks both in principle and in practice.


I tend to feel this was more about stopping the potential for a move by large numbers of developers to platforms that allow targeting multiple devices with one codebase diminishing the advantage apple enjoys in having exclusive Apps.


i left the iphone game middle of last year. i had some fun but it wasn't the business i wanted to be in. anyways, these new rules are in keeping with apple's general disregard for developers. i don't think this particular rule would have affected me so much because i had already resigned myself to writing obj-C (which i grew to like after a while).

the general theme i see in some apple's more controversial policy changes (e.g. removing erotic apps, restricting developer tools) is to improve the quality of apps, both in terms of content and performance. i think a lot of the problems they have stem from the structure of the app store and that's what's incentivizing shitty, throwaway apps. restricting developer resources seems like a short sighted approach to addressing this. honestly, if they just started ranking apps by total revenue generated (instead of download volume) i think a lot of their problems would be solved. developers would be far more willing to put the time into making a quality app if they thought they could actually charge more than $0.99 for it without getting pushed out of the ranking.

this was one of the reasons i left iphone development. i spent a month or so working on a knockoff of Set (called Fetch). A friend did the graphics, i implemented wireless multiplayer. I really tried to create a nice application. I barely made enough to pay the designer and certainly didn't make enough to account for the time spent on it. I made another app called eyeTrip in a day. Not quite as dumb as Sound Grenade, but close :) Anyways, i made more money in a day off of that then i made off of Fetch. Once I realized that was the game, I started looking for a job.

I guess my little story is not specifically related to the OP, but the point is that there are much larger problems with developing for the app that are driving away developers.


There is a "Top Grossing" app store list, currently at the bottom right of the landing page. #1 is currently MLB 2010 which is $15. #2 is The Sims 3, $6.99. #3 is Red Laser, 99¢.

#6 is an app called "iRa Pro" which integrates with surveillance systems to show you the current feeds, and costs $900.


shows how much i've been paying attention :)


I'm not really upset about their rules, because I'm not, nor ever will be, an iPhone developer. Apple has always been about control, and that's just not a world that interests me. I'm much more in favor of the web, Linux and that sort of thing, just as I was when Microsoft ruled the roost. Luckily, the world of computing is big enough so that there is room for everyone. I just hope Apple doesn't become the default mobile phone platform; but I don't think they will.


I'm an iphone developer (or at least, I have been intermittently in the current project I'm working on). Other than the iPhone, I developed a Java ME app once (I won't make that mistake again).

I'm pretty upset about it, but I'm not one of the people yelling at Apple everywhere (and honestly I am one of the people that got tired really quickly about how much it was filling up the front page of HN). It doesn't affect the code I've written-- I used Objective C, all the way, because I was new to the platform and that's what it's documented with.

Honestly, it scares me, and it scares me enough that I have no real interest in developing for the iPhone anymore. Apple doesn't appear to care about its developers. This isn't so bad, except that it also has a lot of control over its developers. I have little investment in the platform (one app? pff), and not much reason to develop for it (users are not really that big of a motivator here), and so I quit. iPhone development is a gamble I don't want to take. (And of course, the new change prevents me from hedging my bets and developing cross-platform apps. How annoying!).


Well mobileorchard is shutting down and many of his comments seem to indicate at least a few developers are following him

http://www.mobileorchard.com/goodbye/#comments

But by in large I think most of the developers upset by this are ones who wanted to develop for the iPhone not ones that are already. Since those who already did develop for the iPhone would obviously know how to use Objective-C already. The true cruelty of this is that Apple basically pulled the rug out from under these people after they'd been waiting for over a year (since CS5 was announced)

Anticipating something like that for so long and then having it taken from you at virtually the last minute is bound to cause a lot of anger


Wow, I hadn't heard about Mobile Orchard...

I've definitely had reason to question my own position as an iPhone developer having endured a stunning rejection myself recently but I have to say that, as someone who's developed for many platforms over the years, my sympathy for anyone who let learning a new language stop them from building something is limited.

Either way all this is certainly "fuel for the fire" of my plans for developing a new platform.


Curious what other platforms you are considering. I chose iPhone over Android because I perceived the latter to be a poor marketplace to sell apps and of fragmentation of the OS. I'm now wondering if I made a mistake or if mobile web apps are actually the best route to take.


I'm considering developing a new one.


After the iPad announcement in January I bought three books on iPhone and Cocoa development and spent a few weeks learning it before deciding in the end that I just couldn't live in Soviet Apple-land. The technology, sure, no problem -- but the contract terms, well, I thought at first I was going to choke them down, but when it came to actually signing, it felt like my self-respect was on the line.

I'm not upset at their latest whims because they're only more steps down the road I already balked at. They already banned the interpreter, why not ban the compiler? I will never write a native iPhone app except perhaps for hire, or after a regime change.


Do you really expect a regime change at Apple? Jobs walks two feet off the ground in Cupertino.


isn't this a repeat of history though? his controlling nature cost the apple II, to the anything goes Windows/Microsoft, and it will likely do the same to ChromeOS/Android and Google. if and when apple again loses it's grip, will he be ousted from Apple? my bet is no, if only because they wouldn't want to bet against him and be wrong for the second time. but in my opinion, he's an incredible innovator, but he sucks at follow through.


Nope, but I didn't expect the Soviet Union to collapse either.


I'm currently developing iPhone app code, at justin.tv.

I wouldn't say I'm upset exactly, I just think Apple is being needlessly controlling right now (by which I mean they're being controlling just because they can, not because they need to be) and that turns me away from wanting to develop code for their platform again.

It also makes me think twice about buying any more of their products in the future. Again, I'm not "in uproar" - I just think Apple is probably no longer a very good option for me as a hacker/consumer.


I gather that the Gambit-C Scheme community is not happy; they've shipped multiple games and at least one for the iPhone, see "Scheme is also dead on the iPhone" http://news.ycombinator.com/item?id=1253420.

Outlawing modern programming language technology (C/C++/Objective C are all old, at base they are '60s to early '70s languages) along with what I'm sure is indeed a lot of awful multi-platform middle-ware can't be good.

For people like me who are used more powerful languages, one higher up on the Blub scale (including Lisp at the top, of course :-), this shows either a failure in execution (of the ToS language) or that Jobs doesn't "get it" when it comes to programming.

ADDED: (forget this early in the morning while editing this post): this is straight out of Dilbert, Jobs is demanding that i<whatever> programmers to work harder, not smarter.


Seems kinda silly that you're referring to Scheme as a "modern programming language" and then excluding C/C++/Objective-C. Scheme dates back to 1975, while Objective-C is only from 1986. So by your standards, Scheme would be considered less modern than Objective-C.


It has to do with how good old plain LISP, pre-Algol-60, has a nature that has allowed it to naturally and steadily evolve (well, subject to all the usual human foibles, e.g. the fate of original formula LISP being capped with Common Lisp).

C hasn't in my considered opinion significantly evolved from its mid-70s beginning. Too much of C++ is held back by its C compatibility requirement, but I will admit I haven't paid attention to it for a few years. In either case, they very seldom have GC runtimes, and very few interpretive run times for them have been developed. Scheme had both in 1975 (by virtue of running on top of MACLISP).

As I understand it, Objective-C is C with Smalltalk style classes. Wikipedia says it "is a thin layer on top of C, and moreover is a strict superset of C." A quick skim of the Wikipedia article suggests that it's very much like C++ in how I view this, both are mid-'80s languages that built something on top of C with similar backward compatibility and efficiency design goals (the two are of course linked), including no GC.

You can do conservative garbage collection of both and Objective-C 2.0 added it as an official feature (although that's not available on the iPhone version according to Wikipedia).

Anyway, all things considered, I don't consider them modern in the way Scheme and Clojure are (Common Lisp got stuck in amber), and I'm pretty sure I'd consider some version of FORTRAN after 1977 more modern than they are. Certainly higher level, see Fran Allen's flames in Coders at Work for how much the low level nature of C has set us back.

C is a good universal assembly language. C++ is good for certain performance critical applications (VLSI design and simulation were good '80s examples as I understand). Neither are good for many if not most i<whatever> applications.

I can't render an opinion on Objective-C's suitability for these type applications (I only have theoretical knowledge of Smalltalk style objects and know nothing about the whole package), and it's almost certainly the best language under the new restrictions ... but suppose we just defer this until it has a REPL. (A LISP feature from the very early '60s, after the first punched card FORTRAN subroutine version. They'd just switched from vacuum tubes to transistors....)

That is or was a design goal, but I gather from all the discussion it's not even on the official road map. Meanwhile, today you can use Gambit-C Scheme to run a REPL on an iPhone ... you just can't use this implementation that compiles to very efficient C for your app and follow the new ToS.


Not a developer and don't object to it. When I bought my first iPhone 3 years ago I did so because all these other SmartPhone platforms were so unpleasant to use. I don't mind letting Apple do their thing and protect the sanctity of the platform. If it upset me I'd just use something else instead.


I am an iPhone developer and have no problem with this rule. It makes sense and is in line with Apple's policies before. I think most people won't be upset if they realize that Apple is not a business model, they are just a channel. You can't build a business on Apple because they can shut you down when ever they want either directly or indirectly. The iPhone is the first mobile platform that I created apps for and I have been considering developing for other platforms as well. I enjoy working in Objective-C and this is why I will spend more time with the iPhone/iPad projects.


You seem to contradict yourself.

"You can't build a business on Apple because they can shut you down when ever they want"

I totally agree...so why are you OK with that when you might be next?


I'm a C# developer who learnt objective-C and started down that path, went to Monotouch when it came out as it made sense. I trust people who specialise in memory-management to do a better job at object allocation and deferencing than I can do manually.

I'm annoyed that Monotouch and a few others are essentially caught in the cross fire of what is clearly an Adobe hate campaign. Monotouch makes you write using wrappers around UIKit and doesn't water down Cocoa unlike the Flash libraries do.

I would love to see a solution where the clause was slightly amended to read "C-derived language" (though arguably ECMAscript is based on C). They would also need to remove the tools clause which won't happen. There has to be a court case over this if it doesn't change, and I fear Apple will probably win.


As a software developer I am annoyed that Apple is exerting so much control over their platform instead of being more open with it.

But as an iPhone developer I don't really care that much. It doesn't really affect me since I'm already doing my work in Objective-C.

I'm not exactly surprised by the recent changes and can understand the logic behind their choices.

I think most of the outrage is coming from Flash developers and others who were hoping to be able to leverage their existing skillsets on the iPhone platform.


Before this, if I was going to develop for the iPhone, I'd have leaned toward doing it in Scheme. Now, my only options are languages I don't like.

Previously, if I had an idea for a mobile app that seemed financially promising, I'd have written an iPhone app. Now I'm convinced that developing for the iPhone platform is too risky. The only way I'd develop for the iPhone now is if I had some other project that would really benefit financially from a mobile tie-in that didn't work as a web app.


Why are you interested? Are you suggesting that I don't have the right to be outraged if it doesn't directly affect me?


I think it's a really valid question. If all the iPhone app makers now turn up and say "nah doesn't worry me" then it's an interesting metric.

I don't think anyone is saying that people don't have the right to be disgruntled or disproving unless they are developing for the platform.

It's simply interesting whether the concern is drive by a feeling that this is wrong, or because it materially affects people.


I'm a Flash developer and I've produced multiple games I would have looked at pushing to iPhone, not to mention future games I develop.

I can also tell you the Flash game development community is not happy. We were all looking forward to this.

On top of that I work a lot with .NET and have been looking at MonoTouch for a long time.


Learn Objective-C and OpenGL :) Im not being an arse when I say that because if you truly want to dive into the iPhone space you have to play by Apple's rules. If your games are awesome then I will buy it, and you can go and make it now and in a few weeks time it could be on the store. Think about it, mid May I could buy your app.

Why wait for a miracle to happen?

I find it interesting that so many people believed that Apple would allow this to happen and are now bummed that its been blocked. A sign of laziness or of one-eyed devotion to Adobe? I say, stop suckling the Adobe teet and enrich your coding knowledge and portfolio. Learn Objective-C today! propaganda poster :P


I don't want to learn another language and platform when there are two I am already intimate with that can be used to deploy apps on that platform.

Adobe, Novell etc enabled us all to skip learning a language and platform that is otherwise utterly useless .... would you learn Objective-C for anything but iPhone? Course not, so why would you learn it at all if something you already know can get you there.

I don't even have time to learn another language, I'm busy working my ass off on my startup - analytics for games. Thank fucking god I didn't pick "iPhone" cause the new terms kill all the guys who've put so much time and effort tackling that too.


It's not about Adobe. It's about waking up one morning and finding your development toolchain, process, or application being prohibited for some bullshit reason that Apple came up with to sink somebody else's battleship.

If they did it to Unity3D, they might do it to you, too.

First they came for the crappy Flash games, and I said nothing because Flash sucks...


I'm not an iPhone developer, but I am surprised how many of them here think they're being helped out by this.

I see it as a step to hinder them (this is modified from another comment I wrote a couple of days ago...):

1. Apple are increasing the barrier of entry for iPhone devs in to OTHER mobile development worlds - they're no longer able to develop a solution that is easily portable to Android, WinMo, BB, for example. They're forcing devs to bet their ability to write popular mobile apps on the fact that Apple will always provide the platform they need, and (more worryingly) that they will continue to keep the App in the App Store. If Apple chose to duplicate the functionality of any app themselves, the developer can't easily move to providing it for Android - so they're screwed. Given how Apple don't seem to care about doing this, I think it's bad for iPhone developers' job security.

2. There will be more ObjC devs now, so iPhone developers' hard earned ObjC skills will be less unique and useful in the long run.

If, however, the move results in a working ObjC-->Other platforms compiler, point 1 becomes less important.


Keep in mind that it's not just iPhone. It's also that brand new iPad thingamabober we're talking about.

This doesn't just affect existing iPhone developers. It affects people that may have been interested in jumping over to this new, very compelling platform.


I'm currently not an iPhone/iXX developer and this Apple move is a strong incentive to stay away from it. The risk on the investment into it is too high for me now. By risk I mean being suddenly locked out for arbitrary and unpredictable reasons, or access fee raised, etc.


I'm an iPhone developer and this doesn't change a thing for me. I'm doing it for fun & seeing my apps in the hands of ordinary people far outweighs all of Apple's nonsense. I have a deep hatred for everything Flash & Flex. Insofar as Flash is concerned I'm actually happy about Apple's decision, not so much for the other cross-compilers.


I'm not professional developer, but I'm a passionate computer hobbyist. I make a good income with my day job - I'm a medical doctor - so I have no financial motivations when it comes to programming, it's just something I like to do.

When I became interested in web development I spent some time learning Django. As a result, I put together Instant Django, a no-installation-required Django development environment for Windows, and I also wrote an introductory tutorial. Over the last few years I've had a couple hundred thousand downloads. I don't make any money from it, but a couple times a week someone emails me a thank you note, which gives me a little thrill.

Last year I decided to learn to program the iPhone, because it seemed interesting, and my 3 year old daughter loved to play with my phone. It looked like a great way to share my hobby with her. I've spent the last few months writing an introductory tutorial for iPhone game programmers, based on the Cocos2d framework.

I've been unhappy with Apple's policies up to now, I especially thought it sucked eggs that I had to pay $100 a year to run software on my own phone, but I tolerated it. With this latest move, I've decided to drop the whole thing.

I purchased an AT&T Nexus One, and I've begun learning how to program for Android. I've also started to rewrite my tutorial.

Will Apple miss me? Nope. But I'm a passionate user, and they've lost me for good.


I've had one app in the App Store since its launch and admittedly only do hobbyist work now and it doesn't bother me at all. I bought a Mac and learned Objective-C just to make stuff for my iPhone and I learned to really like Xcode and Obj-C.

I can understand why developers want their work on as many platforms as possible but when each platform has distinct interaction and design paradigms they can't fulfill them as well as they should by targeting the least common denominator.


People love being outraged by things. Gives them something to talk about I guess. That's why people buy The Daily Mail.

Personally I think it's a good move by Apple. Good for their business, good for iPhone users.


How is it good for users? The quality argument is bunk, and the net effect of these new rules is to restrict choice for developers. When developer choice is restricted, does that not also restrict choice for users?


The quality argument isn't bunk. If a single tool becomes mainstream to 'automatically' build the same app for iPhone,android,flash,html5+js,etc then the quality is going to go suffer. Apps won't be well tuned to the individual platforms.

I disagree it restricts choice for users, and I don't think there's such a problem on the appStore. If anything, there's too much choice and not enough quality.


I blogged about this here: http://www.alwaysontechnologies.com/blog/2010/04/09/section-...

I think Apple did native iphone developers a favor. Just think about the army of Flash developers jumping into the app store.


Apple's terms were never agreeable to me, so I never started developing for it in the first place. I figured something like this was inevitable, so it changes nothing for me.


I'm a developer. I have a simple app in the app store, and I spent time porting it to Titanium so that I could add features faster by using Javascript.

I also have two simple internal apps that my sales people use that I was going to port to JS, then to the iPad, so I could more easily make modifications since none of the applications are performance sensitive. If there were bits that weren't performing, I would code only those bits in Objective-C or change my algorithm. It takes about 10 times longer in days for me to develop in Objective-C. I'm still debating if I want to cancel my iPad 3g pre-order, since I won't be able to do with it what I want, except browse the internet on the can. I'm definitely not going to order the other iPads (~12 sales people) that I was planning to order once my software has been modified. Further, I already put work into full-featured ports, so instead of wasting the work, my apps will be coming to other platforms, although I set out to just increase the speed of iPhone development.

I'm going to write a blog post on this today at some point.


I have a Java/Flex background, and I have spent the last four months (approximately 300hrs) fully invested in learning Cocoa/Objective-C. I love Categories and Protocols. NsNotificationCenter is beautiful. Cocoa is design patterns in real-life. Instruments is amazing. IB doesn't suck as much - it's good for some views. Cocoa/Objective-C are so well designed that I have been struggling with an impedance mismatch when going back to Java/Flex and most importantly, Windows and 'Not Responding'. I can understand why Unity3D and MonoTouch.Net make things easier for developers. Because at the abstract level, the consumer doesn't care how you wrote the application - they care about how your app makes them feel - as in did they get personal value, does it make them look cool, does it look kick-ass...

However, if an app can be written once in a framework and deployed to Android and iPhone simultaneously, that weakens the main tent pole of Apple's strategy.

I don't support Section 3.3.1, and I believe it will be enforced (with high-profile exclusions).


Not an iPhone developer and I disagree with it. It seems ObjC iPhone devs will be happy since it means less competition for them. As a user, you should be pissed though since you WILL miss out on quality Unity3d, Appcelerator, and Flash apps/games. When I say "quality" I mean that Apple did it's job with the review process and didn't accept the crappy Apps.

I also think it was an "evil" move to wait until days before CS5 release. From a business perspective I believe Apple would have made more money by the potential sales of the banned apps (think of Farmville #s) but don't want to lose control of their vision of the "future of the web". They simply don't want any chance of a superior IDE for iPhone to be created.

All arguments of "quality" seem silly to me since that's the point of the review process. How much does it cost to hire a reviewer? How much money will the influx of quality Flash/Appcelerator/Unity3d apps bring? It doesn't take a rocket scientist to accept 60+ fart apps.


I'm an iPhone developer. While I'm not generally a fan of restrictions, I also don't quite get where the outrage is coming from. My reaction was "So? I never planned to write in anything other than Objective C anyway!"

I have observed that for every low-level platform (in this case, iPhone OS) there tends to be one or two languages/paradigms that are the most natural fit for the platform, due to the way the platform itself is implemented. For native Windows, those are clearly C and C++. (For .NET, it's C#, but I think it's important to note that would not have worked out well for Windows, if the .NET platform itself had not been executed upon so carefully.) I do think that really first-class apps are much more likely to come from people who understand the platform well enough to implement for it on its own terms (not that this in itself is a guarantee of quality).


I am a developer, just not developing apps on iPhone/mac. I am concerned but not angry at the new policies.


Why is it interesting? You can be affected by the rules even if you are not yet an iPhone dev. Since many companies copy Apple's approach, you can be affected even if you never intended to dev for iPhone.

What if you would like to develop for iPhone, but don't like C? Not entitled to an opinion?


If the new rules affect the number of quality apps, consumers will vote with their wallets. I have no problem with developers leaving a platform based on the new language, but Apple (and the developers) work for the consumer and should be doing what is in their best interests. Apple believes intermediary compiling spawns less-then-great apps, so they are doing what they feel is best for the customer and their bottom line.

If you're a developer who doesn't like it, switch platforms. If you're a consumer who doesn't like it, buy something else. If enough people do so, Apple will change or fail. If nothing changes and they maintain their quality and popularity, you really can't blame Apple one bit.


Definition of an object to hold some state in Objective-C vs Io: http://gist.github.com/361355

Think of how many more apps would be created if we could use a less verbose language to create them.


Yeah, obj-c language is crazy. About the only thing more archiac is cobol. I don't care how innovative it was in the 80s. It's a damn fossil nowadays.

When going through tutorials and examples I just couldn't stop myself from saying: this would be so much simpler if I could write it in c# (my prefered language, but a bunch of others would come ahead of it if I had to make a list).


Crazy?

It's just smalltalk mixed with C. Learn those two, it makes total sense.

C#'s only features on the language IMO were: Better XML api's and Garbage Collection. Both of those are actually iPhone limitations, not language limitations.


Fine not crazy, but definitely archiac. Saying it's as modern as 2 other 30+ year old languages is funny. Heck, doesn't Apple even have a commercial where PC guy gives Mac guy a C manual or something like that?

It just takes so much more code than modern languages. Obviously that doesn't bother some people but it bugs me. I find this especially frustrating from a company that brags about how user friendly it is. To me obj-c is the DOS of programming languages.


And C# is Java2.0. It's the re-enterprisation of a 18 year old language designed to replace cobol.

I'm not an apple apologist, and wish I could run a real dynamic language on the device. C# however, was not that.


Actually, that may be exactly why apple is doing this.

Their reviewers are swamped with copious items they think are low quality (their words, not mine, and my solution for them is actually "Care Less").


Replicate the same in Java, and let's do the comparison.


I have been in the process of porting an existing iPhone app over to Titanium as well as doing some contract iPhone development.

I am frustrated by Apple's decision, but I understand it. I don't enjoy ObjC, but I can handle it.


I am a developer for the platform and am a bit pissed. I have done a bit over a hundred grand in sales and another bit in AdMob revenue from free apps.

I'm pissed less from a pragmatic perspective and more on principles. I'm working on my Ph.D. in CS, working on programming languages. How hypocritical is it for me to work on a language-locked platform when I work on things like a parallel dialect of ML in my real job?


I speak objective-c. I like it's verbosity. I couldn't care less about the recent changes in the toc partly because I knew this was coming.


Maybe people who are upset about the new rules are not iPhone developers because the iron grip Apple has on that platform? If the rules were more lax those people could become iPhone devs.


Well given I already wrote a layer on top of titanium, I'm spewing!


As a prospective (licensed but unreleased) developer, I don't care about this particular rule, because I'll be working directly in XCode. I do care about how Apple sprung it on their developer community out of a clear blue sky, trashing a lot of peoples' hard work in their quest to hose Adobe.

If Apple doesn't mind taking a wrecking ball to Unity3D's business model, who's to say they won't come up with some crazy rule next year that prohibits something I'm doing? How can I build a healthy long-term business around iPhone/iPad development, when I could find myself on the wrong side of a turf war I didn't even know was being fought?


Same boat here. For me, this is a really touch choice. I like the SDK and I think the iPhone OS is by far the best mobile OS out there, but I'm not sure I want to back this horse.

When Microsoft was the Evil Empire it was easy to stay away from them because I didn't like their software, but it costs me something to stay away from Apples ecosystem since it's really good. But I'd much rather see the mobile web succeed than the App Store and the other closed ecosystems.


I'm in the same boat. I know obj-c, but wanted to use unity3d for a game and phonegap to leverage my html5/CSS skills. Now, I'm spooked by what I perceive is Apple's prerogative to be arbitrary. I understand needing to cull the 'crapps', and that cs5 may have been the target. But why use carpet bombs when a scalpel would have done the job just as well?


I'm pissed. Not sure if I'm and iPhone developer now that Steve says PhoneGap is out. Oh, well...I guess I won't be able to make 99 cents 10 times a day through iTunes sales.

On the plus side, using PhoneGap I can still develop for Android and Blackberry...and if Steve changes his mind I'll definitely take that $10 a day.


78.


I'm not accusing you of anything. But hopefully no one will infer that all the non-iphone developers should stay quite.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: