• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

ROM Devs are awesome. Why isn't Google?

lylekelli

Lurker
I feel this is an important question that I have not yet found a direct answer to:

If ROM developers can make my GNex run this smooth (or any phone for that matter), than why can't Google/Samsung/Verizon from the get-go?

Thanks in advance to whomever is able to shine some light on this for me.
 
One thing I can think of(I may be wrong) is that they have so many phones that are being developed and produced. They're having to make it run differently on different phones and so many phones. Still no excuse for why, but a lot of ROM devs make the Roms for a single phone, so easier to lock on to problems, and correct them.
 
Yep, the above is one reason. Also, keep in mind, Google is building the code. They're coming up with it from scratch. The ROM devs, as great as they are, are just tweaking what's there - it took a lot of effort to build it in the first place. There are only so many hours in the day, and they can't spend all day performance tweaking. There have to be bug fixes and new features and security patches, etc.

Lastly, Google is, like most companies, going to have a very rigorous testing cycle. The ROM devs can tweak, release, get bug reports, tweak again... Google doesn't have that luxury. They have change control procedures, then a testing rollout and testing execution phase, official bug reports that have to get filed and addressed... being a company means you're not as agile as the guy building it on his home PC. That has some benefits in the amount of structure and control over the code, but it has some disadvantages, too.
 
I feel this is an important question that I have not yet found a direct answer to:

If ROM developers can make my GNex run this smooth (or any phone for that matter), than why can't Google/Samsung/Verizon from the get-go?

Thanks in advance to whomever is able to shine some light on this for me.

A ROM Dev can risk releasing brokedick software and letting the public alpha/beta it for them, because if something is majorly messed up the consequences are on the user not the dev. By doing this, however, the ROM Dev benefits from a wider testing database even if the number of users is lower than stock. That's because every "tester" in this case is providing real world usage and feedback.

Conversely, if Google/Sammy/VZW release software that completely distroys the phone, they're on the hook for the fix/replacement. And in this scenario, all your testers are likely in a single (or similar) locations. I'd wager that some of the 4G issues we see are compounded by testers being located in large cities where 4G signal isn't an issue.
 
Also, devs can release 947 updates to their ROM...and all of the users understand what updating entails but realistically Google has to limit their updates considering they are rolling out to hundreds of thousands, possibly millions of devices. Devices operated mostly by regular people. People who would freak out if their phone had to update for 20 minutes 3x a week. Google has to roll out limited, solid updates.... typically only to fix several bugs and maybe 1-2 'updates' per year.
 
Thanks for all the replies here. I do understand the process of ROMs being developed with multiple iterations in a short amount of time and allowing the testing to be done by users.

Keep in mind here that I am not talking about generalities. I posted this in the Galaxy Nexus forum b/c I am specifically talking about this phone. I am also not talking about issues such as signal strength/4G or battery life issues. I'm simply talking about the responsiveness of the UI.

The lag in the app drawer, or lag in landscape keyboard for instance comes to mind. I mean, this is Google's flagship dev phone, and they do test it. It's not like the testers at Google/Android, etc. don't notice that there is lag in these places.

Yet in my ROM, this lag is non existent, so it's not like it can't be done. So why doesn't Google address this out of the box?
 
I dont have lag in my app drawer and the landscape keyboard issue is probably a bug they missed or couldnt correct in time.... at least judging by the fact they claim the fix is ready for the next update.
 
Yet in my ROM, this lag is non existent, so it's not like it can't be done. So why doesn't Google address this out of the box?

With utmost respect, this is spoken like someone who has never worked in development ;)

There are fixed resources. Only so many hours in the day, only so many people on staff, only so many dollars allocated to a project. So you must pick and choose what is important, what is not important, and what can feasibly be fixed.

While I am happy that your ROM has reduced lag in some areas, you honestly do not know at what cost. There are a lot of ways to change performance. Was code removed that slowed things down but prevented errors from occurring in other phones? Was the process given higher priority, meaning that other processes could be starved for CPU time if not enough is available? Perhaps the dev simply removed some optional code, which was important for Android as an ecosystem but not important for you or this particular ROM.

Changes are not as simple as you think they are. Frequently, changes affect other parts of the system, so resources and test cycles must be planned accordingly. I work in an IT shop that produces embedded devices, very similar to how cell phones are treated - this is how it is done. You prioritize, plan, and allocate resources to the best of your ability.

Sometimes that means seemingly "obvious" problems get shipped if they don't adversely affect core functionality because there weren't resources to correct and test (remember, everything must go through a comprehensive test cycle). Sometimes it means that a fix is slated for another release - so it's not that it wasn't identified, it's that the resources were planned for coming months. Sometimes you have problems that you simply can't easily fix - homebrew fixes don't always pan out on a broader playing field. Sometimes, yes, things just get missed. But more often than not, they're on a bug list somewhere that the project managers prioritized and decided to not fix yet.
 
Binary has summed it up very well but I just wanted to add that Google released Android as open source for a reason. Hackers and developers can do whatever they want with the code and Google is a big supporter of it.
 
I think we'll have to wait for the official OTA and then for roms built off that to better judge. Roms built from 4.0.3 shouldn't be compared to 4.0.2, imo.

plus... Google knows there is a huge dev community, so it make financial sense for them --- at least in terms of tweaks/customizations --- for smoothness, I imagine they try to get it as smooth as they possibly can in a timely manner.

In the end it is all economics. The market has consistently proven that to make money selling things, they don't have to be perfect. Essentially we are paying to be guinea pigs! That's just how the market works...
 
The learning curve is also a reason (IMHO). All the tweaks are AWESOME to me (and us). Android suffers from so many different skins, and tweaks from different manufacturers as it is that it is confusing for most of the population to pick up one device and translate that knowledge to another. Unlike Apple, there is no real consistency between devices (see the Kindle Fire vs. ANY OTHER 2.3 Android device out there).

I am now using AOKP build 25 with Nova Launcher which has sliding dock, infinite looping home screens, flashed new reflecting soft keys (some come with search), etc. etc. etc.

This kind of customization is AWESOME to us. But to the average consumer, not so much. It's confusing. ROM bakers are amazing at what they do, but what they do doesn't interest many outside of the 3% of Android owners that come here, and that's OK. If a feature is baked in, and is wildly successful, Google will often incorporate it in their next build. That's how Cyanogen got his gig. If you are here and LOVE it, consider yourself part of an exclusive club that gets to see what next year's Android owners will love.
 
Back
Top Bottom