Moving to discuss... ---
* Written an Android App? - List it at http://andappstore.com/ * ====== Funky Android Limited is registered in England & Wales with the company number 6741909. The registered head office is Kemp House, 152-160 City Road, London, EC1V 2NX, UK. The views expressed in this email are those of the author and not necessarily those of Funky Android Limited, it's associates, or it's subsidiaries. _____ From: android-developers@googlegroups.com [mailto:android-develop...@googlegroups.com] On Behalf Of Tom Gibara Sent: 11 April 2009 12:09 To: android-developers@googlegroups.com Subject: [android-developers] Re: SDKs & comparison with the iPhone Hi Al, I think my response might best have been posted to android-discuss, but I'll reply here anyway. Pre-empting a debate about whether Android is open source with the argument "...let's be honest..." isn't adequate. I don't know whether there are established metrics for measuring a degree to which a project rates as being "open source", but here are some of mine: (1) Can I make use of the code and do so freely? (2) Can I distribute the code free of onerous conditions? (3) Can I contribute? (4) Can I be openly critical? By all of these metrics I regard Android as open source. (1) I regularly access the git repository to learn how various Android components work. I downloaded and successfully built an SDK based on cupcake for a preview of forthcoming IMF. On a few private scratch projects, I've copied widget code out of the android framework and tweaked it to make my own UI components. I neither sought nor needed permission from Google to do any of these things because the code was licensed so as to give me these freedoms. (2) Since almost all of the source code is licensed under the Apache License I feel very comfortable distributing any software I derive from it since it's an extremely permissive and well understood license. I've seen a number of people post in this, and other groups, that the absence of some code from the repository disqualifies Android from being open source; even that the inability to create an installable phone image betrays a malign intent. I don't hold with these arguments - they would carry weight if Android was only operable on one model/brand of hardware but since that's demonstrably not the case I'm contemptuous of them. (3) I have to-date made one very modest contribution to the Android code base, but intend to make more when time permits. My limited experience so far is that the Android engineers are extremely receptive to contributions pitched at a technical level and supportive of anyone trying to commit code. Perhaps others have had a different experience. I do anticipate that programmers who think they are going to sweep in and carve out whole new areas of functionality inside the core frameworks will probably be disappointed, but due to an inadequate understanding of how large projects need to operate rather than by intransigent Google staff. (4) This is an important freedom that is not necessarily guaranteed by the preceding ones. I include a public bug reporting system as an element of this. Android has one and there is little evidence that Google engineers ignore the bugs filed there. It's clear that there is insufficient public visibility of the statuses of issues, but that's not the same thing. Reading the android related groups demonstrates that criticisms of Android, irrespective of how well founded they may be, are freely accommodated even though the groups are moderated by Google employees. Given the personal observations above, I find the argument that Android is not an open source project simply misguided. Perhaps it arises in many instances from a lack of experience with open-source or alternatively large scale software development. I'm not denying that there are some key problems, especially concerning the state of the master branch. Nevertheless, having closely observed the progress of the android project since its first public announcement I believe that things have improved considerably and that they will continue to improve; both the core Android team and the community (as with your interim builds) will have a role to play I'm not qualified to comment on the experience of releasing iPhone applications, and I'm inclined to believe what you report - that the experience of most iPhone developers is not as negative as many websites like to report. For companies and individuals who are looking to generate more revenue more quickly that they might with an Android application, I would do nothing to dissuade them from investigating other opportunities; the iPhone foremost. Nevertheless, I regard it as almost inevitable that those with power will ultimately abuse it. As a consequence I believe that Apple will ultimately abuse their monopoly of the App Store. In contrast, I expect the open source nature of Android to protect its community of users from egregious abuses that could be countenanced by present or future management of Google or the OHA. I regard the ceding of software to its related community via the process of "open sourcing" it as analogous to the establishment of a democracy which forces the government to be reasonable with those governed and thus protects against the worst excesses of its corruption. Companies that open source the software they produce are serving their users by protecting them against the potential actions of future management. Given the significant commitment that I must make to any new platform I adopt, I regard this as any extremely beneficial provision. Tom 2009/4/11 Al Sutton <a...@funkyandroid.com> Now before I start on the iPhone comparison I'm going to pre-empt the normal "But Android is open source....." response by saying lets be honest and admit it as it stands Android is not an open source project because the public "open source" repository is pretty worthless in its' current state. The last time I tried to build the master branch it failed missing some Google internal API classes. The SDKs I've produce from the cupcake branch seem to be considered by Google employees as pretty useless with comments like "This is why we want to be clear it is "unofficial," because it is not actually a working SDK" being thrown around and networking in the emulator still being broken a week after users started reporting the showstopper problem (And Romain did hint that Google have a fix, I read http://groups.google.com/group/android-developers/msg/41fcefc36bd16d44 as "there is a version where this is fixed"). And as we all know you can't use it to build the exact versions of the open source parts of either of the two firmware versions that have shipped on the G1. To me it seems little more than code dump which is aimed at ensuring Google can keep saying "But it is open source and not just a Google project" Now, in the last week I had few conversations with iPhone developers so I could compare the Android developer experience to that of what is perceived as our nearest competitor and they are laughing at us (seriously, when I mentioned the G1 most of them responded by initially chuckling). The general consensus among them was; - Yes, you pay $99 for the iPhone dev kit, but you get "free" external testing (i.e. at apple) and commercial quality support with many queries being turned around in hours or a couple of days at worst. Compare that to some of the support queries on b.android.com for basic problems things like a Android failing to connect to wireless lans with hidden SSID (http://code.google.com/p/android/issues/detail?id=1041) which, after *five and a half months* is still marked as "New" and doesn't have a single response from a Google employee. - The most common cause of App Store listing rejections are things that users would complain about anyway. This includes things like performance characteristics, UI anomalies, and inconsistent behaviour. This is the type of stuff that is left for users to find out on Android and only comes to light when 1* or 2* comments are posted and even then you don't know if it's a one off on the users device or possibly something specific to their region (http://code.google.com/p/android/issues/detail?id=2372). - The normal amount of time from submission to app store listing is around 7 days. Some apps take months to go through the approval process, but that is because of intellectual property concerns, concerns over offensive content, or is because the app has to be re-reviewed a few times to meet the apples performance and behaviour guidelines. Yes it's not as fast as Android, but you know that once it's on the market it's of a quality where you're not going to get bombarded with user queries about problems straight off. - Most of the developers actually feel valued by Apple and feel that Apple does what it can to make sure they get the tools they need to do their job and ensure they're apps. This has been re-enforced by allowing the developers to beta test the new firmware and develop against it. Personally, it's made me shell out $99 for an iPhone SDK, dust off my Nokia N81, and spend $75 on eBay on a Blackberry so I can explore the alternatives. Al. --- * Written an Android App? - List it at http://andappstore.com/ * ====== Funky Android Limited is registered in England & Wales with the company number 6741909. The registered head office is Kemp House, 152-160 City Road, London, EC1V 2NX, UK. The views expressed in this email are those of the author and not necessarily those of Funky Android Limited, it's associates, or it's subsidiaries. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---