Posts Tagged 'Apple'

My take on Apple, section 3.3.1 of the ToS and Appcelerator’s Titanium

Recently, Apple decided to add a clause into the (beta) Terms and Conditions of it’s developers tools:

It states:

3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

Just some facts about Appcelerator’s Titanium tools and their app creation process, which we hope will see them on the safe side of Section 3.3.1:

“As a pre-requisite to using Titanium, developers must install the Apple iPhone SDK and Apple XCode development toolchain.

They must install Titanium on a Macintosh and they must have a valid Apple Developer membership before they are even able to create a Titanium-based iPhone/iPad application.

Titanium produces a valid XCode project (*.xcodeproj) at application creation, generates Objective-C (and sometimes C/C++) and executes the xcodebuild to compile the XCode project into a native application using Apple’s published APIs.”

The tools launch Apple’s iPhone simulator to test applications, create the correct Apple binary for integration to iTunes when testing the signed application on a device and uses all the certified Apple tools for signing to create the final distribution.

“The developer must obtain their own Apple signing certificate for creating applications with Titanium and Xcode and the developer uses their own Apple iTunes Connect membership and login to upload the package to Apple for submission. ”

via their developer blog :

Adobe’s CS5 however, would allow developers to build iPhone app on Windows, which I’m sure is an absolute no-no. The process appears to be quite a kludge (of the AIR publishing process), from what can be seen in this tutorial by Lee Brimelow (who was extremely vocal about his disdain for Apple in a recent blog post: )

See his tutorial on Adobe’s app creation process here :

One thing to note after watching this tutorial is the resulting iPhone app filesize of the (less than 20 lines of AS3 code) Flash app: 3.2Mb !

That’s pretty big for what it is! And this makes me wonder what else Adobe are bundling with the app. Possibly its ‘LLVM’ (a low-level virtual machine – which is known as an ‘Ahead Of Time’ compiler – see here from Adobe: – as opposed to a ‘Just In Time’ compiler, which is effectively what the desktop Flash player is)

The Phreadz iPhone application : built with Titanium

I have been using Titanium to create a far more complex app than this example for the iPhone for Phreadz (see image above), which is capable of doing some things that none of the other potential offenders’ platforms are possible of doing (taking and manipulating photos, recording videos, recording audio, etc.etc) which I write in JavaScript, which then gets compiled using the process stated above to create a proper, signed iPhone app for submission to the AppStore.

The resulting file size of the app? Only 1.6Mb. Amazing.

Another key issue here is that Titanium is completely open source, compared to Adobe’s very much closed platform.

ps: I’m not a Flash hater at all (as many readers who have known me for years will know). I’ve built many useful things on their platform for many years – when it makes sense to. And I agree that desktop performance of it can be awful – what with web pages and blogs literally riddled with them, often causing any browser to crash.

Adobe should concentrate on making their tools support the output of HTML5 .

I have had no experience of Monotouch or Phonegap, though from what I can gather, Phonegap (which is extremely simple, yet limited to what it can actually do beyond what a browser/webapp can do – but with some hooks into a few of the hardware APIs) might also be on the safe side too, since they ironed out issues with Apple a while ago.

UPDATE: PhoneGap use has now been approved under these new terms. See:

I, along with many other developers and evangelists fully support Appcelerator and their Titanium tool for iPhone app development. I have found it to be the most exciting and enabling project I have ever seen in many years (15) of mobile and web development.

I’m seriously crossing my fingers for Appcelerator. The hard work they have done to enabled so many great things to be built for the iPhone, the iPad, Android as well as on desktops for OSX, Windows and Linux is truly remarkable.

This story has generated a huge amount of discussion on blogs posts from places like TechCrunch that it’s definitely fired up a lot of passion on both sides of the argument.

Apple Keynote and live-blogging the event. Twitter failed the task

After finding that Twitter and most of the large blogs were unresponsive during Steve Jobs’ MacWorld keynote last night, while lying in bed down here in Australia, I found the best (and most reliable – ie: it worked) source was (the main site was borked though).

It worked mainly because it had a very simple page, with a simple ajax script updating *just* the posted text and photos every minute or so – ie: not the whole page.

All I had to do was watch the updates as they came in. It worked perfectly during the hour or so of the keynote. Every ten updates or so, a small sponsor message flowed through advertising a deal from MacHeist offering a bundle of 11 OSX apps for $49. I didn’t mind seeing this at all. Much better than the approach taken it TechCrunch, which required the whole blog entry page being refreshed (along with all those relatively heavy ads).

Next time there’s an Apple Keynote, I plan to build a similar page, utilising ajax to create an iPhone/iPod Touch browser optimised version of the same principle: keep it light – only update the bit of the page you need. It’s pretty easy. People can then sit and watch the page auto-update, a bit like a chat/IM page. Maybe even use some IRC technology on the back-end to send stuff to it.

In fact, Apple should provide this. It’s crazy that they don’t get an official to provide these updates.

I also expected‘s new system to shine in this area: it didn’t. It kept telling me to update my browser to the latest version. I was there with the latest version of Firefox installed. They really missed a trick here – especially given the recent coverage they have had.

Update: CoverItLive have now issued an apology. But it’s a bit late now. Good luck next time 😉 They’re taking the right approach at least.

Keep it simple.

ps: I am I the only one the gets completely irritated by the phrase “bring that beat back”? Does anyone ever use it? I’ve never heard it before Twitter used it. And it’s not just that I see it when Twitter breaks, it’s just.. I dunno.. just really *wanky* 🙂 Bring back the lolcats, I say.


Who is this ‘kosso’ anyway?

I am a 'Createc'. A creative technologist, entrepreneur/ hacker/ geek. Worked on building things on the web for over 12 years.

Used to work at BBC News interactive and created the publishing and delivery systems for video news to get distributed on huge screens in major railway stations around the country.

I left the BBC to become CTO / sole-lead architect/developer at for three years.

I have now left them to build a start up a new system called 'Phreadz', which is a 'Social Multimedia Conversation Network', integrating everything that is 'V.I.T.A.L' to us on the web. Video, Images, Text, Audio and Links.

I built the whole thing my myself. I programmed every line of code and positioned every pixel. I'm looking forward to attracting an hiring new members of the team to help me out! :)

There are currently over 1000 happy and helpful beta testers on the system so far and one client of a white-labelled solution.

@kosso : twitter

kosso's flickr stream

August 2020


  • 255,775

Top Clicks

  • None