Tom,
 
My metric is simple; Can I build a working system from the public repository
which represents what most users are using?, and the answer to that is
currently no.
 
To me there are many products being labelled Android; There are the ones
that are used on devices, there are the ports that people have made to new
platforms, and there is the public repository, and although all these are
different in their own way people seem to pick attributes from each and say
that's what Android is.
 
As I see things, the answers to your metrics are;
 
(1) You can for the Android open source project, but not for the version of
Android that's shipped on the G1, Magic, or ADP1. I will happily admit I am
wrong if someone can give me the git revision numbers from the open source
project which will build all the open source components of the "official"
updates for these platforms.
 
(2) Again, yes for the open source repo, but again builds from the open
source repo are not what's in use by a majority of Android users.
 
(3) I've contributed code to "closed source" products before after the
source code was made available to me under an NDA. I did not work for the
company at the time and I did not get paid for the contribution, so I'm not
sure it's a metric of an open source project. I've also had contributions to
projects considered as open source sit in a review tree for 6 months and
then one another developer submit the same code and it gets integrated (this
was a 1 line fix, and so the fix was *exactly* the same). Therefore I'd say
this metric possibly isn't a charactistic that identifies an open source
product
 
(4) I would again disagree that bugs are ignored, as I stated in my original
email there are bugs that are still marked as new after five and a half
months. This means they haven't even reached the "reviewed" stage even
though many later bugs have. I would also disagree it's a metric of an open
source product as there are numerous public criticisms of Windows, and the
developers complaining over problems submitting iPhone apps are well
publicised, and both of these are closed source projects.
 
I think the main point of our differences is that you see Android as one
thing, whereas I see Android as the basis for many things which are trading
off a brand, and to me that's like saying IBMs HTTPD is open source because
it has a codebase built on Apache (Thanks to Disconnect in
http://andblogs.net/2009/04/android-and-open-source/ for bringing the
IBM/Apache link up). 
 
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.


 


________________________________

From: [email protected]
[mailto:[email protected]] On Behalf Of Tom Gibara
Sent: 11 April 2009 12:09
To: [email protected]
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 <[email protected]>



        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 Discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/android-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to