The problem is Apple has no real competition. They can do almost anything they want without fear of retribution because your average consumer has no idea what any of this means.
That's bad news for all us pissed off developers since Apple's new platform will continue to be extremely popular in which case devs are forced to develop for it.
Google seems to be inching towards being a real threat but they also seem extremely unfocused. Does anyone really need a toaster running the latest version of Android?
Apple needs some competition in this space and Android-based mobile devices seem like a really distant second. It's time for Google to kick it up a notch.
Google is taking the shotgun approach where Apple is taking the sniper approach. Either can hit the target.
If my toaster did run Android, that wouldn't make the HTC EVO any less appealing. The apparent lack of focus on the Android front isn't because Google's unfocused -- it's because there are a lot of companies besides Google working to make Android happen (Sense UI in particular has been great for Android).
With the rapid releases of Android 1.5, 1.6, 2.0 and 2.1 in the past year, I'd say Google has been kicking it up a notch. The problem is that the carriers wait for way too long to push the updates out to their users. What use is progress if many Android users still can't check out Google Goggles?
There is tons of real competition. There will probably be 50 Android smartphones on the market by the end of the year, if not sooner. RIM and Symbian are still ahead, even if you see them as waning.
Yes consumers have no idea what any of this means. But that actually works in favor of Apple's competitors. When an average consumer looks at the smartphone market, Apple may stand out, but the iPhone is still just one among hundreds of smartphones. There is tons of competition on features and price.
Finally, Google doesn't need to kick it up a notch. Android is doing extremely well. Keep in mind that Google doesn't need Android to make money. Google doesn't care if Nexus One sales are sluggish. They are in the market to change the game. And I'd say they are succeeding with that.
It's easy to optimize product to cut costs, or put more engineers on the project and add features.
What's truly difficult is reduction. Removing "features" and simplifying the product. The success of the iPad and iPhone is not about what it-- it's about all the things it doesn't do.
Yes I've heard lots of people toe the Apple company line on simplifying before. But I thought we were talking about whether or not there is smartphone competition.
If you want to believe there is nothing that can truly compete with the iPhone because of its magical UI or lack of features or whatever I can't prevent that. Yes, it's true, the iPhone is the only iPhone in existence. But in that sense nothing can compete with Android either. Nobody else is producing an open-source smartphone os even close to its quality. If you get specific enough, everything is in a category of its own without any competition.
My original comment has nothing to do with whether Apple has produced the perfect mobile os by reducing and removing features. It has to do with the statement that Apple has no real competition.
"If you get specific enough, everything is in a category of its own without any competition."
Of course. The problem the parent is describing is that the smartphone market, the person on the street with an iPhone, who doesn't have a clue what "objective see" is, has his/her own specific criteria for buying a phone, and so far they seem to line up with Apple's criteria pretty well.
Android can compete on features, price, openness, open-source, goat-teleport-count, or any other metric they can find. It won't be "real competition", in this sense, until ordinary people find reasons to actually buy it in large numbers.
You're taking Apple's domination for granted. How did they get it? There were half a dozen smartphone platforms before iPhone OS, but all of the devices had lousy quality, lousy user experience, and a lousy marketplace for third-party apps.
If you read the rebuttals to the complaints, you'll see that there are several practical, quality-oriented reasons why 3.3.1 was a smart move. It's just one of hundreds of quality-improving measures that Apple has done to make the iPhone "have no real competition".
They still exist, but the situation is no longer the same as it was when the iPhone was announced. I believe that RiM and Symbian have improved since then.
This is what I don't understand from all of the developer "outcry" over this: you're not forced to develop for this platform. If you don't trust it anymore, then stop developing for it.
There were ways to make money as a developer before the iPhone came along. There are still plenty of ways to make money as a developer that don't involve dealing with the iPad or the iPhone.
These counter-arguments sound so much like the web developer hatred for IE 6 years ago, where everyone was bemoaning having to develop code specifically for IE 6, and everyone was saying that they had to keep developing code for IE 6, because that's what the users are using. But, years later, it has finally become OK to abandon IE 6 altogether; it could have happened a long time ago if developers had just quit supporting garbage.
Android/Google are looking for good applications developers. Go work with that instead.
Well, I guess everyone is hoping that if the outcry is severe enough, Apple will take it out of the agreement. We can be pretty certain that if there is no backlash, the clause will definitely stay.
Ummm, I'm working on a site that still generates 20% of its multi-million revenue from IE6 alone. In the same vein, lots of developers will be developing for iP* for years to come: we have to be where the customer is, and unfortunately that customer has locked himself into the platform with his AppStore purchases.
I think you're absolutely right in saying that Apple has no real competition, but it's interesting to look at the trajectories of the various elements of the smartphone market and consider what things might look like in 5 years (remember, the iPhone was first available 3 years ago). Android doesn't compete at the same level as apple today, but it is far more likely to start progressing exponentially at some point when the conditions are right. At the same time the barriers to entry for building hardware are quickly falling, so we may yet see some new entrants.
Apple's new policy won't cause their developers to leave immediately, the market is just too big. What they have done is sent a clear message to developers that if they don't want to do it "the Apple way" then they should be keeping their eyes open for other opportunities. Apple has essentially made a huge gamble that they can be the smartest guys in the market forever. I think that's unwise.
Devs are not forced to develop for it. You can go develop for Android. You can go develop for RIM. You can go develop for non mobile phones. Devs develop for the iP* because they want to sell to that market. It wasn't too long ago though that we saw a whole bunch of articles on HN about the myth of the get rich quick AppStore apps. Apple is skating on thin ice because if the developers leave then the iPad loses big. The pain may not have crossed the average developers threshold yet but Apple still has to play a dicey game with how far they can go before they do cross the threshold.
In my city Vodafone has said it's going to start shipping Droid and Nexus One. They are already shipping some Android-enabled LG model.
And they have a big marketing machine ready ... its competitor (Orange) has been shipping iPhones for a while, but I haven't seen many around (mostly because people haven't jumped on the smartphones wagon).
And I think it's the same situation in the rest of Europe. It's the carriers that make it happen ... and Vodafone is a huge player.
These are rational arguments for non-ObjC developers to be pissed at Apple. None of them are arguments for APPLE to change its policy. In the medium term it is clearly better for Apple's interests to implement 3.3.1, to maintain control over platform and encourage differentiation of its hardware (the way it makes most of its money!). In the medium term, they have more great developers than you can shake a stick at, so they won't cry about losing a few thousand more.
The only real argument that makes sense is that long-term, enough developer goodwill will be lost that they will go flock to a better platform and eventually tip the balance against iOS. That certainly will not be for the next 3-5 years, which is an eternity in tech.
I am not an iOS developer nor do I own Apple stock, so I'm just calling it like I see it. In short, it's a great business decision for them and I really doubt developers will make them pay for it, either short or medium term.
> 5. For developers it’s about more than just business
I imagine Jobs might reply, 'for business it's about more than just developers'. Adobe's proprietary attempt at creating a cross-platform layer is thwarted. And Apple counts on having enough developers for new apps who already have a background in (or are willing to learn or relearn) Objective-C, C, C++ and JavaScript. It's simple and pragmatic.
That said, I'm a developer and I generally only use FOSS products for software. But I give Steve Jobs and his advisors more and more credit for business intelligence.
A lot of these comments are about Android. Could be that Apple learned from Sun's mistakes, whereas Google wasn't old enough to be around for the full cycle of that. I love Lua and Scheme. I wouldn't be surprised if senior engineers at Apple also love various different VMs, etc. And yet they would fully support this strategic move by Apple.
Why? Steve Jobs' genius has less to do with his douchey presentations and more to do with seeing the big picture dozens of business quarters before everyone else. When you've been seeing that far ahead for three decades, and have all the experience and confidence from succeeding with that like fourteen times, controversial decisions like with Section 3.3.1 aren't as difficult. They are one of 50 decisions that you've made 6 months ago with many different things in mind that won't be released to the public for quite some time -- many of them involving hardly black-and-white tradeoffs (see the Wikipedia entry for Jobs quoting Wayne Gretzky).
Apple has a model that works for them. And free software, free digital rights management, openness -- if it gets in the way of their business strategy, by default they're going to plan around it.
If you really want Apple to change their policy, get the CEOs of businesses who develop apps to voice concern to Jobs. Show that Flash and Lua and Mono or whatever are mature enough technologies from a business standpoint. Make the argument that it's too much of a gamble for the iPhone/iPad 3GS to be without flash support with other tablets on the rise. (Apple is of course betting on HTML5 pretty heavily.)
I guess my point is that: 'Five rational arguments against Apple's 3.3.1 policy' is a good start. But those are mostly developer-based arguments. As a developer whose not in the embedded space, I have no idea what the business strategy arguments would be. But as a developer, I know when a client's use of a library's interface is slighty off. Or something like that. Maybe I don't even know that. Anyhoo.
The web is not a carefully curated gallery of web pages and yet we're still able to find the good stuff all the time thanks to intermediaries of discovery
This is hardly a strong argument, as the main "intermediary of discovery" is Google, and most internet users are all too ready to give up their banking information to websites which have an official looking header on the page. Just because it worked for the web doesn't mean it'll work for Apple's AppStore.
So you'd like for the web to be put back in the box and replaced with an AOL Walled Garden of wonder? Freedom can indeed be dangerous, but I'd rather be free to hurt myself than smothered to dead by paternalism.
The existence of a restricted marketplace doesn't mean the greater internet must become just like it, as if through some kind of relative application of logic.
The internet--and the real world in general--can host a million restricted marketplaces, each designed for specific interests--and still be free in general.
Your reductio ad absurdum is suggesting that the presence of a gated community in the Hamptons means that every neighborhood ought to be gated.
I believe that forcefully weeding out the crap is detrimental. It's hard to define crap. If a buggy app provides functionality users consider critical, is it crap? Wouldn't it be better to let it evolve into not crap?
All are good points, but number 2 is the big one for me. That was my first thought when I heard what Apple was doing, and I think it's important to keep that in consideration. While I don't always agree with DHH, he makes some good, rational points here. It should be noted that most of these arguments have been made elsewhere, but it's a great summation.
It's fascinating. This is the way I look at them, as being on the side of people who agree with Apple on this one.
#1: Don't agree. Apple has 180,000 apps in their App store, maybe a good time to remove incentives for a new influx of non-programmer-written apps straight from Flash? Oh, they're getting rid of other stuff that also encourages people to use other tools than their own? I think they can live with that.
#2: They're not. Tell me where and when Apple said: "You will be able to develop for the iPhone using any and all tools of your choosing." They didn't. They're simply clarifying what's been their position all along, that XCode/Cocoa is the environment in which you create iPhone apps. Sure, other stuff have been able to sneak in stuff, but hardly with an Apple seal of approval. If you're using one of those tools without a suspicion Apple might not like it even before this, I'd say you're a bit naive.
#3: Irrelevant. Apple has told developers which tools they can use from the get-go. I imagine the existing cross-platform products have been too small to have been a priority, but here comes Adobe with something that creates iPhone apps straight from the desk of a designer. Yes, did you see the CS5 presentation? "Create iPhone apps without writing any code!" Sounds like great apps to me.
#4: Of course it's unfair. But there isn't any better way to enforce their rules. Naturally there'll be apps that fall through the cracks. But a "Aw, why can't I when that app could?" whine sounds very 7-year-old to me. They're putting up rules, if you follow them you should be fine. If someone does something that might be within the rules, but they're not sure, they might get rejected. If someone else tries the same thing, they might get rejected, regardless of whether the first guy was caught or not.
#5: Not sure this ia a very good argument either. For me, I develop for Apple products because I love the platform, and I think there are quite a lot of other apps that have been hanging around with Apple because we feel that is the best platform in the world. Not perfect, but best. And I like it when Apple says that what we've learned during the years of sticking by the company because of that conviction, rather than some sense of duty, is going to pay off. Sure, Apple could release the platform to any and all languages out there, implement C#, Java and whatever else might be popular right now. But that would seem to me to cater to the populist crowd, rather than the faithful, so to speak. And those programmers are the same programmers that will move away from the platform when something else catches their fancy. I think Apple wants people like Omni Group rather than the "Oh, lord, another device, another language, who cares? I guess I'll _have_ to learn it, then."-crowd.
What you've said there is that you are not rational with respect to your position re Apple. You explicitly say that people should work with Apple platform from a "sense of duty", that people should be "faithful".
This seems to me to make you unqualified to counter rational arguments.
Hm, nope. I'm explicitly saying work with Apple stuff out of conviction, rather than a sense of duty.
And I'm saying that Apple has a point in supporting the faithful, as in the people who are convinced this platform is the one they want to work with, because that group of programmers will probably stick around even when some new other thing comes around.
I don't have time to respond to each point, but I will say that it's well thought out. I don't agree with many points, but you've clearly thought about it. =)
"They're putting up rules, if you follow them you should be fine."
The big issue is that they are changing rules. They are. There isn't anything you can say that changes this. So even if you did follow the rules, you are still stuck with an unsure situation.
They're undoubtedly changing the language in the developer TOS, that is of course undisputable. =)
However, when introducing the iPhone SDK, they clearly said (about XCode) "This is where you'll be developing all your apps." I'm saying you could consider this a change in legal language to more clearly adhere to the spirit of the premises of that SDK.
The fact that people have been able to use products in a grey area to sidestep this, doesn't mean that the rules have been changed, just that they haven't been enforced before. Apple never said: You can develop in any IDE you want for the iPhone, and then changed their mind again. None of these tools that are affected have been approved as developer tools by Apple before, and people using them know or should have known that.
What has happened is that Apple is starting to clearly stress that Xcode is the only approved developer tool. The major change is that unapproved tools now clearly are marked as unapproved, which in itself isn't a change from before. They've always been unapproved.
Now, as far as enforcement, that might be just the same as before, since we haven't seen any rejections based on the new policy. Most people, including me, seems to be guessing on that this will mean some kind of enforcement as well, but we're just going to have to see what's going on there. Either way, if you've been using Apple approved development tools before this change, nothing has changed, and therefore there is nothing more to worry about after than before this change in stance.
"Either way, if you've been using Apple approved development tools before this change, nothing has changed, and therefore there is nothing more to worry about after than before this change in stance."
That's one way to look at it. Of course, then the question becomes one of a permissive development platform. You are only allowed to use what they say you can, and if they don't say you can use it, you shouldn't. And even then, they've proven in the past that even this isn't reliable. You can follow their rules, and it still not matter.
This isn't the first time they've done this. Just because they say you can do something now doesn't mean they won't pull the plug later. This is a volatile situation to be in. Now, I won't argue whether they can do it legally. Nor will I suggest that other companies can't do it. But Apple seems to be rather blatant about it.
Absolutely, I do agree this question is about a permissive development platform. And that's the whole point, I think.
As for the second points, I don't recognize what you're describing. What I can say is that I don't consider letting an app through into the App store itself is a seal of approval for whatever technique or tool that app is using, but rather a sign that they're not checking for whatever it is they're doing. If other apps get rejected for stuff others have been accepted for, or even earlier versions have been accepted for, that's a refinement of the approval process to me.
And yes, to some that might feel like a volatile situation. I'm suggesting that non-controversial app development (as in using approved tools, not writing apps that are in a grey zone when it comes to what they approve, and not using private APIs) is cutting down on that volatility in a big way, wouldn't you agree?
I concede that I might have missed your point totally, but since you're not giving examples I'm looking forward to a more verbose rebuttal in that case. =)
They killed "shake the baby", they didn't kill iFart. You try figuring out where to draw the line. But there is no doubt that they are culling apps for their content; "weeding" so to speak.
With 3.3.1 Apple is trying to control the overal UX. They can't reject bad music from the iTunes Store, but they can enforce basic encoding standards, so the music doesn't sound like crap for reasons other than the artistic content.
When they removed the "sexy" apps they were using a rule that could be made specific and enforced consistently. The picked adult content because of the peculiar standards that humans (and especially Americans) have when it comes to sex.
Or maybe it's really difficult to phrase a definition for "college humor".
Don't forget that a hypothetical rejection of iFart would have to be backed by legalese from the TOS. What phrasing would you suggest they add? (Alternatively, quote the existing clause you would have them invoke.)
I think it's a reasonable argument, but it's perhaps not stated as well as it could be. It's a response to the (presumed) justification from Apple that they want to do this because cross-compiled applications are often low-quality. So the argument is that if Apple wanted to weed low-quality applications out of the app store, then they should do that based on the quality of the applications, rather than based on the implementation techniques.
Clearly, though, the fact that the app store is already flooded with low-quality applications is indicative of the fact that Apple hasn't been doing that, which makes that justification seem totally bogus: if they really cared about low-quality applications, they could have done something about it long ago without restricting cross-compilation techniques. And if they wanted to put a stop to it now, they could still do it without restricting cross-compilation.
So to extend your analogy: if you want to weed the garden, then pull the weeds already. No need to have this strange level of indirection that will result in removing only a small number of the weeds while also eliminating plenty of flowers.
Actually, rather more like saying "We won't accept another shipment of flowers mixed up with weeds until we sort the weeds from the flowers we already have."
That's not what they said. They said we are not taking flowers/weeds combinations that arrive on purple trucks. But if you want to dump a whole mess of stuff in a red truck, that is fine with us.
I been saying this ever since I first got wind of the new TOS. We went away from Windows because MS was holing a leash on us with their API lock-in. Now we're 1-up ing that with Apple's new TOS which takes the MS lock-in to a whole new level.
People say "oh but it will keep the already crap x-platform apps out" to which I say "Yes it will keep the would-be flashy x-platform POS games/crap apps out, but it will also keep out the apps that let me do my business better that run on Android / WebOS / iPhone because the developers of the TOOLS had to cater to a larger market share."
If I am making a tool that takes pictures and uploads them to my website for special needs of people running on the BlackBerry, Android, WebOS, iPhone because it has to be a compliment to my web tool there is no reason why I can't write it with minimal effort and use the iPhone store to distribute it for free with that exact goal in mind! Its not about making a wonderful iPhone app, its about doing my damn business and giving a business process convenience using the iPhone.
Not every iPhone app has to be a super innovative new way to run the world, sometimes its just a piece of crap complimentary tool that's just needed to do some grunt work easier.
> Apple's new TOS which takes the MS lock-in to a whole new level.
Since the days of the Mac, Apple has always been about maximizing control. MS won because the 'settled' for the OS, whereas Apple wanted to control both the OS and the hardware. We probably wouldn't have things like Linux and FreeBSD easily available if that sort of locked-down environment had prevailed.
This is exactly the thinking that Apple doesn't want going into App Store apps: "I'll just put up this good-enough piece of crap because that's all I have time/money to do." They've got a ton of businesses wanting to be on iPhone so they're willing to lose those businesses that will only put out crap. I agree with you that putting out a piece of crap might make the most sense for your business. But it's not what Apple wants for its platform.
A key thing to understand here: the existence of a platform controlled in this way increases diversity, since there are several other prospering platforms that do things differently.
I'd say that now that Apple has plenty of volume in the app store, they're focusing more on quality. I imagine they want to implement higher standards at a rate that still makes the number of apps grow. Like when they removed a bunch of basically web-browsers with a hard-coded link somewhere for 0.99. It's a process, ya know?
It seems to me that part of number 3 (about private APIs) is bogus -- it's pretty easy to compare an executable against private API addresses to make sure it isn't linked to any of them. They likely have a tool and it likely results in an instant fail and I doubt there are any approved apps that use private APIs.
this is not completely true.. when google first released their search application, they were allowed to use an undocumented api (at the time), that detected when you moved your phone from your ear, and was allowed. Not sure if this is the same as a private api, but in general they do reject the use of private api's.
Special exceptions aside, of course. That follows with his other point about big players, which I agree with. They get to do things the little guys don't.
They did start this checking relatively late in the game however, and I seem to remember it giving rise to a number of outraged developer stories on the web.
Apple's focus is and always will be: 1) Apple, 2) Marketers, 3) Users, 4) Developers, and #4 has always been a distant one at best (anyone remember the Rhapsody fiasco?) Keep that ordering in mind, the latest changes make perfect sense.
While I think putting marketers in that list is a bit trollish, I think you've hit on something that's broadly true. Developers reacted with rage to Apple's app screening process and are reacting with rage again to Apple's banning of intermediary layers/languages. Whereas Microsoft's slogan is "developers, developers, developers..." Apple's is decidedly not.
Apple prioritizes the end user experience over the developer's experience and aren't shy about rubbing that in. More than that, Apple prioritizes having control over its own fate, and if developers using intermediary layers have to suffer for Apple to retain its relative autonomy then so be it.
Microsoft's philosophy has the logic: if we have all the developers, then the end users will flock to us, so we're going to cater to the developers. Apple's philosophical logic is: if we make something that 'just works' and that all the end users lust after, the developers will come to us, so we have to retain our ability to push things forward.
I'm not sure which philosophy, if either, is better overall. But it seems pretty clear which one angers developers more.
I would add Support Engineers along with the devs in that list. I was an AASE back in the late 90s, and working with Apple behind the scenes in the retail chain was quite the different experience than being an end user.
Of course, I firmly believe this is as it should be.
The reason I put marketers on that list (and higher than users) is because Apple sometimes goes with "shiny" things which are marketing fodder instead of things which truly improve the user experience.
But you expounded on my point nicely -- Apple and MS have different philosophies about developers.
In my experience, it is the users who go gaga over the "shiny things." If the media pays attention to these things at all, it's simply because they know that's what a lot of users will be interested in. If I tell my mom that the new OS X has a totally rewritten Finder that follows OS X standards much better and deals with failure much more elegantly, she'll just blink and say, "Oh, cool." If I show my mom the graphical interface for Time Machine with all the versions of my files apparently falling into a black hole, she'll point and scream and call people over to see how cool it is.
The moral: Never forget that people really do like using shiny things a lot better in many cases.
In case you are serious, that quote is out of context.
He said "fuck you" in a presentation on Rails where he tried expressing that Rails is opinionated and that if Rails doesn't suit your style you're better off choosing something else instead of trying to convince core devs to switch directions (or something of the sort).
Say what you will about the guy, but he's a great salesman.
So Apple is also an "opinionated" vendor, so what? Not happy? Try developing for Android or something else. Really, what are the merits for this guy to complain about it given his own stand regarding Rails?
You're comparing apples vs oranges ... Rails is an open-source web-framework. If you don't like its directions and you'd like to change that, you can always fork it without gettings sued ... and forks/clones in other languages have happened and are thriving.
His merits are that he's a contributor to an open-source piece of software that changed people's perceptions and he's also a founder of 37signals, a small business that's quite profitable (which is a lot more than I can say for myself).
It's a free market... anyone can create their own platform from scratch. Even you and me. But it's hard, right? Anyway, it's not as if Apple had a special license to address this market.
By the way, IP is far from being the only cost involved in building an ecosystem around a platform (as ESR has explained ad nauseum). So the "Rails is OSS" argument doesn't really apply here.
Isn't there a recent lawsuit involving Apple accusing HTC of infringing 20 patents, even though HTC is not the stereotypical Chinese cloning machine? Isn't Steve Jobs expressing his frustrations with Android every chance he gets, even though there's lots of prior art in the mobile OS space?
Apple surely acts like it's having a special license to address this market (whatever that means).
So I don't know why we are having this conversation. Being opinionated doesn't mean you need to be a jerk that prevents others from playing on the same beach.
Now you are comparing apples to oranges. Proprietary and open approaches work very well in different scenarios (there hasn't been a lack of experiments in OSS for smartphones for example).
Some innovations, when developed via a proprietary approach bring huge costs and risks (and couldn't be done otherwise) and patents exist to protect the innovators from free loaders.
Now, that's how it should work in principle. If Apple is trying to game that model, it is not up to me to decide. There are courts for that.
And, as I said before, IP is far from being the only important cost when creating a new platform.
"Ruby on Rails" is copyrighted to its creator. So what? Why is it so? Isn't that an "asset" within the economics of OSS? It is, and there's absolutely nothing wrong with it being copyrighted.
Anyway, my point is that none of this justifies the fact that the Rails guy is simply being utterly hypocrite, period.
I even say (sic) DHH enter the fray, which is absurd hypocrisy, given that the first time I ever saw this guy, he was putting a giant "Fuck You" slide on a screen and explaining how he wasn't going to add features to Rails that he didn't agree with, because it was his framework, and he didn't believe that anybody who disagreed with him on that merited any other response but "fuck you". What kind of response does he think he merits from Apple?
So if I understand your witty reply, what you're saying is that if you give your work product away, you are entitled to do as you please with the fruits of your labour.
However, if you develop a proprietary product, you are not entitled to do as you please with it and must accommodate the needs of those who want to do something else with it and are unable to do so because of your licensing terms.
Is that what "git clone rails" amounts to suggesting?
No, what I mean is that the comparison of DHH and Apple falls flat. While DHH doesn't implement every feature he is requested to implement, everybody can just clone Rails and implement all features they desire (or pay people to do so).
You can't just clone the iPhone and it's OS.
Therefore I don't understand the claim that DHHs comments are hypocritical.
And nobody is disputing that Apple is entitled to do with their iPhone whatever they want. They are just not entitled to people being happy about it.
I'd say that for most people, cloning Rails isn't an option if the devs won't put it in there. Having access to code is the same thing as being able to implement new stuff in the product for a relatively small amount of users or even developers, either due to knowledge or time.
Has anyone really, seriously argued that Apple isn't "entitled" to do as they please? They are, and developers are entitled to be annoyed when their seemingly artificial and arbitrary limitations cause them problems.
And we're all entitled to post our opinions about it, but you should maybe try and give the opposing views a little more respect. :)
Well yes, I have read opinions that Apple is abusing some sort of market dominance and/or reneging on expectations it has set by changing its SDK terms. But let's stick with opinions that Apple is either (a) disadvantaging itself, or (b) disadvantaging developers with its current set of choices.
I didn't realize that quoting Giles was considered disrespectful of either of these opinions. It was an interesting take. I like what I know of David, and consider myself an awfully opinionated guy as well. That doesn't mean I don't think it's worth pondering whether this particular bit of criticism is... Um... "interesting," nor do I predict he would be outraged at Giles' comment or my quote of it.
If I thought you, David or anybody else wrote something that they were not entitled to write, I would use the flag feature, not a comment. To me, a comment is intended to provoke thought and debate, not to suggest there is something that should not be said.
Now to clarify what I intended when I quoted Giles. I didn't think of it as a "David shouldn't have said that," rather I thought of it as a "If it's right for Rails it just might be right for iPhone!"
I still think that even though David gives Rails away and Apple does not give iPhone away. iPhone is an opinionated product, and people are correct when they say that Apple is saying "Fuck You!" Apple is saying that in exactly the same sense that David said it, even though no you can't fork iPhone.
Oh, I was responding more to the second post, not the quote so much. Chalking that DHH post up to "Apple isn't entitled" seemed a little flippant to me, but perhaps I was misreading you.
Your clarification makes sense, but it's not the message I got the first time. I do think putting a relatively arbitrary restriction in place is vastly different from just refusing to do something a specific way, though. One is actively restricting a personal preference, the other is simply not bowing to an idea/method you disagree with. :)
> Your clarification makes sense, but it's not the message I got the first time.
Ahh, just as we favour "Convention over Configuration," we also believe in the power of "Discussion over Dismissiveness." This exchange of view is great, thanks.
This is not about calling Jobs out for not adding more features to the iPhone. This is akin to if I had said you couldn't use any other editor than TextMate to program in Rails. Or that you had to run it on OS X server. That would have been some lame, fascist shit.
> This is akin to if I had said you couldn't use any other editor than TextMate to program in Rails.
Well for starters let me say I admire your perspective on Rails development greatly. And speaking as someone who is greatly enamored of code generation, I am not a fan of restrictions on "original" programming languages.
My only question about your response here is your choice of comparison. The choice of text editor does not appear to me to parallel the imposition of an entire cross-platform compatibility layer like Flash.
I realize that in a certain sense it seems to be about dictating tools for self-expression, but where things like Flash compilers are concerned it also very much about proprietary companies attempting to control developers by owning the platform.
So... If I had to draw a lesson from Rails it would be that if we developers find ourselves having to choose which behaviour we want from a proprietary platform vendor or choosing which proprietary platform we are beholden to, maybe we should step back and ask ourselves whether we really want to be beholden at all.
Maybe what we really ought to be doing is sucking it up and developing for web standards where "Worse is Better."
Your earlier comment seemed to indicate (and I believe you have clarified it below in this thread) that if there's a valid business case for Rails doing something, then maybe that business case is valid for the iPhone OS as well.
I don't believe that comparison holds because
a) refusal to add new features is not the same as tightening the terms of service.
The equivalent would be to release a new version of rails that prevented (by technical or legal means) using any 3rd party ruby packages that are not approved by dhh.
b) Even if dhh did something like this, one could clone rails and be on their way. So the effects of this new policy are somewhat mitigated by the fact that the code is Free.
> if you develop a proprietary product, you are not entitled to do as you please with it
Of course you are entitled to do what you please. You may make your product less useful, or even eliminate it. The point is, your customers have no alternative between keep consuming and stop consuming.
To reify the point: Apple should be worried about the latter.
That's bad news for all us pissed off developers since Apple's new platform will continue to be extremely popular in which case devs are forced to develop for it.
Google seems to be inching towards being a real threat but they also seem extremely unfocused. Does anyone really need a toaster running the latest version of Android?
Apple needs some competition in this space and Android-based mobile devices seem like a really distant second. It's time for Google to kick it up a notch.