Adobe Evangelist Lashes Out Over Apple's "Original Language" Policy
An anonymous reader writes "Apple's recent decision to restrict the languages that may be used for iPhone and iPad development has provoked some invective from Adobe's platform evangelist Lee Brimelow. He writes on TheFlashBlog, 'This has nothing to do whatsoever with bringing the Flash player to Apple's devices. That is a separate discussion entirely. What they are saying is that they won't allow applications onto their marketplace solely because of what language was originally used to create them. This is a frightening move that has no rational defense other than wanting tyrannical control over developers and more importantly, wanting to use developers as pawns in their crusade against Adobe. This does not just affect Adobe but also other technologies like Unity3D.' He ends his post with, 'Speaking purely for myself, I would look to make it clear what is going through my mind at the moment. Go screw yourself Apple. Comments disabled as I'm not interested in hearing from the Cupertino Comment SPAM bots.'"
Yeah, I read the book and I saw the commercial. Ironic.
Nice work disabling comments. Let the Cupertino Comment SPAM Bots attack!!!
I don't understand why people are surprised that Apple have taken these measures. Time and again they have gone out of their way to make sure they have a vice like grip over aspects of their products.
Even iAds, which was claimed to be an attempt to revolutionize Advert distribution is simply a way for Apple to monopolize and control the money flow through their products.
Fact is, until people start protesting with their money nothing will change. The only way Apple will stop strong arming Adobe is for them to suddenly pull Photoshop from Mac OS. Fight fire with fire.
Shame it'll never happen. I look forward to seeing the ways Apple will surprise us all with their evil policies in the future.
....only allows you to speak English when using an Iphone.
It's Apple. For at least 10 years people have been saying that if Apple had MS's market share that things would actually be worse than they are now. Well, now we get a small hint of things to come. OTOH, perhaps Apple is so large now their left hand doesn't know what their right hand is doing.
Apple is the hammer throwing lady from the 1984 video, right? Not the all controlling big brother, right?
Adobe can retaliate and abandon Mac platform. Designers and developers who need Adobe's products will move to Windows.
Steve Jobs Has Just Gone Mad: "If you need to "originally" write your code in Swahili, while listening to Milli Vanilli, while reclining in a patch of mud, and then you need fifty oompa loompas to translate the Swahili into C, that is none of Steve Jobs fucking business. And the idea, which I am sure is actually the plan, that he will inspect application code to figure out what the "original" language is that the code was written in is just plain pathological."
Just look at the number of people who've bought into Apple's bullshit. Be creative and think for yourself, as long as Steve Jobs approves it first.
What's more interesting to me is that Adobe is now under fire both from Microsoft, who has been trying to supplant all of their software with their own stack, and now Apple. It seems like the only friends Adobe has these days are Linux and Android.
So, hey, Adobe: have you started porting Photoshop yet?
Help stamp out iliturcy.
Yeah, I read the book and I saw the commercial. Ironic.
This week, Slashdot featured a really good article form Slate that ended with this quote:
Steve Wozniak has said that he pre-ordered three iPads, two for himself and one for a friend. This is a testament to his incredible good nature and his loyalty both to the firm that marginalized him in the 1980s and to a friend, Jobs, who refused to write a foreword for his memoirs. Yet somewhere, deep inside, Wozniak must realize what the release of the iPad signifies: The company he once built now, officially, no longer exists.
That last sentence is really the core problem here. We were used to Steve Wozniak's Apple and we were in love with that Apple. Now the only Apple left is Steve Job's Apple. Times have changed but before we cast acerbic words at Jobs you must acknowledge he has led the company in a very profitable direction. Could he have done that while adhering to Wozniak's "open" idealism? That's the real debate here.
My work here is dung.
anything that speeds up the decline of flash in general is fine by my books.
..if you were Steve Jobs. Who else can kick Adobe where it hurts, have a laugh and get the blessings of millions of fans for that at the same time?
This should be a good fight. Who do you cheer for? Injuries!
Apple hasn't forgotten the lesson they learned from IBM and others. Allowing developers to use proprietary tools like Adobe's Flash suite makes them dependent on Adobe's development cycle and not their own. Apple claims to have just released 1500 new API's for iPhone OS. How long will it take for Adobe to support them with their development tools? About as long is it takes to get a version of Flash for OSX that doesn't use 99% of the CPU? Or as long as it takes IBM to release a 3 GHz G5?
Not all issues surrounding control are negative. Sometimes it's just about controlling your own destiny and place in the market.
Seriously, what was Adobe thinking ? A good business relationship is when everyone gains from whatever is being proposed. Apple don't gain. Why are Adobe surprised Apple aren't happy ? This isn't *quite* as bad as Palm lying about their USB id's in order to piggy-back on Apple's success, but it's pretty darn close.
I can see the case for this being good for Adobe. I can't see the case for this being good for Apple; given that Apple are way out ahead in terms of mindshare at the moment, I don't think this is a bad thing for the users - developers are flocking to the platform.
If Adobe want to play, they need to bring something that excites the user-base, and that Apple can't refute. So far they've *not* done that, and childish rants aren't going to persuade me that they can, in fact, do that. I do love the "comments are disabled because someone might disagree with me" as well [grin] - that just smacks of someone firmly convinced they're in the right...
Simon
Physicists get Hadrons!
Apple locked down the iPhone app market to avoid the same late 80's video game crash, according to this page: http://news.ycombinator.com/item?id=1250946 Let state that I am not an iPhone fanboi. I use the corporate iPhone for email and calendar, which it does well. It does infuriate me that I cannot make it do simple tasks like change notification volume that my POS Windows Mobile phone could. I would jailbreak it, but my boss told me "the IT department would probably junk punch him" if I did.
There may be no "I" in team, but there's also no "F" in way.
Adobe has been too slow at fixing and improving its sw, which just makes it more expensive for Apple to support and makes the user experience far worse.
Does it exist? Between the App Store, the iPad, platform and channel lockdowns, and the trend toward punishing developers, pro users, and creatives, Apple is showing an unbelievable amount of hubris lately.
They are burning their bridges and salting the earth behind them. They may be in a mass-consumer ("the lowest common denominator") ascendancy right now, but they won't be able to stay there with this attitude.
Do you suppose Steve Jobs might still be upset about the long delays in Adobe's release of OSX/Intel native products?
Nah.
With reasonable men I will reason; with humane men I will plead; but to tyrants I will give no quarter. -- William Lloyd
Actually, I read about this the other day. Rumor has it, the language requirements actually do have a purpose, that is making sure the apps work with the new profiled multitasking setups. Supposedly cross compiled apps don't behave in the same way and individual threads can't be halted to save battery and processing power the same way that native apps can.
Whether or not that is true is a bit above my head. The claim has been made that all of Apple's fancy tricks with threat pausing, fail completely with cross-compiled apps and as a result those apps perform very badly with regard to battery drain. This is somewhat supported by the fact that Apple has applied this only to the version of iPhone OS that includes multitasking and not to older versions including current development for 3.x.
Others have also faulted Gruber for misquoting them in his rant by claiming Unity3D will no longer be allowed, despite the fact that the person he was quoting said maybe it will or maybe it won't as it is actually a pre-compiler and it does create objective C source files. The rant should be taken with a grain of salt as it is from a fairly biased Adobe employee.
If it was anything other than Flash, and anyone other than Apple I'm sure more people would be outraged. To me this is more of Apple's and its control MO vs. the last decade's "rich internet architecture". Apple's doing what it always does, control its platform. I'm not sure why anybody's so surprised. I've been burned by the lock-in, lock-out myself (DISCLAIMER: I do own an Apple computer), but, I'm not going to cry myself to sleep over the marginalization of the Flash platform on the iPhone OS. I think most died-in-the-wool Apple users feel this way (ho hum/ meh), and Apple is willing to take advantage of this sentiment to further shape their own platform the way they want it. Right? Wrong? I don't think this is really a question of ethics or morals. I think it's Apple having their own way, and people with dollars not caring enough to get mad and go elsewhere.
Hey Adobe, just abandon the Mac platform. You can hurt'em more than they can hurt you!
First, Flash sucks for me as a user so I am thrilled it's going to die. Sorry if a few developers love it, but that's not my problem nor do I care if they have to learn new things. Thank you Apple.
Second, as an iPhone user there is nothing I miss on a daily basis being able to do with the iPhone. Do I wish that there was more flexibility with some apps? Yes. Do I think it's this huge deal, no. Fact is the control Apple is doing has benefits and negatives. For most people the benefits of a closed community, screened apps that haven't had viruses or malware, and a wonderful intuitive GUI (IMHO, Android is getting closer but is still not consistent nor as intuitive as iphone or Palm WebOs) and easy upgrades that actually are released to the phones (as opposed to the fragmentation that's Android) is worthwhile. Fact is Android Droid are STILL waiting for Verizon to let them get 2.1 of Android. How's that for control? If you want control, get yourself an out of contract pay as you go GSM type phone (like the Nokia or somethiing). But for the rest of us people who just need a smartphone and not a portable computer, the iphone is a great device.
Apple is lock-in. Adobe is lock-in. You have a choice of how you'll be locked in. What's the point of developing software?
In the course of every project, it will become necessary to shoot the scientists and begin production.
However, they're probably not defenses that Adobe or people who support the general concept of "openness" would appreciate.
AppleInsider claims it's due to the new multitasking features in iPhone OS 4.0. I don't know if I fully buy that, though the argument that Apple's policy change is part of the 4.0 release seems to support the idea (if they merely wanted to cut out Adobe from the beginning, they could have changed their policy much earlier).
Personally, I think it's a UI-based decision. Apple's whole schtick is focused on a consistent interface that functions smoothly and easily to the end user, rather than trying to pack in as many little features as possible. (Feel free to debate the merits of this type of thinking; it's certainly not for everyone but it seems to be working for them.)
Apple does not want a flood of half-assed iPhone and iPad apps written in a "write once, run on any number of systems and interfaces" manner. In Steve's opinion, if you want sell an iPhone app, write an iPhone app, with all the care and diligence to the iPhone's interface which that entails. Now, I'm sure it would be possible to use Flash's cross-compiling feature to make some wonderful, perfectly native-UIed iPhone apps, but I'm also willing to bet that 99% of the time this feature would be used to half-assedly convert some Flash game to an iPhone game. Again, feel free to debate the merits of such a closed ecosystem, but you can't exactly claim there's no rational basis behind the rules.
People are jumping to too many conclusions here. Apple updated the developer terms, and has not confirmed that they will shut Adobe-compiled apps out. The compile-flash-to-iPhone feature from Adobe is vaporware anyway for now, as Adobe hasn't really shown it that publicly yet. Appleinsider is reporting that the ban is not from spite but for technical reasons; as cross-compiled code may interfere with the proper multitasking coming out in iPhoneOS 4.0.
I won't get mad at Apple until it's confirmed that they are shutting it out. Apple selectively enforces it's developer rules (they let Google's app through when it used private APIs), and Apple hasn't commented on the Flash-compiler controversy. No, a ranting Adobe evangelist has as little information as you or I do at the moment.
Is the Unity3D Game Engine threatened? I doubt it. Adobe, yes. Unity, no. I think this Adobe guy is reading between the lines of Apple's announcement. He knows Flash (its code generator workaround, not Flash itself) will be targeted, but not Unity3D. He's only trying to get Apple to admit its hidden agenda, or goad them into banning Unity3D to maintain consistency (which would only go against Apple's interests, Unity3D already has many top selling titles, the code generator from Adobe is not even close).
One thing Apple can never ever give you until they change their minds: Freedom.
You can't take it for yourself because it would equate with theft until they grant you permission.
There's not App for freedom.
What's the point of developing software?
Fun and dollars.
Apple just doesn't want lousy bloated code that is generated badly and lazily from some bloated Adobe app that probably costs a fortune.
XCode is free, Cocao touch and ObjC is much nicer to use than most mobile platforms (Symbian is horrid). Why buy some Adobe toolkit and churn out rubbish?
Developers for games consoles have to use the official SDK, why should a handheld gaming platform (that is also a phone) be any different?
This seems like the iPhone bubble: it's where a lot of people are swarming to stand in line to be and that high demand gives Apple a lot of power. Like most bubbles I assume it will burst, leaving Apple with overly restrictive policies developers have abandoned. I can't blame them for cashing in during the bubble though.
"UNIX is very simple, it just needs a genius to understand its simplicity." -Dennis Ritchie
How can Apple developers work for someone like Jobs?
If he can do this to all of the Flash/Unity3D developers to save a nickel, what will he do to them?
Five Tremendous Apple vs. Adobe Flash Myths
http://www.roughlydrafted.com/2010/04/10/five-tremendous-apple-vs-adobe-flash-myths/
A bit of his summary:
And so, through a mix of incompetence, belligerence and emotionalist hypocrisy, Adobe has been pumping a non-stop stream of propaganda about how critically important Flash is on mobile devices, even though millions of people been using the highest ranked smartphone for three years now without suffering any ill (not even the rest of humanity on lessor smartphones have missed being able to render desktop Flash content, because they haven’t been able to either). There’s a reason for all that talk: Adobe is terrified.
Just curious - and no I am no big fan of Adobe either - but how is Adobe doing a lock in? They do not own the OS, the developer tools in question are generally open source. What is the Adobe lock in?
Apple made a business decision... just like Adobe did when they bought Macromedia (and with it, Flash) and gave up on SVG.
Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
Somehow, developers have to realize that the iPhone, iPad (and in a certain way an iMac too) are no longer meant to be computers with an operating system. They are devices with an API. As far as I see these API's are trying to protect the devices (and the company and the users).
Get over it.
--------
* Sigh *
...that Apple wants _nothing_ to do with the stinking piece of feces that is Flash? F****ng realize that this would never had happened if Flash wasn't such a slow, obese, cpu-hungry, inefficient piece of trash. Don't shift the blame on others just because they don't want your shit splashing around them.
We shall return to the good old " not for mac " for every software from Adobe, or stay with the 24 months delay between the plateform just to see how it works those days
You need all the volume you can get to remain a significant player long term.
Jump!
How about banning bad and lazy applications then?
How about restructuring the store so that it presents good and fast apps before the cruft?
If the app store doesn't scale well with popularity, maybe it's the store that needs fixing, not the developers.
Oh, and while we are at it, do game consoles official SDKs also tie me to owning a Mac/Windows/specific flavour of Linux before I can even begin to consider starting any development? Do game consoles forbid you to use frameworks that build upon "the official SDK"? Are game consoles artificially limited to the makers' store? Have people have had any trouble of not-just-working-ess with the XBox because of this? Can I publish a puzzle game for the Wii, or am I forbidden because it partially overlaps with Nintendo's Brain Training? If I want to write a PS3 game in brainfuck, is there any EULA getting in my way?
When ideas fail, words become very handy.
This doesn't surprise me, and it's fine with me too. I don't want apps that were designed to run on three platforms, I want apps that were designed to run on my platform. Gruber's latest article had an excellent comparison of Kindle for Mac (a QT cross platform program) and Kindle for iPhone (a native program).
That said, everything is complied to machine code. Can't you just decompile the applications into C/Objective-C if Apple asks for the code? A decent decompiler should even be able to translate many variable names, given that it has the original source.
Basically, why doesn't Adobe (and the .Net guys) just make their code output C files that people can run through XCode to be "legit"?
I still like the decision, but it seems there is a way around this, just like you could get around the "no interpreted language" thing by compiling the virtual machine bytecode into native ARM code.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
Curiously, Apple is an example of a company with a much longer than typical planning horizon, which has been rewarded by the market. Your point seems to remain valid for the general case, but Apple is an interesting example of an exception.
If you mod me down, I shall become more powerful than you could possibly imagine.
Microsoft = Evil
Apple = Good
Google = Good
Before I got flashblock, any site I would visit with flash adds would instantly send my processors to about %60, and the fans would start spinning (X3100 MacBook). The situation is even worse in Linux. Would you expect the flash runtime to be any better on the iPhone????
This is the exact same crap that Semantec pulled in the 90's with their 'java compiler', they advertised a java dev tool that I paid about 150$ for that claimed to produce native executables. Well, technically it did, they produced an giant executable, with the entire java interpreter statically linked in, and your code statically linked in, so at runtime it would just interpret your code using the linked in interpreter.
Same freaking thing that CS5 does.
All Apple it trying to do is limit the number of crap applications. If there are all of a sudden all kinds of apps built on flash, battery life drops to minutes, then people will be pissed and most likely blame apple, when its flash's fault.
And their probably is no way to even write a runtime for flash that will not drain battery, because flash is all timer based. The runtime needs to allocate all kinds of timers that are firing at a very fast rate, so there would be NO POSSIBLE WAY to suspend the app in a multitasking env.
I do think Apple went a bit too far, I think they should have allowed apps written in Python/Ruby or some other decent lang, but absolutely ban flash.
And BTW, what is more cross platform then C/C++ and Javascript???
Note, even if they somehow figured out a way to compile CraptionScript to native code, the fundamental problem is the TIMER /EVENT based programming model of flash, where the runtime creates a timer that fires every millisecond to tiger the animations and craptionscript events. CPU usage was not one of the design goals of flash, the fundamental design goal of it was to make obnoxious animations trivial by point and click development tools. Hogging CPU resources was fine I suppose on desktop machines with unlimited power resources, but its a no-go on devices with limited battery capacity.
If Adobe wants to, they can make their "compiler" a language engine that rewrites a flash/flex app in objective C. Apple doesn't want java apps and flash apps because they lose the unique look and feel of the device. Java apps look terrible on windows, mac and linux, because they live in their own interface world. Obviously an app that can be written once for all platforms is not good for Apple's business, but I think Jobs is more interested in making sure all the iApps, have the same distinct look and feel that makes iphones and ipads so intuitive.
Apple is making sure of that.
IANAL but write like a drunk one.
Who does Apple think they are to decide if they want "lousy bloated code" (what gives them the authority to take such decisions?) on *people's* devices?
The abrogation of rights of most Apple apologists is a truly sorry spectacle.
IANAL but write like a drunk one.
Thats exactly what happened here on /. when Operation Desert Fox started in 1998, Sengan posted a long rant of a story description and then said - comments disabled. I didn't know he was Adobe Evangelist now.
http://slashdot.org/article.pl?sid=98/12/16/1930206
I'm sorry, Adobe should smack this guy down. He's acting like a spoiled little sh!t, and being just a tard about this whole thing.
As their CEO said, Apple doesn't need to justify what it did, and has full right to. Personally, my organization was looking forward to be able to craft apps easily with Flash. But I'm not that upset about it.
This guy just needs to be smacked... whether intended or not, he's making Adobe look like a whining ass of a company that at the very least, can't control their own employees that pseudo speak for the company. I'd have to imagine if Adobe really tried, they could work something out with Apple... even if it basically made a flash project into something that then ran through Xcode. How about you get off your whining ass and try to work with Apple rather than against them.
Oh, and grow a pair. Apple put you on the map.
...no rational defense other than wanting tyrannical control...
Well, maybe no rational defense other than not wanting apps that drag along a horribly crash-prone Flash runtime--extrapolating from experience with Flash on OS X.
Or, maybe no rational defense other than not wanting apps that are built for some kind of cursor device and will deliver a horrible user experience on a touch-only device.
It's certainly not fun any more, so it must be the dollars.
Just a thought.
When tens of thousands of Android phones get 0wned, due to some Flash exploit, for example, and at the same time, hundreds of thousands of iPhones don't get 0wned by any exploit, who do you think will be smiling quietly to himself at all the bad publicity towards Android & Google, and at the increase in stock price of Apple.
I don't care that the iPhone is locked down. I don't care that the iPad is locked down. I can write all the software I want for my several Macs here in my home. Not being allowed to do the same for an iPhone or iPad is not something that particularly troubles me.
If I may quote myself from some years back (with a slight rewriting):
You are not the target audience for the iPhone/iPad.
You have never been the target audience for the iPhone/iPad.
You will never be the target audience for the iPhone/iPad.
Really, you might as well be griping about the lack of Ogg Vorbis support in iTunes and the iPod for all the good your whining is going to do.
Guaranteed! This comment 100% Anthrax free!
Apple is saying "you can only use C, C++, Objective C, and JavaScript as executed by the iPhone's JavaScript engine". No more, no less. This has fuck all to do with saving your platform from OMG EVIL PORTED GAMES. Poorly ported games are still possible under the new policy. And it applies to many, many things that aren't games. At best, this is an insane and stupid attempt to fuck over Adobe for little reason, and at worst, it's just insane and stupid. Either way, this isn't "good" by any metric that doesn't involve the RDF.
Don't worry though, I'm sure Apple will apply this rule arbitrarily and inconsistently, so you at least won't see the major applications that grossly violate it gone, but it will probably be lots of headaches for everyone else, and be yet another contributing factor to continuing to drive developers away from Apple's little walled garden of madness.
Actually, I read about this the other day. Rumor has it, the language requirements actually do have a purpose, that is making sure the apps work with the new profiled multitasking setups. Supposedly cross compiled apps don't behave in the same way
That's plausible (a little tenuous, but plausible) if you're talking about restrictions against using another toolchain to build your binary.
But section 3.3.1 also bans upstream tools that generate code consumed by Apple's toolchain. You can't write code in another language to write C/C++/ObjC code for you. Which means you're telling developers that they can't write tools that make their lives easier. What's the justification for that?
Here's an already popular iPad app essentially written using Mathematica:
Apparently it runs afoul if 3.3.1.
Frankly, it's not clear to me that every iPhone app doesn't run afoul of 3.3.1. Unless you actually think in C/C++/Objective C, every program is arguably first a set of cognitive abstractions in a human brain. Or, as this article puts it, with this restriction, "Apple may thus be the first company to bet the farm on Cartesian dualism."
There are other problems with Apple's approach.
Tweet, tweet.
Adobe wants to make Flash the platform for mobile devices.
Apple wants to keep application development native so the can control their own platform.
Both of these are reasonable goals.
Personally I would rather have native applications, than cross platform Flash-to-App generator.
If you think there is too much crapware in the Appstore now, what would it look like when every flash writer starts hitting "convert to iPhone button"?
So while I don't know if that wording change means that there will be no Flash-to-App conversion in the Appstore, I certainly hope that is the case.
I am sad that nothing can be done to keep it off Android...
I can't believe they want to enforce security by choice of application, rather than relying on the operating system to do it. Isn't the whole purpose of an operating system to allow resources of the machine to be safely allocated as necessary?
You can't choose which apps aren't going to kill your machine a priori without first solving the equivalent of the halting problem. Since we all know that's impossible... it should be fairly obvious the iPad is pretty much doomed to the same fate as any general purpose computer with a poorly chosen security model.
Oh... and here is the obligatory plug for cabsec which is different than capability based security.
is that it's too full of exploitable security holes. I don't run flash (or accoread) on security sensitive computers myself.
Apple can't control Flash. If Adobe decides to dick over Apple and give poor support in the future, Apple can't do a god damn thing. That's why Flash 10.1 doesn't mean much.
Apple's been screwed over by proprietary-like shit so many times. Browsing experienced sucked when IE dominated the web. MS Office support sucked. Flash still sucks. It's painfully slow and the only thing that crashes. Don't forget the security issues.
It's not like Adobe really offers much to the iPad and iPhone. People buy them anyway.
I'm not going to deny that Apple wants control, but they want to control their own bunghole. Who doesn't?
Do C, C++, and Objective C have equal library support? say there is a cool feature, can it be used in either of the languages with about the same performance and convenience? I'd hate to jump too many hoops just because of my language choice.
Apple implemented true multitasking in iPhone OS 4, they're just using clever scheduling tricks to preserve battery life. Safari keeps loading and rendering pages while in the background like everybody hoped; audio and voip apps keep running in the same process (there's no client/server separation). It works just like every other multitasking OS--just smarter.
Here's how: apps can be in one of several modes: active, inactive, background, and suspended. When active, the app is in the foreground and accepting input. When inactive the app is still in the foreground but it doesn't receive input events (this happens, for example, when you accept a call while in an app).
Where it gets interesting, and what's new in iPhone OS 4, is when an app is in the background. Previously when you hit the home button the foreground app simply quit. Now the app will instead become a background process. When in the background the app keeps executing as usual, except it receives no input events, and it's scheduled at a lower priority so it uses less cpu. But the process keeps running, just like in every other "real" multitasking OS. Apps are notified when they move to the background and are expected to save their state since the system may terminate a background app at any time if memory runs low.
After a while, if a background app isn't playing audio, or making a voip call, or doing something else important, the process is suspended. While suspended the process stays resident in memory, but it isn't schedule for any cpu time. The process isn't serialized to disk or anything like that, it just sits quietly in memory waiting to be reactivated. This is how Apple is able to maintain battery life. So every app can do useful stuff in the background, like render while you're doing something else--it's *real* multitasking. But apps can't sit in an idle loop forever draining your battery.
Apple is prohibiting other programming languages for stupid political reasons--it has nothing to do with multitasking.
Apple is getting a bump right now because of their fun little gadgets. It is absolutely temporary. Other companies can and will make gadgets like the iPhone, iPod, and iPad. When they do they will be open and twice as cheap. Apple garbage will again only be purchased by the handful of people who think it makes them elite for some strange reason.
Several decades ago Americans spent more money on Polaroid film than they did on Toothpaste!!! Translation: this shit happens from time to time.
This Apple bump is temporary. No company can lock down a market, treat developers as slaves, and survive like that for long. Anyone remember when Billy Gates was quickly approaching a net worth of 100 billion dollars?
Enjoy it while it last. If you bought Apple stock in time for this bubble - keep a SHARP eye on the market and have the sell trigger ready at any moment.
If Apple owners stop buying bad ports of popular games I'm sure the game companies will get the message and stop supporting Apple. Then you can be happy.
The examples are small yet numerous and it paints a clear picture
Not true at all. It looks like a clear picture but it's actually been Photoshopped.
Bottom line:
I'll be getting an iPad. I'll be upgrading my v1 iPhone to the new one that come out this summer.
And so will millions of others...
Lee Brimelow may be right, or he may not. I don't have time to read the article. But I will say that if he ever hopes to resolve the situation, as an Adobe employee complaining in public in an (apparently) official capacity, he's not helping the situation. This only adds to the bad vibes, and Steve is stubborn and this will only serve to bolster his resolve if it does anything at all.
In my personal experience Adobe products, especially CS4 and acrobat, have become unwieldy, bloated pieces of software on the Mac, and I know that acrobat on Windows is so big it's almost unusable. Maybe Lee should quit bitching about Apple and get on Adobe's developers to develop higher quality software. As a paying Adobe customer, I would appreciate that immensely.
I still cannot find the droids I am looking for...
Here's hoping you expected no different from any proprietor. That is what makes this brouhaha so funny: a supporter of one proprietor complaining about the adverse impact of another proprietor's power to avoid commodification. Imagine that: the software freedoms users deserve and ought to have for all published software so we can strengthen social solidarity are also useful for developers!
All proprietors are the same at this level: User's software freedoms aren't on the menu no matter which proprietor you choose. That's why choosing proprietary software is merely selecting a new master.
Digital Citizen
The Openstep and Rhapsody releases of pre-Mac OS X used Display Postscript as the 2D rendering and font technology. Adobe had Apple over a barrel for a Postscript licenses for every Mac shipped. Apple felt compelled to solve the problem (and probably delay Mac OS X) by creating there own display PDF AKA Quartz 2D. Apple will never rely on Adobe for a critical component of their system ever again. What would happen to iPhone OS if Flash apps became very common and Adobe refused to continue enhancing or supporting Flash on new phones? What would happen if Apple released cool new hardware capabilities but Adobe refused to expose them through Flash? What would happen if Apple provided hardware accelerated H.264 video decoding but Adobe refused to use support it because of conflicts over DRM? Oh, wait, that's the way it is now!
"stereotype"?
You are welcome on my lawn.
Is there a single computer which forces you to a single variant of a single language, I really wonder. Lets talk about it, go back to 8bit days if you want to or even Altair. Don't let me start about real smart phones which has really gone crazy and may have even more options than your average windows/mac desktop.
1997: Adobe wants Apple to pay workstation prices for Display Postscript licenses for the new OS, "Rhapsody", which would have completely priced them out of the market. Apple has to rewrite the graphics layer for Rhapsody/OS X, and it's delayed 2-3 years.
2010: Payback is a bitch.
He can't go mad about it since it is Apple's fault. First, the last minute change to OS X so Carbon 64bit is impossible. I don't have the slightest clue how could Trolltech etc. guys could cope with it, fortunately they are owned by Nokia now so they have amazing resources. On the other hand, Adobe Professional suite is not some tiny shareware that they can switch to Cocoa that easy. Only MS could do it and they don't need to do things which Adobe Pro apps has to do 24/7.
Another thing? You can't GPU accelerate anything video on OS X, you don't have access like Quicktime X has. So, Adobe doesn't offer GPU Accelerated flash which is a true wonder on supported GPUs even including integrated stuff.
Like MS demanding Win7 apps be written in a managed language (ie C#) or Android in Dalvik/Java. iPhone demands C/C++/ObjC. What's the big deal here?
First, I think you mean Windows Phone 7, not Windows 7.
Second, WinPhone7 and Android only "demand" that your compiled program conform to a certain virtual machine spec. You don't have to use their tools or write in their preferred languages; you can use any language that compiles to the right format. (And in fact, Android has a native development kit now, so you can write 99% of your app in any language that compiles to ARM!)
Third, Apple's demand goes even further than the demand you're falsely ascribing to MS and Google. They don't just demand that you have C/C++/ObjC code for your program -- they also demand that your program be originally written in one of those languages.
Let's take a trip down memory lane. In the early 80s, there were no direct C++ compilers: instead, there was something called cfront, which translated C++ code into C. It would be strange for an OS vendor to demand that applications be written in C, of course, because all that really matters is whether the compiled program can run on the hardware. But it would be batshit insane for an OS vendor to prohibit programs that were originally written in C++ and then translated to C, because even if there were some legitimate reason to require C code, it would apply to all C code. There would've been absolutely no technical justification for that ban, just like today there's no technical justification for banning programs translated from Flash to Objective-C.
Visual IRC: Fast. Powerful. Free.
but it is NOT funny
I believe you can code an application in Visual Basic 6 and as far as it is 32bit, it will run. I believe even 16bit will run under 32bit OS. Please, don't mention MS on that purpose, it is their only powerful side (and most evil one,for them).
MOD PARENT UP!
Owning the APIs has proven time after time to be where the money is at. Microsoft has written that in stone. If there's one thing Steve Jobs, et. al. have learned, is: don't sit on your ass and let somebody else run away with your golden goose. They let Microsoft run away with it once. So did IBM. Which is why he gets it, the lesson is learned - if you let another platform take over your device, you lose any control over the quality of the experience.
You go on about 'we're developers we just want to provide a tool'. Do you really trust your non-developer (maybe you forget once upon a time, Jobs wrote software too) executives at Adobe don't get the power they have to mint money with their platform? To open their own open app store? To begin to charge a per-end-user licensing fee for the next version of the flash compiler for the iphone, once its indispensible?
Let's look at the facts. There's tons and tons of people out there that have some Flash experience and some with actual professional training, and lots without either that can manage to produce something with Flash. Let's call these Flash people "flashies". I'm not comfortable calling them developers, programmers or coders, out of respect to the people that really are. Some very well may be, but if we're going to draw a Venn diagram of Flashies, we all know that's a fairly small percentage of the set that gets to overlap into Software Engineer or Developer. I'm taking the middle road, nothing derogatory.
So these Flashies are out there; they can pound out some moving pictures and stitch it together to do something. Great. See what's happened in Android? You've got a load of crap out there. Steve doesn't like a load of crap. He's trying to do something different than the load of crap permeating the Microsoft ecosystem.
Also, I really appreciate your remarks about how open the Adobe culture is, when obivously your boss said, edit that shit on your blog right now, even if you did say, its' my own personal opinion.
So you are the SWF evangelist. You have drunk the SWF kool-aid. I suppose I might have drunk the Tim Berners-Lee kool-aid. Your platform is not an open standard. Nobody has to give it due respect just because the tools are easy to get started on. Just like some people are visual learners, some are visual Flashies. Cool, y'all seem to have developed a tool to target SWF whether a Flashie is visual, ore more technical. That's neat. You're tools are pretty cool. It would be cooler if you'd open your format up. I know, that would allow competitors an even keel to compete with you on your tools, but hey, that's better for Flashies.
You aren't just buildling the tools. You are selling a proprietary platform too. So is Apple. A lot of their code is open source, and free software at that. And a lot of it isn't. They are competing against RIM & Microsoft and Google for all the marbles right now. Adobe is on all of their radars now as coming hard after the platform. You don't think the Adobe executives let the Flash team go and spend all that development time on the compiler out of the goodness of their hearts, or because it would be paid for by selling the tools to developers. No, there's a lot more craft in the economics of that business decision.
Also, you guys could be bought by Microsoft or Google tomorrow or two years from now, and really fuck Apple in the ass. The scenario: lots of great killer apps are running on your SDK for the iPhone, the apple sdk is no longer in the mindshare of developers... then Microsoft or Google, hai, we bought it, dead now. *poof* the app marketplace is disrupted and the platform dies. Your market cap of $20 billion dollars is fuck you money to those guys. Sorry.
Yeah, when there's this much money involved, and the dynamics are such: it's happened before and it will happen again. All the strategy thinkers at Adobe, Apple, RIM, Google, and Microsoft have learned the lessons from mistakes made by Apple and IBM in launching, and letting platform be marginalized or wrested by a thir
Anyone seen my low uid? last seen 10 years ago while panning the #@$# out of Taco's 'web based discussion system'
Don't forget.
This is Adobe, the same company that created the PDF spec, and then included a function to launch executable files. From PDF files.
This is Adobe, the same company that created PDF, and then decided they needed to add Javascript to it.
This is Adobe, the same company that can't write a client for Flash, their very own technology, for the iPhone after three years. They can't even figure out how to write a PDF reader for iPhone.
This is Adobe, the same company that got way behind on moving Photoshop and their other memory-intensive applications to 64-bit, despite it being obvious to the entire world that Photoshop and Adobe's "Creative" suite would be THE primary example of why we needed 64-bit computing on the desktop in the first place.
While we are entitled to be suspicious of Apple, we all need to remember this is Adobe, the worst-managed software development company presently operating.
Flash and all these other tools should be HTML5-based. That's the open app platform on iPhone. That's the cross-platform mobile API. That's where interpreted code runs.
Cocoa is proprietary to Apple and since it is C-based, it is easy to port apps from other platforms by bringing the C into Xcode. Cocoa is evolving wherever Apple wants to take it. There's no standards body as with HTML5. If Apple introduces a new multitasking model that requires Xcode-built apps then you are out of luck. If snail's pace Adobe can't even ship their iPhone 3 development tools before iPhone 4 then you are out of luck.
iPhone offers 2 distinct app platforms, which are like yin yang, each has the strengths the other lacks. Choose where you want to deploy your app.
It is sad to see Adobe being run into the ground. They've been blaming Apple for a lack of mobile FlashPlayer for 3 years, yet it has not shipped on other mobiles yet. They're blaming Apple for obsoleteing their Cocoa export, but where is their HTML5 export? Flash makes Web apps. Why is it getting an iPhone app export before HTML5? Terrible management at Adobe.
None of my friends at Apple are on the iPhone or iPad teams, or in senior management, so who knows for sure... But the common rumor going around the rest of the company is that Steve took the "no 64-bit CS for Macs" thing as something of a personal slap in the face. Adobe, if you'll remember, rathar cravenly waited until Steve's health was especially precarious to pull that stunt.
The rumor mill also goes that once CS is natively 64-bit on Macintosh, and after a suitable period of pennitance, a new round of security and performance testing will show that Flash is finally in a state suitable for iPhone OS.
That movie is a crap trolls like you made.
I can think of one - stability.
If they dont keep control of development of applications, then it will become a nightmare where they will be blamed for every bad app. To the user, the app is the device, and the device is the app.. they dont know the difference and apple gets the blame.
So, keeping tight reigns on this helps keep that risk at a minimum.
---- Booth was a patriot ----
If a Flash app on the iPhone sucks, either Apple won't approve it, or users won't buy it.
If it doesn't suck, then what does it matter how it was developed?
If Adobe was really upset with how Apple is conducting themselves, maybe they'll start dropping support (or seriously delaying it) for their products on Apple platforms. Granted it could backfire and cause webmasters to rewrite their sites to drop flash, but think about the other programs? Other than switching to MS, to get apps like Photoshop or CS, what would Mac users do? Anyone arguing that alternate apps exist that do just as good of a job, why haven't they run Photoshop a run for their money? I'm looking at GIMP as an example.
What would be the backlash if after the next OS X/Safari update, Adobe announced no more Mac support for PDF, Flash, Photoshop, CS, etc... Throw in the mobile support for flash that is supposed to be coming to most other big name non-Apple mobile devices this year, they can try to hurt Apple where it would hurt the most, their users.
But like I said, it could completely backfire, and Adobe might come back with their tail between their legs and ask Steve Jobs for forgiveness.
Yes, someone recalls the past :)
MS and Apple got "expletive deleted" on fonts fees.
MS and Apple found a way out and moved on with fonts escaping the expected "revenue stream" trap.
Finally Apple can break away from the gift of free buggy "trojan horse" like Adobe code.
Open standards and/or in house DMR are the dreams of a MS and Apple.
Why pay some 3rd party developer to profit long term on your OS for shipping the same old code year after year.
Domestic spying is now "Benign Information Gathering"
WAAAAAH!!! WAAAAAHH!!! Puh-lease! You and Adobe can both go and screw yourselves! Flash has sucked HUGE donkey ballz under Linux for as long as I can remember....and it STILL does! And as for the x64 version....I'd take MS Bob over that PoS any day! I for one am glad that someone is taking the bat to Adobe's head. You guys deserve nothing less.
"Klaatu, verada, necktie!" -Ash
1: Neither Nintendo or MS made any pretences about how open their development is
Nor does Apple, the agreement after all must be signed before you can begin developing.
they've actively forcibly removed a popular method of coding games by a company they're competing with (hello anti-trust!)
anti-trust might make some small degree of success (well not really but let's pretend) if APPLE WROTE GAMES. They just provide the platform, you are quite free to continue to write games, just using the tools that Apple OK's. There's no anti-trust involved whatsoever.
Without Flash it isn't the complete web.
When you enter Flash you left the web. When I can't arbitrarily highlight text that is text and not an image, I have left the web. When the whole browser settings as to font size and such have no effect, I have left the web.
Flash is not the web.
4: Anti-trust. Look it up.
Take your own advice. Adobe can produce HTML 5 tools. They can even produce Objective-C tools. Heck, they can even produce tools that produce iPhone binaries, but in that case since Apple can't manage the backend compilation Apple will also not distribute them. But you could ship them out to jailbreakers.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
It's OK by Apple to write ARM assembly, so that's not really an issue. It's one small part of the whole, not the whole thing.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I think the perfect Apple product would be beautiful and designed to be closed but easy to unlock. The iPhone's seemingly easily jailbroken security is close but their developer restrictions are sometimes ridiculous.
First not allowing interpreted code. WTF does that mean? It's not okay to embed Prolog in your program but you can use HTML, SQL, Javascript, and XML? What about Java bytecode? What about objects that are highly configurable to the point where they are basically scripted? What if I store a game level as a bitmap the user can edit? Very fuzzy ground with little point.
Now this whole not allowing code written in another language to be translated into Objective-C? So long as the code is valid Obj-C how would they know? How is it different than hand translated code? Is hand translated code okay? Why? This is a completely stupid rule. If they are just seeking to avoid slow/suck code why don't they test the app during the review process instead of making stupid rules? I don't want Flash on the iPhone/iTouch/iPad because Flash sucks. If they can translate it into Obj-C that doesn't have the issues Flash usually has then I'm all for it. Why get in a pissing match with Adobe over the issue. Why force people to use suck-ass Objective-C. Again how is this different than if I make a program that has an engine that lets you declare and configure objects from saved settings (say in a db or XML) and then initialize the Obj-C objects in the engine from those at runtime? (I've actually done that - seems pretty normal not to hardcode such things.)
Making rules that go against common programming practice that are very close to unenforceable is just stupid.
At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
I called ATT and insisted I talked to a manager about unlocking my iPhone after 2yr contract was up. They sent a request to apple!!! They just started doing this the manager said... About time apple unlocked myPhone!!!
That's absurd. The only way to correctly use this new multitasking API is by directly coding your program in C? A native C application is just a heap of machine code. How is a program compiled in any other language any different? Or how about another language translated to C then compiled natively?
I honestly find it hard to believe that these restrictions are necessary.
Henry the 8th wants to legalize divorce because it's obviously not HIS fault that he has some venereal disease and cannot sire a child and thus keep his lineage strong. But he must be able to do this without invoking the wrath of the church, keeper of the highest moral law!
If we're going to be calling these software company PR dorks Evangelists then let's skip to the heart of the metaphor, shall we?
The king is insane, has altogether too much power, and the peasants certainly aren't the beneficiaries of any wrangling over IP law.
Apple has for years been a religion replete with thought-control issues and all the brain-shrinking dogma we have come to expect from such creepy organizations, but when exactly did Adobe turn into another damned cult? "Evangelist" is a religious term for some asshole spreading lies with charisma, convincing people to believe in bullshit designed to serve the interests of the church and nobody else. -All done by trumping reason with charm and bullshit. (I know there is probably a more official definition which doesn't imply mind-control and manipulation, but that's not the definition we all grew up knowing and shuddering at, now is it?)
I am so fed up with this kind of idiotic wrangling. I didn't mind Apple when we were feeding its retarded followers to the lions, but I have to say that I am downright nervous about what the iPhone/Pad/Ad is doing to my once-sane universe. (Apple = the New AOL.)
Will somebody please dethrone these megalomaniacs?
-FL
Well, this may be one of those ideas which would, in practice, be hellaciously difficult to actually do, I'm not sure, but. . .
Would it be possible for Adobe to build a Flash 'compiler', which, instead of outputting ARM machine-language binary code, instead spit out Objective-C code, which would then get compiled by the Xcode/gcc compiler? Seems like that would allow them to do a bit of an end-run around this restriction, because then, what the app developers would be compiling *would be* native iPhone SDK code?
Not sure, but just a thought.
You nailed it perfectly. I never knew a hacker who cut his/her teeth on a Mac in the 80's. They were overpriced machines for yuppy "desktop publishers".
The wheel is turning, but the hamster is dead.
I've made popcorn, should be a hellova show!
...is all I heard when I read it. The mere fact that he's a supporter of the one of the web's worst technologies is enough for me to figure out he's a douchebag. The fact that he doesn't want to deal with the comments THAT CALL HIM OUT ON THE FACT THAT HE IS USELESS AND DOESNT KNOW WHAT HE IS TALKING ABOUT.
I don't hear anyone talking about how the iPad doesn't support Java Applets. Get over yourself Adobe, you are not a web standard and never were.
As far as the verbiage, I stand behind it. The more layers you infect on the platform, the worse off it is going to be. Hence the modern computing world where everyone has injected layer after layer after layer and things have become slower than monkey shit sliding down a wall. I welcome the fact that Apple is drawing the line in the sand and keeping the mobile market where it needs to be, lean and well coded.
The primary reason for the change, say sources familiar with Apple's plans, is to support sophisticated new multitasking APIs in iPhone 4.0. The system will now be evaluating apps as they run in order to implement smart multitasking. It can't do this if apps are running within a runtime or are cross compiled with a foreign structure that doesn't behave identically to a native C/C++/Obj-C app.
Bullshit.
For starters, C, C++ and Obj-C all compile to native code. Native code is native code - if you have some magic pixie dust "multitasking analyzer" for that, it just works, whatever it is compiled from. There is no "foreign structure" to speak of.
If the said magic analyzer would rely on code patterns produced by a particular compiler, then breaking it would be as easy as changing optimization flags, and every GCC upgrade would result in massive breakage all along the line. It is an architectural decision that is so stupid it cannot even be seriously contemplated.
Furthermore, Apple doesn't restrict just compilers that compile from some-other-language to native. No, they restrict code translators that "compile" from some-other-language to C/C++/Obj-C. If the aforementioned magic analyzer can handle output of GCC, it shouldn't have any trouble witht hat.
Furthermore, Apple also bans wrapper frameworks that can be used for cross-platform development. At this point the intent is perfectly clear - note that the use of frameworks isn't forbidden as such, it's the intent that matters. Of course, the aforementioned multitasking analyzer being powered by the Reality Distortion Field, it may well be affected by mere thoughts...
Finally, and most importantly, there is no "evaluation of apps", because there is still no multitasking for apps. All multitasking there is in iPhone OS 4 is a bunch of stock daemons, all written by Apple and shipped with the phone, that provide certain very specific services. Third-party applications are simply shut down if you switch away from them, though they are given the opportunity to persist their state, and queue any finalization tasks for background processing (that's what one of the daemons is for).
Not that I expect the various MS/Adobe/Android astroturfers and other Apple-haters to accept this. They're not big on rational explanations when it interferers with their world view.
You might want to try rationally explaining your own world view, first. A good place to start would be going point-by-point through this reply.
For starters, C, C++ and Obj-C all compile to native code.
Not necessarily. I suspect (though I don't know, and can't be bothered to find out right now) that for iPhone 4.0, they might be compiling to LLVM.
Something must have snapped inside Apples management. The level of control they want is insane and not encouraging for customers. Its bad enough for consumer devices but imagine decisions like this wreaking havoc inside corporations using Apples products.
One day your whole fleet of salespeople run some application on their iPhones, the next day those are forbidden by Apple because some sudden decision about tightening control even further.
Luckily there are much better alternatives thats not ran by rampant schizofrenic mono depressive controlfreaks.
HTTP/1.1 400
If that was the case, I think we'd have heard about it by now. It would be a fairly major change.
In any case, it doesn't affect my point that any whatever-to-C translator should still be unaffected, no matter what C gets compiled into in the end.
Maybe instead of trying to force previous-generation "development" (for non-developers, of course - hey, why aren't they whining about the iPad's lack of support for ColdFusion while they're at it?) products onto a next-generation platform, I'd like to see Adobe spend their time developing versions of their core creative apps for it (and, for that matter, ditching a codebase with 20 years of cruft on it, and making versions that will run on modern 64-bit hardware with a modern UNIX OS.)
This approach - getting your own development house in order - would get them a lot more of my money, and I wouldn't hate every upgrade I had to make. :)
Village idiot in some extremely smart villages.
Probably this. In mobile Android has >9% market share. That's up 5% from the previous quarter. Projecting out, that's a lot. WiMo7 looks like a Vista debacle from the released specs - no Cut/paste, no multitasking. This one will be over before it's started.
The thing is Adobe doesn't need to abandon their existing customers to port to the up-and-comer. That's a myth you're trying to feed them. They just have to invest in porting their current codebase to emergent markets. There's nothing amiss about that. It's not like that would hurt them competitively - the vendor of their primary market, Windows, has made no bones about the fact that they find Adobe's profits are meat stolen from their table. What's Microsoft going to do if they take this money, kill them faster? If Microsoft could kill them faster then they would have already. Microsoft really wants this Silverlight thing to take off because it's their last defense against HTML5 and Theora. It's their last chance to take ownership of the content distribution market. They've lost it already, but they still hold hope. Adobe doesn't need to be on the losing side of that.
It's a harsh world. Will they see it? I doubt it. Would I invest in Adobe, given their current trend? No. Could they? Yes. I hope they see which way the wind blows before they're lost. They really do have some cool tech, their complete ignorance of security notwithstanding.
Help stamp out iliturcy.
So one company doesn't like it when another erects road blocks to lock out competition... But they love it when they erect such roadblocks themselves. Hypocrisy at its finest.
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
Dear Adobe and dear Apple, I hope your rotten carcasses end up stinking up the tall bloody walls of HELL.
Adobe, you and your Flash is the same as Apple and its iCrap products.
Apple, you and your iCrap products are really just as useful to me as Adobe and their Flash.
PS: This is a totally personal note, I am not speaking for anybody else, except myself. If there was a way to put Adobe and Apple into a single line (file), eyes of one looking into the back of the head of the other, I would do that and shoot right through their left eye with a 30mm cannon shell.
Thank you.
You can't handle the truth.
everyone else is in love with Steve's Apple.
You overestimate how much the world is in love with Apple. The vast majority of computer users, by choice, don't use Apple. And many of the remaining Apple users have at best mixed feelings about the company.
A few years ago, having a Mac was thought a bit of an odd-ball choice.
Now I find that when PC owners see my Mac, they are interested and often say they'd like a Mac. But they bought a PC because it's cheaper. Oh, and by the way, can I help them with the fact that it's running like a dog and they can't get their computer to print over the network...
But it's more obvious that people are in love with Apple when it comes to iPods and iPhones. They're everywhere!
Not sure what this is that worrying for Adobe. All Adobe have to do is change the code generator to generate Objective C and they work around this barrier. They have to know how to call the API's anyhow. What is more interesting given the simplicity of this as a solution why Adobe don't just do this.
The deeper worry Adobe probably have is this solution means that the user of Adobe development tools can more easily walk away from their tools and opens Adobe up to competition.
This seems though a good and healthy thing for developers.
What's even more ironic is that a rant goes on about the restrictions on Apple employees: ".... Apple employees are forbidden from blogging, posting to social networks, or other things that we at companies with an open culture take for granted." and yet also has "[Sentence regarding Apple's intentions redacted at request from Adobe].". Frankly censored/restricted blogs are worse than no blogs at all since they may omit important information and so be far more misleading than no information at all and it encourages employees to only say positive things since they know they are being watched.
That being said why can't Apple just provide a "I don't care about my battery-life" switch which will allow unsigned programs to run? If, as they say, all they care about is providing good battery performance and a carefully controlled environment then there is no reason not to provide an opt-out switch for those of us who want to do something else....or at least don't go after the jail breakers so aggressively which amounts to the same thing.
No that's not quite it. Third party applications do NOT shut down when you switch away from them. They are suspended, and remain in memory. The "stock daemons" do callbacks to the applications for example to refill an audio buffer for internet radio, or to update the progress of a location aware app. Background apps are only shut down if there is an out of memory error, or the background app does something prohibited.
If Apple wanted to simply restrict low quality third-party software, they could have provided a rating system, where apps that behave badly, including those that drain the battery unnecessarily, would have been rated lower than other apps. Apple already controls the app release process for iPhone/iPod/iPad, and Apple also reviews any app that goes in the app store.
It seems to me that Apple's move is not mainly about quality control, but about specific vendor lock out, i.e. Adobe.
So, we're not allowed to cross compile. While software compiled by Apple's developer tools are OK.
Isn't the workaround then to cross-compile to XCode source code instead?
Unfortunately, there's little to be done against the 'dictatorial' practices at Apple concerning free thinking. Things will go this way with more and more people becoming stupid 'drones' of Apple for some time, and the latter will keep crippling creativity 'to its own will and desires' bringing damage to IT and creativity in general.
It is a current trend in America: profit comes far earlier than free creativity (i.e. creativity not limited by idiotic corporate boundaries, share prices and shareholders swinging moods).
Once and for good everybody, and then the corporate world too, will realize how creativity is crucial for long term development, whilst profit stays good just in the short term.
After one product is made and sold, and turned the budget to a plus for this year, a new idea has to come for next year. So when there's gonna be no decent new ideas anymore: it's gonna be economical disaster again (think of Hollywood, just surviving on remakes and crap marketing of 'new' things like 3D, but for how long still without new creative plots?)
Back to all the 'anti Apple' people out there: Apple also had a negative disadvantage in this all story: Steve Jobs.
Steve is apparently the only allowed to be 'hyper creative', to make his ideas true. He is not a bad guy either, and has sometimes truly revolutionary ideas, it's good he can make them true, however unfair that he's the only one allowed to, while we all should abide to his 'rules' if we want to stay hip.
But this 'all turns around one man' thing has its disadvantage in the 'one man'. In no way is Steve an highlander. Without him and without proper successors the people will see the real, naked nature of Apple. The people will understand. Then things will have to change, like it was for every very very bad monopoly.
When I first read the new agreement I was mostly just confused as to it's purpose. Obviously there's the competitive angle, as so many have pointed out, but upon reviewing the release notes for OS4, I think it's really much more of a technical decision. Beginning with Snow Leopard and now continuing into the new iPhone OS, the language of choice for development is no longer Objective C, C++, or even plain old vanilla C. These old standbys have been supplanted by what I like to think of as Apple-C, distinguished by its inclusion of a new language feature, blocks.
Blocks (closures, lambdas, etc to lisp and python folks, et al) are essential to both the concurrency engine in Snow Leopard (Grand Central Dispatch) and the multitasking implementation in the new iPhone os (essentially GCD lite). Also, a large number of new APIs are written around blocks, and it's clear that they will play an increasingly important role in the future of Apple's development efforts. Personally, I'm all for it. I've always hated function pointers, and the delegate pattern in objective c leave something to be desired. The inclusion of blocks was, to me, the most exciting feature of Snow Leopard. However, by basing their development platform on a non-standard language feature, Apple is walling themselves off from languages that either lack the concept of closures altogether, or whose implementation is in conflict with Apple's. Given Apple's mad lust for control, that probably didn't seem like much of a trade off.
Now clearly, an intermediary layer that complies into objective c or ARM assembly could maintain compatability somehow, and it seems capricious and arbitrary to forbid such a thing. However, this seems like a natural extension of the position Apple took when they fragmented the language - if you want your code to fit into the Apple ecosystem, you'll use Apple's tools. In a context where resources are extremely limited (like, say, a phone) this position makes even more sense. Now that the door is opening to background processing (with limits, of course), they need to make sure that it is as efficient as possible. Sure, on OSX you can load up a python interpreter for your clever network daemon, but that kind of overhead just isn't going to fly in your pocket.
I realize that for a lot of people, this new agreement still sucks ass and is further evidence of Apple's desire to control our thoughts and take over the world. But for those people there is a simple solution; just jailbreak your damn phone and you can load up as many interpreters as you want, or port gnash over and watch some free tv. Or eschew the iCraze altogether and buy a different phone. Either way there's options aplenty. But if you want to go through Apple, you can have any color you like, as long as it's black.
What is interesting about this is Apples barrier really that hard for Adobe to circumvent. If I was Adobe I would just generate Object-C source as well as the executable. How could Apple complain then ? Ok so a bit more effort for Adobe and some risk in their developers might switch to just using source created but is this really a barrier ?
This perhaps reflects Adobe-Apple tensions that may have begun when Apple elected to use Adobe's "portable document format" as it if it were a truly open standard. I don't know how Adobe lost control of PDF, but since then, it has done everything in its power to reassert control over that by creating new versions with features that attempt to make previous versions incompatible, at least with Adobe's own software. So in my view, Adobe created a capable open standard and then did everything they could think of to interfere with its use in that mode.
I'm probably quite naive about all this, but If Apple learned from that experience never to again play with Adobe again, one can hardly blame them.
ThosEM
Most of the world don't choose to have Ferraris. That doesn't mean they wouldn't want one were price not a consideration.
A Ferrari is something an middle aged male with an inferiority complex uses to pick up tricks in. You drive one of those and people just laugh at you. On normal roads, it's a horror to drive, and on the test track, most people wouldn't know what to do with it.
But it's more obvious that people are in love with Apple when it comes to iPods and iPhones. They're everywhere!
So when Windows is everywhere, it's because it's cheap (except, of course, when people like you argue that it's not any cheaper than Mac), but when iPhone is everywhere it's because people love it? Geez, can you make up your mind?
In fact, most people buy iPhones and iPods for the same reason they buy Coca Cola and McDonalds: it's a brand name they know and they often don't know any better.
And, yeah, you're right: if they become nouveau riche, it is the same kind of person who rushes out and buys a Ferrari.
The iPhone was good while it lasted but my next phone will be a Windows Mobile 7 device. I only bought the iPhone originally because it was the best touch screen interface. Now the other companies have caught up.
Now I may not be the target audience of the iPhone, but I am the person who consults with businesses on web and mobile technologies. When I start a job they always ask what it would take to make an iPhone app. I respond with; iPhone development targets a specific and limited user group. Companies usually don't have the resources required for iPhone development. The best bang for their buck is to leverage the existing web development resources Java, Flash, .NET, and SilverLight and target the broader mobile audiance that supports web based browsing.
Thank you apple, your insane restrictions provide me with a persuasive argument that I use to ensure my clients don't head down the dead end iPhone path. As an added bonus I don't have to learn how to program the iPhone ;-)
I didn't say anything about Windows. Windows has it's own story, and there are is a series of causes of it being everywhere. I gave a reason why as a vastly superior system, Mac OS X have not as yet replaced Windows as the majority consumer OS.
That's not a "but", it's an "and". Not every product sells for the same set of reasons.
I didn't say anything about Windows.
You wrote: "Now I find that when PC owners see my Mac, they are interested and often say they'd like a Mac"
Not every product sells for the same set of reasons.
Indeed not. But that doesn't mean that you get to make up things as you go along either.
In fact, most iPhone users are first-time buyers; they didn't know whether they would love it, they just acted based on recommendations.
Nice, so then it is exactly identical to how Android does this (except that in Android, you're not limited to stock daemons)!
Pre-emptive multitasking only governs the CPU resources; the iPhone only has 256 MiB of RAM. I think that in their implementation the App archives its data such that it can be quickly re-opened. An app not rewritten to support that would work as they currently do, where the App has to boot up each time it's opened. That isn't terrible, and other companies would probably let the market sort it out, but Apple wants a seamless experience.
Pro: Better memory management.
Con: Not automatic.
Standard Apple fan tactic #1: retreat to using anecdotes.
So because you had some people express interest in your PC, they, and everyone else, are now Apple lovers?
But they bought a PC because it's cheaper.
Firstly, Macs are PCs - I presume you're referring to Windows. But in other words, they would have bought an Apple PC, if it wasn't for a crucial feature that is why they don't like Apple PCs? I might as well claim that you love Windows, and the only reason you bought from Apple is because you Windows is hard to use, or whatever reasons it was you decided not to use it.
Oh, and by the way, can I help them with the fact that it's running like a dog and they can't get their computer to print over the network...
And such people have the same questions with Macs - it's just most of the time you won't hear about it, because fewer people have them. When was the last time you heard anyone complaining about their Amiga?
But it's more obvious that people are in love with Apple when it comes to iPods and iPhones. They're everywhere!
Apple fan tactic #2: conflate the Ipod (Apple's sole market leader) with other Apple products (usually the Iphone or now the Ipad).
Ipods are market leader. Iphones most certainly are not; Apple have a market share in the mobile market comparable or less than that of their share in the computer market.
...He DOES run Apple, Inc.
Just so you remember. What's the name of YOUR multi-national, historic, technology company, again?
Thanks for confirming it.
Citation? Or were you just "making things up as you go along." Yes, thought so.
Of course you have no way of knowing how many people tried one before they bought. In fact that possibility didn't even come up as one of your alternatives.
But even were your guess to be right, it still shows that users love their iPhones. All those people making the recommendations.
Years ago. But then most people I know have Macs, not Amigas. You might find that odd given overall market share. But my friends are mostly in creative industries, both the arts and also app developers. So your PROJECTED anecdote of why it's only my Windows PC owning friends that forever need help is wrong.
When talking about people loving Apple, ALL products are relevant. I mentioned those two because being mobile device families one sees people using them all the time when they are out and about.
If I was a jackass like you, I'd probably say you want to avoid talking about the iPod (note the capitalisation) because... blah... blah... blah...
Then Apple will be very pleased that they now have >= 14% of the PC market share, according to your estimation.
http://techcrunch.com/2010/02/23/smartphone-iphone-sales-2009-gartner/
It would have been far simpler for Apple to simply let apps run in the background, or at least have arbitrary services which can run all the time like Android does. The reason they didn't do that, and instead did the extra work of providing those "stock daemons" is to preserve battery life and performance of the foreground app.
Now that seems like an admirable goal, provided they managed to cover all realistic scenarios in which apps might need to do stuff in the background. Can you think of a scenario they don't have covered? I can't. If there isn't anything Apple missed, then they have a superior solution to Android, in that an anti-social background app can't do much to spoil the user experience.
Now that seems like an admirable goal, provided they managed to cover all realistic scenarios in which apps might need to do stuff in the background. Can you think of a scenario they don't have covered? I can't.
If you can't think of one, it doesn't mean that no-one can think of one.
Say, how about ICQ/MSN/AIM/IRC client running in background receiving messages? Like IM+ works on Android? That's one thing that I can think of right away, because it's something that I use daily. And MSN ("Windows Live") is popular enough in U.S. that many casual users would have use for such an app, if it was there - it's not in any way a "geek thing".
Oh, and please don't feed me that "most users don't really need it" bullshit - iPhone sales numbers don't prove that. The problem there is that users don't even know what they are missing, because, due to restrictions like these, useful applications that could be written never are. Users are blissfully ignorant about that - but still affected by it.
That would be why I asked if you could think of one.
There's already a way of doing that in iPhone OS 3.0. Push Notifications. See for example this app from July last year:
http://blog.tmcnet.com/blog/tom-keating/apple/ebuddy-for-iphone-supports-push-notifications.asp
Sad thing is, the only viable alternative (if you ignore Real) is Quicktime. Sadly, it is Apple themselves which didn't put actual Quicktime (with all features) to iPhone/iPod. It really shows how could flash become that common, thanks to Apple Quicktime dept. and Real Networks mistakes.
Flash became de facto standard not because someone put a gun to users/developer's head, it became standard when all Real, MS, Apple and the entire open source camp ignored users and companies needs. Is it even possible to add subtitle to ogg video other than using .srt file hacks? It is just an example.
Every time I see a plain mp4 served at Apple Trailers, knowing what Quicktime framework is capable of, it saddens me.
There's already a way of doing that in iPhone OS 3.0. Push Notifications. See for example this app from July last year
You cannot do that using push notifications without hosting your own server that would send those notifications. This also means that all user IM connections have to be tunneled through that server (since it's the server that has to receive messages from IM service servers in background, in order to send notifications). Furthermore, due to the way the whole thing is implemented in iPhone, notifications also go through Apple servers.
So, to sum it up:
1) This adds 2 more intermediaries in the whole chain through which your IMs go - bye-bye privacy.
2) This requires application author to set up and host a server, which costs significant amount of money of his application is even remotely popular. Furthermore, if his server goes down, clients will stop working (this is in addition to the possibility of primary IM servers going down). As well, if the company that sells the app (and hosts the server) goes down, the client stops working.
In contrast, IM+ for Android is a straightforward app that's written in the same way desktop IM clients are written: it just connects directly to the IM server, and sits on the open socket, waiting for packets. Since a thread in a wait state does not use CPU cycles, it doesn't drain battery. And it also means that privacy-wise it's exactly the same as on the desktop - if the IM protocol in question delivers messages through its server, then it's just that server that is involved and sees them; if the IM protocol allows peer-to-peer messaging, then the message just gets transmitted directly. The service only goes down if the actual IM servers go down.
Correct. It's the server which uses power, rather than power being drained from the battery of the iPhone.
No. Neither server needs pass the messages. Only the number of messages waiting. The actual messages themselves are retrieved by the app when the switches to it.
Which is balanced against user battery life and performance. There are plenty of IM clients for all the popular services already in the store and using push notifications. So it's clearly not the huge problem you make out to do it right. It's simply that the balance of benefits is placed closer to the user. In the Android scenario the benefits are placed closer to the developer.
Correct. It's the server which uses power, rather than power being drained from the battery of the iPhone.
There is no power drained by threads in sleep state (which is what a thread waiting on a socket is).
No. Neither server needs pass the messages. Only the number of messages waiting. The actual messages themselves are retrieved by the app when the switches to it.
That's assuming you only want to notify the user that he has received the messages, and not, say, pop up at least part of the message on main screen, or show it in a widget.
Which is balanced against user battery life and performance.
I repeat: there is no advantage in battery life in push notifications vs sleeping background thread scenario, because the latter doesn't consume any CPU time, and therefore doesn't drain the battery. If you believe there is a difference, please provide a technical explanation as to why that is so.
Consequently, this claim:
It's simply that the balance of benefits is placed closer to the user.
is also untrue. There is no benefit derived by user from having IM implemented via push notifications.
. There are plenty of IM clients for all the popular services already in the store and using push notifications.
What about less popular IM services (say, ones that are popular within a single country, but not outside of it - there are surprisingly many of those)?
i still just make calls and texts on my phone...
blackberry 7230 until it dies...
Sure. Your scenario refers only to what the most naive and fatally flawed software does. A blocking thread waiting for a packet to arrive will not notice when the server stops sending data because it's end of the connection has been dropped. In reality for any real network software there are timeouts and retries or keepalives. Either way, traffic has to be sent over the connection every once in a while to know that the connection is still there.
Now, if you only consider the CPU, that doesn't really matter so much. The time spent keeping the connection alive is trivial. But for a mobile phone, it has to power up the radio transmitter each time it has to send traffic. And that *IS* a significant power use. Multiply by the number of different threads that have connections open, and the radio transmitter could be powered up quite often. Result: shorter battery life.
Now, the whole concept of iPhone push notifications is that all applications share the same connection to a single server. So only one connection needs to be kept alive, rather than one for each background app. The transmitter gets powered up less often. Result: longer battery life.
Oh, forgot to reply to this bit.
For someone concerned about privacy to the extent of counting the number of servers, you haven't really thought that through. If your mobile phone is sitting on a desk or table or night-stand, you may not want anyone passing to see a pop-up with included message text. Colleagues seeing a naughty message from the girlfriend perhaps! Think about when you receive an SMS. The pop up informs you you have a message. You have to actually open it to read it. This gives you the control to only reveal the message when no one else can see the screen.
Okay, it's actually a reasonable explanation, but you're missing one important bit - you have to prove that the gain is significant. So far, given the battery life of iPhone vs competitors, it doesn't seem to be the case.
I wonder if anyone closely familiar with cellphone tech could chime in and say just how frequently is the transmitter powered up during normal operation of the phone (i.e. standby in signal zone)? I would expect the cell itself to require heartbeat on a lower level to detect phones going out of range etc, at a minimum.
Another thing that's kinda obvious - it's not necessarily the client that needs to send the "keep-alive" packets - it can also be the server. In the latter case, the client assumes the connection is open for as long as it receives the packets, and the server has to assume that the client is just there. Of course, the actual implementation would depend on the (pre-established) IM protocol in question.
I used to work for Symbian as a software engineer. So I'm not an expert on cellphone hardware, but I'm somewhat familiar with it's operation. Cellphones spend all their idle time receiving, which is far less power consuming than transmitting. Every once in a while, it will do a RAS which which tell the network it's current location and any other status changes. They do that when the phone detects that it has moved significantly - not just from one cell to the next, but from one group of cells to the next. And also after a period of time - I'm not sure how long, but it's the order of an hour or more rather than seconds. But you can test yourself: a RAS is that loud rasping noise you get from time to time if you put a cellphone too close to a radio or hi-fi.
Other than that, they only transmit when they need to send data. A call, an SMS or a data connection. It's kept to an absolute minimum, not only for battery reasons, but because each cell can only support a limited number of phones transmitting at once. But an unlimited number of phones receiving.
It's a two way street. The server also has to drop the connection eventually in the absence of packets, or it'll end up grinding to a halt with all the dead but still open connections. So even if it's the server that were to send the keepalives, the client has to either respond, or timeout and reopen the connection.
What would happen if Apple released cool new hardware capabilities but Adobe refused to expose them through Flash?
Then people would stop buying games written with the Flash toolkit, and developers would move away from the Flash toolkit in order to keep selling apps.
Adobe can't just set the agenda arbitrarily, there has to be some catering to their developers. If they really were able to move developers like pawns than they could have just said "we're not going to help you make apps on the iPhone with Flash" and killed the platform
So, how thick does that undershirt have to be stop a bullet?
The article really doesn't say.