You may have noticed that I skipped the wrap-up post for last week. About 40 of us (20-some in this picture) attended the Big Android BBQ in Hurst, Texas and decided to take the weekend ‘off’. Code review still took place and items did get merged, but I will touch on that for this week’s wrap up in a few days. This post will be all about the BBQ, and some of it is very important indeed.
A worthy cause
First, the most important news to come out of the BABBQ, the Android Community raised a total of $8506 for a very worthy charity! RaphaHouse is a non-profit organization that rescues children from trafficking and being exploited. They provide shelter and vocational training to help reintegrate these children into a world where they can be safe and free. We are honored to be able to help their cause and encourage you to check out their site to learn more about how you can help.
Utkanos talks recovery
Drew Suarez (aka) utkanos gave a very detailed walk through on the ins and outs of porting CM’s recovery source to a brand new device. The talk was supplemented by some on device demonstrations of how to unpack stock kernels to get the information you need to complete the porting process.
We’ll link his slides when they become available. Slides are available on Utkanos’ Github.
Steve’s talk was packed full of information, but most of it was vocal and the slide deck served more as an outline. The opening point was that CM is a product of the work of AOSP, CAF, CM devs, users and the community at large. The combined number of those reaching over 3000+ contributors! Last month we announced the formation of Cyanogen Inc, to help support the ongoing CyanogenMod Project. The goal of that company is to change the model of how the Android market has been for the past 4 years. You are not the customers of the OEMs, the carriers are. That means your voices are not heard over the voice of the carriers. How we think it should work is a direct path between you as a user, and CM. The OEMs are merely providing these pocket computers, and the carriers should not be the resounding voice, you should be.
This is very much something the entire CyanogenMod project has been doing for the last 4 years, allowing you to choose the software you want to use (even if its not CM). Choice is always a good thing. The problem we saw echoed across the comments on this blog, the forums, and the social networks mostly revolved around one major hurdle – it was too difficult for those that wanted CM to be able to install CM. The very first JIRA ticket opened by the company was to address that concern – the process should be so easy, Steve’s mom should be able to do it (spoiler alert, she has!).
Now, being a member of our Wiki team I can proudly say that Utkanos, Fattire and the others who have helped have made it one of the best and informative wiki’s available for flashing CM. But for an average user? What they see is walls upon walls of text – leading to confusion and more likely, frustration. Those of us already using CM know this process inside and out, so it can be difficult to step back and say, ‘how do we make this easier?’. The CM Installer aims to do just that. Currently running as a beta with 3500+ testers, the installer’s goal is to make the process simple and frustration free. We aren’t doing this to lock you into CM – once you are complete, if you chose to go to another OS, there are no locks in place to stop you. We just want to get as many people to join this community as possible: more people == more voices to be heard to impact real change in how OEMs and carriers perceive us.
Now for something I have hinted at multiple times over the past few months, the on coming dual release stream. Steve has chosen the names as ‘Community Edition’ and ‘Pro Edition’. The community edition is no different than the nightlies and releases you are already using. These builds are designed for those of you who already know and love what CM and this community is about, customization, hack-ability, and yes, even root.
Then there is the ‘Pro Edition’. This doesn’t mean ‘pro’ as in cost or charging money for the OS. Instead, this is the build that is targeted at those not comfortable enough with the process to do it themselves, the exact same people who an installer is beneficial. These builds will be signed with our own private keys and shipped as ‘user’ builds (much like the stock firmware that came with your device). This isn’t a fork of the Community Edition or the CyanogenMod Project as a whole, just a more secure build (signing with test_keys is seen as a no-no, but required to allow open access to /system). Steve’s mother doesn’t need root or to alter DPI’s. She needs something that will stay current, protected and work without having to configure thirty different settings. Those settings will still be there, she can enable root easily should she choose to, but its not required for her to enjoy her CM experience. Should she want to become a hacker, she can flash the Community Edition and go to town!
The goal is to offer an additional choice, not take one away from you – allowing you to truly own your phone.
Switching gears brings us to the enhancements that have been introduced over the last few months, items that will allow application developers and the community alike to utilize unique features in CM. We’ve shown you CM Account’s find and wipe capabilities. But how about leveraging that to include full device management, backups, cross device sync, and utilizing the encryption functionality to provide secure storage? These are just a few of the capabilities CM Account provides a foundation for.
We’re also introducing new APIs specifically for CM, that will allow framework level functionality that any app developer can tap into. Voice+, our Google Voice integration into messaging apps uses our SMS middleware layer to allow apps to send and receive Google voice text messages. My personal favorites are the new live folder functionality and the remote display framework. The remote display framework is what Koush has leveraged for his ChromeCast/Airplay/Wi-fi display videos that he has been showing off. The live folders are particularly cool (in my opinion). Currently, folders on your home-screen only work one way – you populate the contents. What if the folder could populate itself, based on smart context? You can see this in action on a new-ish nightly already, look for the ‘Download’ widget (requires Trebuchet). In the slides, you’ll see Recent Conversations, which uses this functionality to do something particularly cool.
Everyone wants unified messaging, but when most think of it, they think just SMS and something else (maybe Hangouts and Voice). But what about all the other messengers out there? Sure you could try and work with those developers to create a true open API, but that’s highly unlikely. Instead, we went from the outside in. Its the people you talk to that matter, not the apps that you use to talk to them. Recent Conversations does this, so regardless of what app you talked to your mother in, tapping her name in the live-folder will take you to the most recent application used. Talked to your Dad in Hangouts? It’ll open hangouts. Talked to your sister in both Gmail and SMS? It’ll open whichever one you two spoke in last. This is obviously an over-simplistic explanation of the functionality, there is some powerful code behind it, but the tools to build apps like these, this is what we want to provide.
This is just one example of what live-folders can do. You could make one for games, and every time you install a new game it would populate the folder automatically. Then, build in some heuristics, so as you play more games, the system (locally) learns how to organize the games in a way that you are always just 1 tap away from your most-played game.
If we can enable users to have more control over their phones while at the same time allowing application developers to build new powerful and unique experiences, then we’ve reached our goals.
Last but not least, we have the CM Edition of the Oppo N1. This is an exciting experiment for us, to see what we can come up with if the roadblocks were as minimal as possible. Having an OEM that is genuinely interested in working with the community is amazing, and we look forward to growing these types of partnerships.
CM and AOKP Panel
A lot of users see things as Team A vs Team B, in some sort of Android Rom League (ARL?). But in reality, minus some internet drama or misunderstandings, the developers behind the scenes actually get along quite well (the booze and good food help). Steve and Koush sat down with Roman and Joshua from AOKP for a friendly discussion and audience Q&A panel. Topics included whether root was needed in custom OS’s, to thoughts about Google’s motivation to internalize more and more of the the new things being added to Android. It was a ton of fun and everyone walked away smiling. Its great to talk to like-minded people, and at the end of the day, we all want the same thing – to create awesome things and let people use them. Definitely a highlight of the weekend.
And then there was a party
What is a conference without the after-party? This year CyanogenMod was proud to be the official sponsors of the BABBQ party, which included the stylings of DJ Tha Phlash and, what I think became an overwhelming success, races of Adult size big wheels provided by HighRollerUSA (check out the GoPro footage). There was also a moon-bounce obstacle course, and Sony came out with a dunk tank to support the charity cause, letting participants have the opportunity to dunk well known Android folks. Lots of good fun, good food, good people and drinks.
Here’s to looking forward to next year’s festivities!