Android, Google, and Free software

One thing must be admitted about Google and Android: that the PR effort aimed at making Android appear as a system based on free/open software has been hugely successful. Indeed, I am ever more amused at the number of non-technical-savvy people that candidly tell me: “I prefer Android, because it is free.”

I know that iOS vs. Android is a huge debate – you could call it the “iOS-Android wars”, or “Apple-Google wars” – and that some parts of Android are actually free; but what strikes me is human ability to fool oneself into believing that in a “one-big-corp vs. another-big-corp war” there might be a side which is better than another.

There is no better, or worse, just different.

Take this letter that Google sent to the IEEE regarding how Google will go about all the patents it acquired by buying Motorola (notably, H.264 and UMTS related); and read, also there, the reasoning leading Florian Mueller to state: “Google is basically saying that it will do exactly what Motorola is already doing now.”

Patents are obviously a completely different matter than copyright. Still, it is true that the biggest menace to Free Software nowadays is the way patents are assigned and enforced (another war is ongoing here).

So why think that a big-corp is better? There is not better or worse, just different.

iOS 5 Twitter Integration with soft fallback

After the introduction of Twitter support to iOS 5, it has become really difficult to find reasons not to add it to your app. Indeed, Apple made adding Twitter to your app really a snap. As you can find out from several sources on the web, all that is needed is:

convert RGB image to grayscale

convert is a very powerful tool from the ImageMagick toolbox.

Swiping and pinching with UIWebView

One of the most versatile classes that the iOS SDK offers is UIWebView. Indeed, it can be used as a very flexible tool to display a vast range of content types: rich text, graphics in SVG format, PDF files, and so on. It is also, IMO, the cornerstone of any sane approach to supporting multiple mobile platforms, e.g. iOS and Android. Inevitably, when you integrate UIWebView into your app, you come to face a problem: how you handle pinching and swiping correctly. As flexible as it is, in fact, UIWebView has got a major shortcoming in its “greediness” to touches: it wants them all and it handles it its own way, i.e., like a web browser would do. This is not what you want in most cases and this post will outline an approach to make UIWebView behave like any other views under iOS.

Google's Cookies and pundits everywhere...

Reading “Cookies and Privacy” by John Gruber, Daring Fireball, I was astound by the following line of reasoning that Gruber pointedly arguments against: