Hacker News new | ask | show | jobs
by throwawaydbfif 3407 days ago
Yeah, you can fork. Take AMP or Android for example.

With AMP, the instant you fork and change a single character of code it becomes incompatible because part of AMP is a verifier that makes sure only the official version is used with Google's cache. Without being able to serve your custom AMP pages from Google's AMP cache the entire point to its existence goes away. The reason? Typical "security". "Tampered" versions of AMP could "do bad things", laughable considering that vanilla web pages allow you to do absolutely anything javascript allows and google has no problem showing those pages in search results or letting them freewheel in a Chrome tab. If Google wanted AMP to be open they would have built it into their chrome browser so the browser could enforce restrictions while allowing users to run whatever customized AMP implementation they want.

And Android. Android used to honor the promise of being open. Years ago. This was before every manufacturer was encouraged to lock bootloaders, and back when platform SDK's and drivers for hardware were generally available even if they were kinda hard to get. This was also before the Android kernel heavily diverged from mainline Linux, and before "google play services" grew from a tiny app to a framework that powers half the OS features.

Nowadays you can only run your own Android on devices specifically built for it. Open distributions like CyanogenMod are dead or dying. Google Play services is closed and proprietary, and probably about 95% of popular apps require it to work. Even if you manage to get your own Android distribution built and running you will need to side load all your apps, and most apps just don't work because they've been built to depend on proprietary bits that Google has snuck in all over the place.

Google is better at the "embrace, extend, extinguish" strategy than Microsoft ever was. So good, in fact, that they have many well intentioned people defending them to the death even as they choke off the very open source projects they created. Virtually every platform that Google runs for more than about 5 years goes from completely open to something impractical to run yourself. If you don't believe me look into any of their older projects that are "open source".

After a certain point it's free software as in "free coupons". Somewhere in the mix, eventually, the price of of their "charity" is passed on to you.

5 comments

Hardware made a big difference with Linux and its growth. It could run on PC/x86, alpha, sparc because those are platforms. ARM is a spec sold to manufactures that all have their own SoC that attach random shit to random pins and implement the worst kernel hacks that can never be upstreamed.

http://penguindreams.org/blog/android-fragmentation/

We can't have the 90s Linux revolution for handhelds because they each need customized kernels and drivers. Many fall into disrepair and go unmaintained, even in things like Cyanogen. (On two phones I tried running newer CM images on old hardware and ran into speed and performance issues).

This is why things like Plasma and Ubuntu mobile have such limited phone support. Porting is difficult.

Also notice that I said "PC" above. There are plenty of x86 systems that are just as difficult to port to (PS4, Wonderswan, those old T1 cards with 4x486 processors on them). At least Microsoft forced their ARM manufactures to use UEFI. Too bad those platforms have locked bootloaders. I'd love to see some Lumia running Plasma.

First up - I do not argue with you. Android is not as open as it was in the old days. But I think its not fair to only blame Google here.

Google making Google play services was a natural reaction to manufacturers never updating Android on their phones for years leading to all kinds of vulnerabilities and bugs on Android that kept it far behind iOS in quality and features. Lets face it - Android used to be sneered at, the red-headed problem-child OS that used to the butt of jokes till it grew out of puberty and pimples in Ice Cream Sandwich. If manufacturers had truly honoured OS updates, Play Services may never have been built - it allows Google to update Android without updating the OS. And yes, they will retain full control over Play Services - I completely understand the need to fully possess it and ensure a high level of quality assurance.

Also blaming the fall of CyanogenMod on Google is ridiculous. CM fell because of mistakes made by Kirk Mc Master and several others. He attempted to be a dictator even going to the extent of banning OnePlus phones selling in India - this was fought and resolved in the courts. All goodwill for CM was destroyed. OnePlus ditched CM and moved to Oxygen OS. CM had a stroke and died. Now Lineage is the new shiny OS rising from the cooling corpse of CM.

Interesting info about CM, didn't know there was more to it.

I still disagree with play services because it wouldn't be that hard to force manufacturers to support updates when you command such a large part of the market

Google is 100% to blame.

There are these things called contracts, and if there are clauses for an OEM to be allowed to have access to Google services, Google lawyers could certainly add a few more sentences regarding compulsory updates.

Android is open source, and OEMs see long-term updates as a money-losing proposal. If the "lost sales" (to them) costs outweigh the benefit of shipping Google services, OEMs will fork/ship AOSP and call it a day - they want profits more than they respect/fear Google. Google's negotiating position is not unassailable.
It sounds like you have no idea how deep Google's MADA contracts with OEMs already go. =) Shipping devices with Google services included requires you sign over your entire business decisionmaking to Google: They have approval/veto power over every single device and software update you release that contains their services, and they also forbid you to sell any devices running Android that don't contain their services, just to make sure you don't try to exert any independence on the side.

Android isn't open source, except in the hearts and minds of fanboys everywhere. =)

> OEMs will fork/ship AOSP and call it a day - they want profits more than they respect/fear Google.

Good luck getting all those apps running without Google services, or getting the devs to re-written them to use alternative APIs.

It only works in countries like China because of the way the government controls everything.

I pretty much doubt anyone cares about Amazon or Jolla's fork, or cared for the Blackberry's one.

It is just about not caring one second to enforce updates.

Thank you. I wonder how many open source advocates recognize this.
Thanks so much. I get a lot of downvotes and use throwaways because of comments like this, so it's nice to hear some praise every once in a while.

Google's projects all seem very inviting from a distance. Usually it's not until you're ready to implement something that you find out that you're fucked, and how.

Serious ranting below but something I never get a chance to say:

I'm a born skeptic and avoid the silicon valley mindset even though I'm a driven person. I used to find myself often in disagreement with others because they don't or refuse to see the truth. Some people don't like to be told they're wrong. Many of those will fight other opinions just to justify their own decision, but will secretly reconsider. Others will hang onto beliefs with every ounce of strength as their mistake builds into a Maelstrom that consumes everything they care about.

With some people, after challenging their beliefs, they will end a friendship rather than admit you were right in the first place. Especially if you refused to do something their way and it saved them from disaster. Some can't stand to be THAT wrong. As if I was some asshole who saved them from their fate, and now they're a spirit left wandering the earth until they can fulfill their original destiny. Its like I helped them cheat without telling them about it, stealing the joy from victory. This is something I learned the hard way more than once.

In real life I keep my opinions to myself to avoid this nastiness, and offer opinion only when asked. The people open to advice even if they disagree learn to ask my opinion since I always tend to have one. The majority of people I know, including some good friends, have no idea what my personal opinions are on many subjects. It would cause pointless pain and argument with people I care about regardless of their beliefs.

I'm not loyal to any platform or company and I will freely throw a strongly held notion to the wind if I find disturbing evidence that I was mistaken. Most people are not so malleable.

A lot of people take their beliefs too seriously to the detriment of society. At least on the internet I can express my opinion, however "uncool" using throwaways.

In the real world the best and most meticulously researched advice I've ever given is at exit interviews. The one time you can be open, honest, and politically incorrect with coworkers. Multiple companies made serious operational changes after giving my exit interview. Others have told me in nicer words "that's really fucking great to hear I'm pretty happy I never have to talk to you again".

The problem is, you never know how somebody will respond. During exit interviews I'm treated more like a person than a subordinate since the boss relationship is formally over, which helps I'm sure.

In real life, the way to influence a strongly held opinion is best decribed by watching the movie Inception. You introduce nothing more than minor inconsistencies while outwardly expressing little opinion, then wait to see if your clues are enough to lead them to towards the promised land.

My other common tactic is to do things without asking any opinions first. You at most come off as insensitive, aloof, rather than someone to intentionally disregard their advice. Usually the opinion matters less in practice than if you had asked in the first place. Classic forgiveness is easier than permission.

Ive sometimes wondered if this makes me a physcopath or if that's just how some people tick. Anyways, god bless throwaways and the internet

At the risk of down votes, I'll be as blunt and honest as you claim to be - after reading this screed - you mostly come off as a someone with an inflated view of your own importance and abilities. While I might agree with you that the silicon valley mindset is harmful - anyone who would rather keep a friendship and watch a friend go over a cliff in a barrel, isn't really worth keeping around - either as a friend or an employee.

Fighting the good fight, fighting for the things that are just, and true, and good - are nearly always worth it, the key is to back off before it becomes a pyrrhic victory.

That's a lesson I had to learn the hard way.

I think parent poster is using the term "friend" in a more liberal sense. I would counter that anyone who you're afraid would berate you for honest feedback can't honestly be considered a "true" friend. In most cases anyway. Even then, some people just have to learn the hard way.
I'll save somebody but only if it's worth the cost of losing a friend. The better the friend the more I let them learn from their mistakes. The truth is that losing a good friend would hurt us both more than helping them mend the wounds after smaller stuff.

It's not being evil or that I'm always right. The comment was mostly in reference to those that have been calling me a shill the past few days and how they should keep in mind that their opinion is not fact.

I gave up the good fight years ago. The worst was when I helped turn around a failing small business. We all wanted the same goal, the company to be successful. It sucked so bad that I learned that it's better to be nice to your friends than to dedicate yourself to a cause or try to fix all their problems.

If that means letting them fall sometimes that's okay, as long as you don't let them get any deeper than you can reach. If you help pull them out in the end you're still a good friend.

So the company turnaround, it worked in the long run but at great cost. Cutting employees that sucked at their jobs but were friends and helped us with the initial plan. Cutting moochers that I loved but were sucking the company dry with constant unscheduled time off and freebies. Redoing our systems to automate as much as possible made us our first profit in years but a lot of that was from jobs eliminated. Hiring people of a higher caliber than existing employees by raising application requirements above what most of the current employees would meet. Offering our new more qualified people more money than Bob who's been here for 15 years but did our financials on pieces of scrap paper.

By the end of that process a few years later, my lesson was that I made the owners a lot of money at the expense of losing about half my friends. Most of the other half resented me for what I had done and thought I was a traitor, even though I had just helped implement exactly what we had agreed upon a few years back.

We planned to cut dead weight and streamline and automate operations. To add new talent with up to date skills. To cut our benefits slightly to money to invest in the company's future. Everyone wanted this until it was their benefits or their job being automated. I followed through with the cause and at the end I felt like a Judas figure and packed up and left in shame.

You could say it was a pyrrhic victory for sure, but after that I'm very wary to set anything in motion that's too heavy for me to stop on my own

I agree with a lot of your sentiments and am only responding to rubbish your psychopath claims. I don't think you need to worry, in particular if you don't exhibit cruel or violent tendencies. You demonstrate concrete moral reasoning, even if at odds with others, so not sociopathic. "Psychotic" perhaps but your reasoning seems lucid enough. The one reservation I would have is about your "omega man" mentality; that you could be suffering unescessary mental anguish as a result. Also if I were operating an online community I'd be somewhat concerned with your obvert circumvention of moderation checks and balances using throw aways etc. However - I think you're submitting perfectly valid opinions in a respectful way and I share your unease at how there seems to be a groupthink at play shaping the quality of discussion.
Hahaha psychotic ish ramblings are fun to write sometimes though :). I'm about to retire this throwaway so IDGAF about what I'm writing as much as usual.

Omega Man is an interesting term, never heard of that before. You're totally right that it's how I try to operate but only when I'm doing controversial things. Perhaps I'm doing it right if I seem to be going about it in the most quiet and passive way possible :) .

You don't have to worry about me running any communities online. I'm a productive member on a bunch of online communities including HN and I don't use my throwaways to respond to, upvote, or otherwise sockpuppet my regular account except a couple times I admittedly may have upvoted the same thread on different accounts by mistake. Most of my less opinionated stuff is under my real name

The only reason I respond sometimes is because I disagree. Sometimes my controversial opinions prove to be a lot more popular than I thought. And possibly miraculously, all of my throwaways eventually gather substantial positive karma despite the fire and brimstone rained upon some of my comments :)

This reduces to the old argument that the Four Freedoms model of open-source software is basically moot in a world where the value of software is dominated by network effect, not modifiability.

It continues to be a weakness of the Four Freedoms model.

> This was also before the Android kernel heavily diverged from mainline Linux, and before "google play services" grew from a tiny app to a framework that powers half the OS features.

How diverged is it? Would the ever be merged back together?

Last I checked some devices were running mainline kernels many years old, like 2011, with zero code back to mainline. One of the other posters mentioned rampant hacks to the kernel to get things to work in stupid ways which I've heard a lot of as well.

Android is missing a ton of new Linux features on many devices and the kernel is getting increasingly unusable by ARM devices in vanilla form because of these badly done third party modifications