`
love~ruby+rails
  • 浏览: 849399 次
  • 性别: Icon_minigender_1
  • 来自: lanzhou
社区版块
存档分类
最新评论

Google Issues Cease & Desist to Open Source Android Developer

阅读更多

Android MODer issued Cease and Desist order

Last week the Android world was delivered a heavy blow. What happened? Did oft-blamed Microsoft slay the open source darling of the mobile world with a better release of Windows Mobile? Hardly.

Did Mr. Jobs’ return to the helm at Apple mark the end of Android’s honey-moon ride? Nope, sorry Steve.

Did major manufacturers decide to drop Android from upcoming device releases? Not that I am aware of.

The shot heard round the mobile world was from within and could easily be classified as “friendly fire”. The blow came from Google itself. Here’s a very quick summary of what happened.

The Android programmer who goes by the handle “Cyanogen” was issued a legal “Cease and Desist” order from Google’s legal team. Cyanogen is one of the numerous programmers who have embraced the open source Android project with vigor by downloading the Android source from the Android Open Source Project’s repository and actually improved it. Did anyone notice? Yes — word has it they there are over 30,000 active users of his code. The problem is, Google doesn’t like it when their “closed source” applications are redistributed. These are popular “built-in” applications such as:

  • GMail
  • Application Market
  • Google Maps
  • YouTube

The reaction from the Android user and developer community has been significant — emotion is running high. Some are warning of a coming Android Apocalypse, vowing to never purchase another Android device again and switch to Apple’s iPhone. Some are “threatening” to perhaps go back to a non-smartphone altogether! Others are laying the case that Google should not sue this developer but rather hire him to work for Google. That idea is countered with the thought that hiring Cyanogen would be the worst thing to happen to the Android community because that would prevent him from releasing his code.

There are of course some more moderate voices in the debate as well. These voices are laying out the case that Google never distributed the source code for their “applications” but only for the Android operating system itself — therefore Google is well within their rights to lay claim to their proprietary code. The implication is that if the source code was not released, but only the binaries for their application, those programs are not open source and therefore cannot be re-distributed without “written consent”. No doubt this is in the fine print already. If they let Cyanogen get away with releasing their “closed source” applications what is to stop the next programmer, or even manufacturer from doing the same? Legal precedents and all of that. I am far from a lawyer, but from a legal perspective this is probably an accurate interpretation.

Opinions abound and are free for the asking — unless they are from an attorney of course. Setting aside for a moment who is right and who is wrong, let’s take a moment to talk about what it means to build a MODified Android ROM in the first place.

What is MOD-ing anyway?

What you think of “MOD-ing” might vary depending on where you sit and from where you draw your income. The technical description of what Cyanogen is doing is rather simple — though non-trivial for the casual observer as they say. Android source code is available for download and building. In fact, the Android project has been lauded for its “open” approach to development. Download the code. Build it. Improve it. Enjoy it. Share it. It’s the “people’s code” after all, right? Well, that is just what Cyanogen and many others have done. He downloaded the code, improved it and shared it with others. And he’s not alone — there are many such MODified ROMS in the wild.

The changes made by the MODi-ng community are significant — things like improved application launchers, running applications from SD cards, tweaked CPU optimization, enhanced access to APIs and file systems. This is powerful stuff — and users love it. Application developers love it too because they can build apps that leverage this new functionality. When code at this level is modified, you cannot simply download an application to the device and casually install it — you must re-flash your device with an “image” of the code because low-level drivers must be installed. Doing this means getting low-level control over the device — often called “rooting” the device. Does this kind of thing help Android? In a word — absolutely.

Open source means more than freedom — it means speed. When Google, or any major software vendor, releases code they have to “get it right” the first time. Or at least make every reasonable effort to do so. This means more layers of quality assurance, documentation, support and even a coordinated marketing effort. And don’t forget the layers of “organization” that lends itself to slower decision making and CYA’ing. And of course, it takes a large budget to support all of this infrastructure and process.

Let’s consider someone in the open source community releasing code — there simply is a different expectation. The code is expected to work, and even be very good. However the consumer of Cyanogen’s code — or anyone else on the MOD scene for that matter — is going to have a much higher tolerance for pain than the average T-Mobile G1 customer running the latest release from Google. If a release turns a device into a brick or a new feature is requested, the open source programmer can fix the code, add the feature, and then re-release the code. No need to run everything past the legal and marketing departments! Ah, the beauty of open source innovation and the intrepid pioneering users who shun the fear of bricked-devices and install build after build of code — they are the test-pilots who help push the envelope to better and better software. In the end the platform is greatly improved over a “stock” build of the operating system and the envelope is pushed. This is what everyone had in mind when Android arrived on the scene, carried on the shoulders of “do no evil” Google.

So what is wrong with this? So far so good?

The problem is that people like those built-in applications also. Imagine running an Android device without email, YouTube, maps or market? The new code delivered in the MOD may be awesome, but without the core applications the device would feel naked. So, Cyanogen simply “included” those applications in his ROM images. He even included the new Android Market application — before Google did. Oops. Someone’s upset — Google did not authorize the re-distribution of their code and now they have to do something about it.

Even though the (binary) code is found in the repository they make available, MODers are not allowed to distribute it. Here is an interesting thing to ponder: in order to have an Android device upon which to install a MOD, the device previously had a “licensed” copy of those built-in applications. Of course, Android will be popping up on other devices so this argument may not hold water before long. This is getting confusing.

So, Google issues a Cease and Desist and everything erupts. What next?

Practical Implications and Unintended Consequences

What does all of this mean? Hopefully cooler heads will prevail in this — and my guess is that if nothing else, Google will improve their communication on what is and what is not permitted with their code. MODing will continue and the boundaries will always be tested. That is what boundaries are for anyway — and all the more in the rapidly changing landscape of an open source mobile platform competing in the turbulent wireless industry. Some will find the boundaries too much and they will go “underground”. From all appearances Cyanogen wants to play by the rules. Time will tell. If nothing else, he’s received his “15 minutes of fame”.

The Android community loves Android as an open source product — but we want, no, we need Google to succeed commercially. Without Google’s pocket-book power, Android would not be what it is today and we would not have the opportunity to have this discussion in the first place. In fact, if you are reading this President Obama (ok, of course he isn’t reading this…), I don’t even mind if Google generates an obscene (legal) profit. The more successful Google is commercially the more they can pour back into the platform and the community. So I think this is a good debate and we should use this opportunity to move things forward constructively.

The hope is that innovation is not unnecessarily stifled in the process. There’s the rub. Can Google succeed commercially by protecting their interests and at the same time keep Android open source? I think they can — though Google needs to consider the perhaps unintended consequence of turning people away from Android by their actions. Life is full of these unintended consequences and Google is walking a fine line. They are not asking me what to do, but if they were, here are my brief suggestions to Google:

  1. Be clear about your licensing terms — and do so in plain language, not lawyer speak. Give examples. Use pictures if you want. We’ll understand.
  2. Invest in an environment where MODing can avoid going under-ground. Embrace it, don’t fear it. Encourage innovation. The Android Developer Challenges are great — let’s do similar things for low-level stuff, not just applications.
  3. Make a clear and public commitment to incorporating MODer code as often as possible. The result will be a far improved platform. And it will broaden the fan base — something every new platform needs, no matter how deep your pockets are.

I’ll let you know if Google calls and asks for my advice. Don’t hold your breath. In the end, this is a growing pain and Android fans everywhere should be pleased that Android is important enough to fight over commercially. Android has arrived.

分享到:
评论

相关推荐

    Ilspy 2.1.0.1623

    ILSpy is the open-source .NET assembly browser and decompiler. Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011. ...

    [.Net 反编译] ILSpy 2.2.0.1706

    ILSpy is the open-source .NET assembly browser and decompiler. Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011. ...

    .NET反编译工具ILSpy2.3.0 获得DLL EXE 项目的源代码 好用 免费 最新 最全

    Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011. ILSpy requires the .NET Framework 4.0. Important links: Discussion...

    .net反编译工具ILSpy_2.4

    ILSpy is the open-source .NET assembly browser and decompiler. Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011. ...

    polycom宝利通视频会议软件3.9 2018

    Further, no license is granted to you in the human readable code of the SOFTWARE PRODUCT (source code). Except as expressly provided below, this License Agreement does not grant you any rights to ...

    piriform碎片整理大师

    - You may NOT decompile, disassemble, reverse engineer or otherwise attempt to discover the source code of the Product except to the extent that you may be expressly permitted to reverse engineer or ...

    Recover4all Professional

    Subject to Your acceptance of, and compliance with, the terms and conditions of this license agreement, Licensor grants to You a limited, non-exclusive, non-transferable license (i) to use the ...

    新外研版英语动词不定式的用法总结.docx

    - cease to do(停止做)、cease doing(不再做) - try to do(试图去做)、try doing(尝试做) - go on to do(接着做另一件事)、go on doing(继续正在做的事) - be afraid to do(害怕去做)、be afraid ...

    史上最全的英语语法大全(精心整理).doc

    * cease doing/to do * try doing/to do * go on doing/to do * be afraid doing/to do * be interested doing/to do * mean to doing/to do * begin(start) doing/to do * 感官动词 + doing/to do 分词 * 分词作...

    初中要用到的固定搭配.docx

    - cease to do sth / ceasing doing sth.: 停止做某事,如:They ceased to argue / They ceased arguing. 3. 接不定式或动名词作宾语,但意思不同的动词: - remember to do sth.: 记住要做某事(未做),如:...

    WinRAR_3.71_英文破解版

    Neither RAR binary code, WinRAR binary code, UnRAR source or UnRAR binary code may be used or reverse engineered to re-create the RAR compression algorithm, which is proprietary, without written ...

    经典英文励志语录.doc

    5. **奋斗精神**:"Cease to struggle and you cease to live" 强调了奋斗是生命的本质,停止奋斗就意味着放弃生活。而"Victory won't come to me unless I go to it"则启示我们,主动出击,勇往直前,才能赢得胜利...

    专享:prefer的用法__(全).pdf

    16. “He preferred that such comments should cease.”他希望这样的评论停止。 17. “I would prefer it if you didn’t smoke in here.”说话者希望对方不在房间里抽烟。 18. 未完的句子“18.I would prefer…...

    励志英语谚语[借鉴].pdf

    17. "Cease to struggle and you cease to live." 卡莱尔的这句名言强调了斗争与生存的关系,鼓励我们勇往直前。 18. "Victory won't come to me unless I go to it." 穆尔的话启示我们,要主动去争取胜利,而不是...

    123 Flash Menu Version 1.6 End-User License Agreement

    you must remove this Software from your storage devices and cease to use this product. The Software is protected by copyright laws and international copyright treaties, as well as other intellectual ...

    英语名言名句积累.doc

    15. "The greatest tragedy of life is not that men perish, but that they cease to love." 强调爱的重要性,失去爱才是生命中最深刻的悲剧。 这些名言涵盖了生活、成功、时间、人性、智慧等多个主题,不仅是英语...

    XP下OPC DCOM设置(Using-OPC-DCOM-with-XP)

    Most OPC Clients and Servers use DCOM to communicate over a network...DCOM will cease to work. This paper describes the settings necessary to restore OPC communication when using XP Service Pack 2 (SP2).

    [3planesoft屏幕保护程序合集].Premium.3D.Screensavers.iso

    Nobody does not initiate them, but they do not cease to go back hundreds of years, attracting the attention of curious little fish. Admire the elegance and refinement of the dial arrows, sparkling ...

    英文合同的特点二精选.doc

    - “停顿做”写作 "cease to do",不使用 "stop to do"; - “何时开会并由某某主持”的表述为 "The meeting shall be convened and presided by sb.",其中 "convene" 代表“召开”,"preside" 表示“主持”,而非 ...

    javaServer pages Specification

    The Specification is protected by copyright and the information described therein may be protected by one or more U.S.... Upon termination, you must cease use of or destroy the Specification.

Global site tag (gtag.js) - Google Analytics