He should take Apple to Court for unfair trade practices
Here in Germany I'm sure he would get plenty of support.
Apple has ordered the developer of a web browser for iPhones and iPads to disable vital functionality. The gatekeepers at the iTunes store, which sells the highly rated browser German browser iCab, ordered it to disable Javascript. The developer says he'll comply. iCab was launched two years ago, and brings many more features …
Don't give me the BS that this is just normal Javascript bookmarklets, read about what iCab modules really are.
They are Javascript programs can be downloaded, stored and executed but also have their own preprocessor-style language for configuration and even a (small) private API.
He would now very well that by doing this his software is slightly bending the app stores rules.
Germans do not really handle bending rules very well.
F* the carriers, because this rule has more to do with them than Apple. This is about letting unapproved 3rd party executable code be used inside a 3rd party app. Its a security risk, and a policy violation.
The only reason Google gets away with this is simple. Apple initially conquered the market, but through exclusivity deals. The OTHER carriers wanted next gen phones too, and when Pre dropped the ball and WP7 got rediculously delayed, and RIM failed to even do anything, they turned to Google. Since Google was the only option, google go to set the rules or those carriers would all have lost to those carrying iPhones. Once it was popular, they could not go back on that deal, and even AT&T later accepted it to not loose out on the Android business (30% of users is a big number).
The Register have also added history of iCab. Have any clue about the work/development required for a single developer to be chosen over system built in browser and giants like Firefox?
It is easy to comment about developers right? What else can he do to a company who could say fsck off to Adobe giant? Really buying "flash doesn't work" do you? You think people at Adobe buys it?
Apps in the store CAN download content, but NOT executable code from 3rd party servers.
Going to a page and running java script there is a cached (and sandboxed) activity inside safari. This browser can permanently download (and run when offline) code inside of a 3rd party app, which may be capable of allowing that app to bypass other Apple rules about modifying an app outside of Apple's approval process, enabling unsupported features, or enabling that code to interfere with other apps, files, or device security.
Javascript normally has limits, and the engine inside the iPhone (and safari) has limits imposed. The java code here may bypass those limits.
in simple terms, this app is capable of modifying it's own code and capabilities post-download without apple's oversight. 3rd party content is OK, but not 3rd party code. Want 3rd party code, it has to be run inside safari where apple can control what it does.
Better bone up on web technologies, dude. You're "logic" fails in many places, but it was nice of you to offer an apology for Apple, even if it doesn't make any real world sense.
JavaSCRIPT is quite different from "Java". In fact, the two share a name simply for marketing purposes, back when both "Livescript" and "Java" were young.
JavaSCRIPT is strictly limited in what it can and cannot do, and requires the user to explicitly grant it permission to do anything beyond the most basic web page activities. It is a very lightweight client-side scripting language which cannot compare to the "Java" programming language.
JavaSCRIPT requires an interpreter to run, and that interpreter is built into web browsers, not operating systems. Whether the user is running Safari (Webkit) or iCab (Webkit) or Chrome (Webkit), it is the SAME interpreter ... Apple's.
Nice try, though. Better luck, next time.
Wasn't Opera's mobile browser banned from the Apple app store for the same reason? That reason being that they (Apple) don't allow apps to have 'third-party code interpreters' such as you would need for javascript. Although Opera got around this by doing the rendering not on the phone, but on their own servers, so got Opera Mini into the app store.
Today's Friday so the rules must have changed again. But yesterday the rules said that browsers built on Safari and JavaScript were officially blessed by His Jobsness.
Must be that your third party app is in danger of being smited if it shows up the built-in software as useless crap and/or contains functionality that Apple are going to copy and pass off as their own.
It's not as if iCab has its own renderer or JavaScript engine. As the article says, you could launch the same JavaScript in Safari with a bookmarklet. However someone makes the process a little easier in their own browser skin and for some reason it's banned.
The problem is not the Javascript in itself, the author actually now includes the existing modules that already existed and that's OK.
The problem was iCab allowed users to download arbitrary Javascript modules from the Internet, store them and execute them later on as "apps". Modules also have various features beyond normal Javascript, including a preamble configuration syntax and even access to a small private API of Javascript functions.
You'll find this is different from a normal web browser and far beyond bookmarklets.
Download arbitrary JavaScript modules from the Internet - that's what web pages do.
Store them and execute them later on as "apps" - like users do with bookmarklets or managed by the browser itself in the cache.
Preamble configuration syntax - local JavaScript variables.
Small private API of JavaScript functions - like web pages do when they load another .js file with a script tag.
And it's all executed with Safari's JS engine. There is no reason whatsoever for Apple to ban iCab unless this functionality is removed.
Most of the commenters here seem to be missing the point. This isn't a clear cut case of downloading and executing third party code - it's just a bookmarklet. It saves a piece of javascript you load up on request and caches it for later. Clicking on the bookmarklet is exactly the same as if you had manually typed in 'javascript:blah.blah(params)' into your URL bar yourself except you're allowed to save the javascript: - prefixed 'URL'. It's not the same as having your own interpreter, it's not the same as when Opera was banned from the app store, it's just a case of loading a javascript URL up without blanking out the user's current URL bar. Nothing more complicated. It's exactly the same as typing in the javascript to the URL bar and saving it as a bookmark yourself, but it happens to be in a more contextually relevant menu.
So Apple have essentially decreed "you may not use this bookmark because we don't like it".
This isn't strictly a US issue, but I encourage those in the US to contact their congressmen to request an antitrust review of Apple's practices. I did, and even got a phone call from my Senator's office.
MICROS~1 was (deservedly) taken to the mat for less egregious behavior, and I think it is high time that the same happen to Apple. Clearly the people that run that company see themselves as disciples of a deity and above the law.
I hardly think that this is an anti-trust case. Apple has what, 25% to 30% of the "smartphone" market (depending on how long it's been since that last new model shipped)? That's hardly a dominate position.
If they want to keep their app store closed in this was and you don't like that, then buy an Android or another brand and send an email to Steve Jobs let him know. Voting with your feet and dollars will be far more effective than the Federal Government in this case and at this stage.
Let's take Microsoft, Google and Apple, Adobe, Oracle, IBM, Facebook hell most of the IT and mobile industry to congress over their bad practices. It's high time these cowboys get in line, they should know the Government has an exclusive on exploiting, invading privacy and limiting people's choices.
Shut them all down and restart the Internet. Let me just dust off the 5 1/4 floppies with RemoteAccess BBS.
Senators are really the solution to this, after all they did such a great job breaking up Microsoft and the Bell system. They look like really busy people too if they took the time to call you.
How can you agree 300% ? Strictly speaking you either agree or disagree. Percentages don´t come into it. Is that 115% clear?
What would give congress the right to shut down these businesses? Microsoft has never been "broken up" in the same way the baby Bells where, so all in all, what a strange post.
Microsoft's sin was requiring onerous agreements with OEMs and retail outlets who wished to have the ability to sell gear with Microsoft OS installed. Those agreements forbade those who signed them from offering other operating systems, among other ridiculous orders.
Apple, while irritating and stupid, do not have similar agreements. They only have their own little world, and you can play in it, or not, as you wish.
Because it's clearly the most relevant platform? Even in these cases your name gets on the news and even more people download your software.
What about those screwed out of Android Market? PSX4Droid and Kongregate?
Barely a blip in the news. Actually don't think El Reg even bother covering PSX4Droid at all.
Erm - Kongregate is back in the Market. It was removed for less than 24 hours as I recall. Google's only beef was that they didn't want a bunch of games silently cluttering up users' phones, so now Kongregate uses the browser cache for game data and only permanently stores user data (e.g. game saves). Admittedly a heavy handed way to force better programming practices, but I dunno about 'screwed out of Android Market'.
It's hopeless. You can make this as clear as you want, the Apple fanbois will come up with twisted, circular logic about how what Apple is doing is right and how everyone else is wrong, how this is what Apple intended all along (they didn't change their mind!), how it's really for your own good, and so on.
Glad I don't have any Apple products!
>Must be that your third party app is in danger of being smited if it shows up the built-in software as useless crap and/or contains functionality that Apple are going to copy and pass off as their own.<
Icab: full screen view, ad blocker, change text size, configurable finger usage (two finger tap to go back etc), bookmarklet that sends the current page from Safari to icab.
Safari on the iPad: none of the above and can't be changed from the default safari browser without jail breaking the device.
The writer makes a significant distortion by stating that Apple ordered the developer to "disable JavaScript". They did no such thing. Check the developer's blog post which this article quotes.
They asked him to stop allowing users to download 3rd party JavaScript modules. He now includes all of his own modules in the app by default. Users just cannot download JS modules from other iCab users. I'm not sure if they can still create their own or not, I think he said they can.
The developer apparently made it really easy to create and use these JavaScript modules, thereby effectively creating an open scripting platform for iPhone. That's why Apple didn't like it: it would have kind-of competed with the App store.
The dev is of coure right in suggesting that Apple should philosophically speaking ban download of webpages too, or indeed actually do what the journalist claimed: ask the dev not to allow JS code to run in his browser. But Apple don't mind people developing iPhone apps for the web; that still involves a slightly higher bar to development. And you can't tell people not to browse the web. But most users wouldn't associate webpages with the idea of creating or sharing their own JS applets with other iPhone users.
The point is, not just the fact that you can do something, but how easy it is to do it, makes almost as much difference. One commenter already pointed out that you can program whatever JavaScript app you like in the address bar of almost any browser on the iPhone or on a computer. This is true, and that's great, but of course it's very cumbersome.
It's a bit of a shame, but Apple want to protect their market just as much as the next company, and they want to do that - and maintain quality and performance on iDevices - by ensuring that iPhone apps are only created using Xcode and Objective-C and distributed through the App Store, which they control.
I'm a programmer and I love my iPhone 4. I would have loved to have an easily programmable JavaScript scripting engine on it, but I can get by without one.
Safari is actually a pretty damn good mobile browser. It's amazing compared to my last phone, an HTC Diamond Touch, running Win Mo 6.1. On that phone Opera Mobile was pretty much the best browser available. Safari is much better than Opera Mini even for iPhone. The text clarity is superb. I like Opera for PC a lot, incidentally.
Safari might be a bit stripped down - search in the page has only just been added - but the basic job of parsing and rendering webpages and making them easy to move around it does really well. Really well. I've found it great for studying foreign languages, for example. It's easy to use. And if you want any more functionality, buy iCab or Atomic (which also comes in a free version). I have Atomic full version. I still use both browsers.
Children who don't understand that great design is sometimes invisible diss Apple without having a clue what they're talking about. Apple products are ingenious, well-thought-out, resilient, powerful tools.