Monday, September 23, 2013

CyanogenMod Inc. - Building an Empire on Betrayal

Undoubtedly, the biggest hot-button issue facing the Android community today, is the current state of the uber-popular AOSP spin, CyanogenMod. Recently, the community has learned that the once fully open source firmware creation team, has taken steps to obtain funding (in fact $7 million in venture capital) and take the firmware commercial. Announced earlier today, CyanogenMod will actually be officially supported on the newly minted Oppo N1. For a single Android firmware to have come this far is nothing short of astounding, and gives even more legitimacy to the Android platform in general, and the Android development community specifically. The exposure is something that all of us should be happy about and thankful for. But wait - what if I told you that all of this exposure, all of CyanogenMod's popularity, most of its best features, and subsequently, the $7 million windfall the team is enjoying, is directly attributable to community support and code submissions from developers who are not actively on the Cyanogen Inc. team roster, and stand to gain nothing as a result of their hard work? What then?

If you browse the CyanogenMod Github or their Gerrit code review pages, you'll find thousands of submissions from hundreds of different developers, who have contributed to the project, under the premise that they were helping to grow a free, open source project. +Steve Kondik states, in a recent blog post, that he views CyanogenMod as "a mobile OS by the users, for the users" (CyanogenMod 2013).

In fact, here is how CyanogenMod itself, defines the project:

"One major advantage to having an open-source-based operating system is that many people can scrutinize the source code, looking for bugs ranging from security holes to inefficiencies to missing features and pass fixes and features and translations into new languages back to be incorporated into the next version. CyanogenMod tries to build a new, fresh "nightly" version every 24 hours for each of the devices it supports, which includes the most up-to-date changes to the source code, provided from all over the Internet" (CyanogenMod Wiki, 2013).

As evidenced above, Steve - and by extension, the team itself - still views CyanogenMod as a community driven project, nearly completely reliant on developers from outside the team to submit code, in order to keep the project moving forward. Indeed, CyanogenMod will continue to be (in some form) an open source project, free to its users. But here's the rub - CyanogenMod will also morph into a commercialized, for-profit distribution, built almost entirely by the open source community. There's no way that the 17 developers that currently comprise the team's roster, can continue to support 80+ devices, without assistance from the community, and yet, there is no compensation model in place for those who contribute code. Those developers are, in fact, submitting their talent and code to a commercial entity, and that code will be subsequently packaged and sold by CyanogenMod. This is an utter betrayal of the public trust, and blatant exploitation of a community of developers who provided the springboard for CyanogenMod's success. 

This betrayal has never been more conspicuous than in the team's recent dealings with former team members +Guillaume Lesniak ( aka xplodwild), and +Andrew Dodd (aka Entropy512). Lesniak, the developer responsible for the Focal camera app (the spotlight application for Project Nemesis), was seemingly confronted by both Kondik and Cyanogen Inc. co-founder and VP of engineering, +Koushik Dutta and told that his work (Focal) would need to sub-licensed in order to skirt the GPL, thus allowing Cyanogen Inc. to package and distribute it to their partners as they see fit. The problem? Cyanogen Inc. doesn't own the rights to the application...it was forked by them, from Lesniak's Github. Both Kondik and Dutta deny any attempts at coercion, but Lesniak explains his side of the story here.   

+Andrew Dodd responded to the situation on G+ yesterday, and hinted at his sadness, regarding the state of CyanogenMod in a post dated September 18. His reactions are logical and understandable, but as you can see if you open the comments section of the September 18 post, +Steve Kondik responded in a way that is callous, careless, and classless. His response, when Dodd was prompted to shed some light on the issues surrounding Focal, and Lesniak's departure, was as follows:

"Oh god please tell the story. grabs popcorn"

Since the announcement of Cyanogen Inc. the Android community has been abuzz with people voicing their displeasure, and of course, those who are blindly supporting the team, regardless of what has transpired. Land of Droid editor-and chief, John McKenzie wrote an excellent article three days ago, attempting to enlighten the public regarding the current state of affairs, and asked Kondik to respond publicly...which he did. You can read the article at the link above, but if you simply want Steve's reaction, then stick around.

Kondik has never hesitated to defend his and (by extension) his team's reputation, but his response to McKenzie's article was snide, crass, vulgar, and unprofessional. In an email response to the article, Kondik launches into a tirade:

"Hi John.
Interesting that you’d choose to make such a derogatory article based entirely on second-hand word of mouth and wild speculation.
Let me just make one thing crystal fucking clear.
I have spent the last three+ years of my life on this project. I live and breathe it now. There is exactly zero chance that I would jeopardize it. You’ll also find that the core CM team feels the same way..." (Land of Droid 2013)."

Classy... Now I am by no means, an accomplished or skilled developer. I build my own AOSP ROM, and I have fun doing it. I cannot - nor will I ever - be as skilled a coder as Kondik, and I'll never be so presumptuous as to tell him how to operate in that particular arena. I also respect everything he and the team have done for the Android platform. What I do know however, is business, finance, marketing, and professional decorum. 

News flash Steve - You are now the founder and CTO of a multi-million dollar company, with a public image. You are directly responsible for the livelihood of 17 other people, and indirectly for the livelihood of those at Oppo who have crawled into bed with you. You're not a private person, trolling haters on Xda anymore... You owe it to your team, your users, your investors, and your business partners to conduct yourself in a manner befitting the head of a corporation. If you continue to lash out at critics, you are putting your business and your subsequent profits at risk. Maybe you should hire a some PR personnel...or maybe (just maybe) you should put your big boy pants on, and act like you've been here before. 

Let me make this clear - I don't begrudge Cyanogen Inc. the ability to make money and feed their families. What I bridle at is the amoral and unethical practice of having thousands of people, submitting code to a project and helping to grow a global platform, only to have their work hijacked and sold for profit, by a group of people who never made their end game clear. Like thieves in the night, Cyanogen Inc. has built a brand, based largely on the work of other unaffiliated coders, and is now in the process of using that code (which doesn't belong to them) to turn a profit for a select few individuals. They have sold out their contemporaries, their coworkers, their friends, and their community.  

I strongly urge all Android developers, themers, and hackers to stop submitting code to the CyanogenMod project. If you don't place any value on your intellectual property, and simply want to watch others get paid for your hard work, then by all means, be my guest. I for one, will never again, flash a CyanogenMod ROM. I will never purchase another device, that doesn't have AOSP support, and I will never submit anything upstream to the CyanogenMod project. 

We - the community - have raised CyanogenMod to the status that they enjoy today. This business venture would not have been possible, without the support, donations, and code, submitted to the team by end users, and they have betrayed our trust, generosity, and loyalty. They have repaid the kindness of the community with subversive, deceitful, elitist behavior, and it is our job - as a community - to let them know.

But hey, you can't make an omelet without breaking some eggs, right? Cyanogen Inc. has done just that. They've built an empire based on betrayal, and they remain steadfastly unapologetic about it. It's a classic example of looking a gift-horse in the mouth. Stay classy, Cyanogen Inc. and best of luck. Lesson learned.


Additional resources:

Cyanogen Inc. homepage - http://cyngn.com/