Friday, April 24, 2015

Cyngn Explained: Who’s Cyanogen, What’s Cyanogen OS?

20150422184146956

While Cyanogen, Inc has been the source of many headlines lately, there seems to be a lot of confusion regarding the differences between Cyanogen, Inc and CyanogenMod developers, as well as Cyanogen OS and the CyanogenMod ROM that so many XDA users love. The entities surrounding each of these are sometimes different and sometimes intertwined. We’ve gotten messages and comments requesting for a clearer distinction between these for future reference, which is why we are writing this feature. Let’s start from the beginning.

 

Some History and Perspective

Soon after the first Android device launched (the famous HTC Dream), root access was achieved to allow for all the things that our XDA hobby is founded upon. Throughout the following years, many modified firmware builds or “custom ROMs” started being developed for Android devices, and around the middle of 2009, Steve Kondik’s (a.k.a Cyanogen) ROM started gaining popularity due to its modifications to XDA Recognized Developer JesusFreke’s customizations on the original G1. This ROM (known as CyanogenMod for obvious reasons) eventually had “Team Douche” behind it, which formed the core of what would become the Cyanogen Team. With the help of many volunteers, the ROM kept getting better and better, and it was ported to more and more devices to the point where it became the popular piece of software that it is today.

CyanogenMod is an open source project where volunteers can submit their own code to help create a stabler or more feature-packed iteration. It has the typical model of repositories and distributed revision control, and the contributions can be tested, commented on, voted and then merged into the full body of code by the developers with the right permissions. So far, so good. It is a model that has worked well enough to bring us one of the most notable custom ROMs out there. Nightly and milestone builds spring from these developments, and then other developers (like many at XDA) can grab CyanogenMod and port it to other devices unofficially, as well as fork it and create their own variations and continue the development. In fact, Kondik has been known to respond to people upset about how CyanogenMod did things with “then fork it!”, giving de facto approval for enterprising developers to take and build upon, which is the core of what open source  is.

While the model remained similar in essence throughout the years, the players behind the scenes saw drastic changes. By now, most of us know about Kirt McMaster for his outspoken comments against Google. Cyanogen, Inc is a venture funded company founded in 2013 which, at the moment, has Kondik as CTO and McMaster as CEO. The idea came from McMaster, who found Kondik’s profile through LinkedIn and gave him a call to turn the open source project into a company. McMaster remembers saying “I’ll be CEO; you’ll be CTO. I’ll get some money. Let’s go”. Those words alone would reflect the discord that soon followed, as the volunteer developers felt betrayed and asserted concerns regarding the ethos of the project.

20150422185119881You might remember the controversy surrounding Focal camera, for example, where Cyanogen tried to re-license the open source contribution, add closed source modifications and claim it to be “Cyanogen’s” camera. This is a theme that still circumvents Cyanogen discussions: contributor recognition, as there are many many people building the ROM through volunteer work. Guillaume Lesniak (a.k.a XpLoDWilD) made a heart-wrenching post on Google+ that speaks about the concerns behind the creation of corporate Cyanogen and its treatment to the very contributors that made it what it is today. While some things have changed since then, a lot remains the same, and I urge you to read it at some point as it puts many things into perspective.

What are the differences?

Now that we know more about CyanogenMod, the open source project, its developers and Cyanogen, Inc, we can begin talking about Cyanogen OS. This piece of software is, to put it simply, a modded CyanogenMod for OEMs to put on their phones, straight out of the box. Cyanogen OS features proprietary features and services, too, something we discussed not too long ago as we saw Microsoft’s partnership with Cyanogen become a reality. What this means for users is that there will be bundled apps and services in Cyanogen OS releases, which to many means that Cyanogen is transgressing on the spirit of their original project.

Cyanogen, Inc has paid developers, including many hired away from popular Android ROM projects, who help build and maintain CyanogenMod as well as Cyanogen OS, while the rest of CyanogenMod contributors are volunteers. Like Guillaume Lesniak’s post predicted, the developments that come from Cyanogen, Inc do help the ROM (they just recently expanded their CyanogenMod Team even further), and today their Lollipop builds are among the top ROMs for both users and developers. But like previously stated, CyanogenMod contributors go largely unacknowledged, and unrewarded too. Some CyanogenMod volunteer developers are rewarded with test devices and other neat presents, but in a sense it is still largely unfair. Consider the following:

CyanogenMod volunteer contributors add new code to a project that is open source, but that is ultimately controlled by Cyanogen, Inc and their contributions can (and in most cases will) eventually be merged with a commercial Cyanogen OS build for Cyanogen, Inc’s profit. We discussed some of this in a feature where we said that this is key for Cyanogen to build its commercial ROM, and it is perhaps one of the biggest strengths the company has. It is important to point out that the contributors are not enslaved by Cyanogen, and while they do not get paid, the CyanogenMod project ends up benefiting thousands of users – and developers – around the globe. That being said, they do not get direct rewards for their hard work.

A large part of CyanogenMod makes it into Cyanogen OS, so it can be said that a large part of Cyanogen OS is not made by hired Cyanogen developers but rather independent volunteers. This is one of those things that make Cyanogen’s attacks against other developers or manufacturers all the more ironic (for example, McMaster claimed that “Samsung couldn’t build a good OS if they tried”). Cyanogen, Inc’s mission of an open Android also takes a hit with the newer corporate schemes that they have going for their Cyanogen OS, but luckily their community ROM is mostly unaffected. Many claim that Cyanogen’s project is not open given that they have the last say on code merges and they can “shut it down” if they want to, but Google’s open source project isn’t truly free from these concerns either.

So, in easy terms: Cyanogen, Inc is a company that has developers who build, maintain and support CyanogenMod, which is also largely dependent on volunteer developers. CyanogenMod is an open source project, but Cyanogen OS contains closed source services and bundled apps that are also integrated into the system. Cyanogen OS benefits from CyanogenMod as it is a modification that builds upon it, but with additional proprietary software and exclusive features. CyanogenMod interacts with both the corporation and the team of contributors and the company also rewards some of the volunteers. CyanogenMod and the corporation’s additions result in Cyanogen OS, which means that the contributors indirectly add to the commercial software.

 

This is, in general terms, the relationship between the different names. At least, this is what is mostly perceived, as we cannot know many of the internal mechanisms that go on at Cyanogen, Inc nor all of their interactions with the contributors. Whether this model is unfair for contributors or not is up to you. We hope that his cleared some things up!

 

Thanks to Jeremy for his wise insight on this subject!

The post Cyngn Explained: Who’s Cyanogen, What’s Cyanogen OS? appeared first on xda-developers.



from xda-developers http://ift.tt/1JlCG84
via IFTTT

from XDA Forum http://ift.tt/1GgtThA
via IFTTT

from XDA http://ift.tt/1bpHeMi
via IFTTT