I did the opposite and can't believe how much better my life had gotten because my iPhone is just a simple tool that I use for communications and don't think about it as a project. With Android, I always wanted to tweak silly things and run Cyanogenmod because the handset firmware was always so bad and vulnerable. On several occasions I'd bricked my phone requiring hours of recovery, or had transient failures of cell service and communications issues. I guess if you have the right level of discipline, apathy, or use a Nexus device that may be more Apples to Apples (harhar).
What you're saying is that you left the freedom of your device to jail yourself into simple interface...?
Actually, this is a pattern that many products follow, as they evolve from a newly tinkered thing pioneered by enthusiasts to a mature consumer device.
There is much more "freedom" in 80's and 90's audio equipment. (And markedly higher build quality. Bargain stuff I bought as a teenager is now lauded on ebay as the good old stuff, "built like a tank.") However, there are also a lot more cables to deal with.
The progression is like this:
1) Pure tinkering, no standards
2) Enthusiast market, standards, high modularity/complexity
3) Prepackaged experience, no modularity
Cars also followed this pattern, come to think of it.
> Cars also followed this pattern, come to think of it.
I remember my dad complaining all through my youth about how the more modern that cars get, the less serviceable you are. That in new cars you need special computers just to tell them that yes, you did fix the problem and the car can stop complaining now.
10 years later ... man, if I have to even think about opening the bonnet and poking at something, I assume the manufacturer has failed at their job. I don't want to maintain my car. I expect my car to be a tool. Even taking it into the shop to get its tires changed every winter (and the additional 30euro checkup and winter-prepr, then spring-prep) are too much of a hassle.
Maintainability is the feature of unreliable equipment.
> Maintainability is the feature of unreliable equipment.
Not quite. The whole purpose of maintenance is to increase the longevity of a product by making small, cheap, tweaks to complex parts that can fail due to wear and tear.
Everything lasts longer if you maintain it. A good knife, a high performance vehicle, a good pair of shoes, a couch, etc ...
I don't know of any product that is "as good as new" after years of use. Watches, even spoons, aren't as shiny as they were when you bought them for the first time.
Agreed - which is why building mass market convinience stuff that require it is a bad idea - I have limited hours in a day - I do not want to spend any of them doing chores such as maintenence - I'd rather just buy a new working thing every x years and not care. Paying someone else to do the maintenence is nice in theory but finding someone reliable who won't ripp you off is too much hassle.
In college I changed my oil and filters. It was a pain getting under a car a few inches off the ground, disposal was tricky, and I had to spend time cleaning up nasty gunk. I also could only do it when the car had not been driven recently.
The fundamental problem with changing your oil is that it involves oil. I saved $30, at the cost of an hour of my labor. As soon as I had a job, that equation didn't make sense.
I did the same thing on a late 90's 3 series throughout college. A pair of car jacks or rhino ramps makes the job way easier. Also if you take your oil to pep boys they'll dispose of it for free. Either way I'd still do it if I didn't live in a city. There's something nice about maintaining your things, it brings pride in ownership.
I now have a much newer car (that I probably don't need since I don't need to drive to work and live in a city) and no garage so I pay for oil changes. On the college car I knew how everything fit together, I took everything apart to fix it multiple times, I changed/ upgraded/ retrofitted things in their to make it more enjoyable. On my new car I can't really do those things without more complicated tech. It definitely changes how you view the object. Both are fun "tools" but one was my fun tool the other isn't
I think his point is that the goal is to make equipment that minimizes having to make "small, cheap, tweaks to complex parts that can fail due to wear and tear".
That's not how it works though. Manufacturers realized they want to force you to buy again so they just made it unmaintainable with the same lifespan. iPhones are unmaintainable and they still become useless after 5 years or so.
5 years is a long time for a smart phone! And remember that a longer lifespan costs more money. I doubt many customers (myself included) would be willing to pay more money for an iPhone for it to last more than 5 years.
Except for when you have to update the microcode due to bugs that freeze your system under certain loads. Or when certain calculations are incorrect and you could NOT maintain it and the whole CPU range had to be recalled
Oceans have different parts and are far more homogeneous than CPU's. Further individual transistors can break making parts a meaningful distinction.
PS: We call them silicon chips, but there are several tiny blobs of different chemicals involved. The process is closer to 3D printing than you might think.
I am aware of how chips are constructed. They are not built of discrete parts even though they are composed of multiple chemical elements. They are assembled through chemical processes that create a unified product through a few hundred steps. They are not an assembly of billions of parts and it is misleading to describe them as such.
Part does not just mean discrete object. The lower part of that beam is damaged.
pärt/Submit noun
1. "a piece or segment of something such as an object, activity, or period of time, which combined with other pieces makes up the whole."
2. some but not all of something.
"the painting tells only part of the story"
You might be thinking of Component, but even that's arguable. CPU's often contain nonfunctional parts so each transistor is actually a meaningful distinction.
The need to preform maintenance during the useful life of an object is a defect. The ability to extend the life of an object through maintenance is useful. These statements are not in conflict.
Early CPU's where built to be maintained, modern CPU's are not. That in no way makes modern CPU's worse. The Hubble cost more to maintain than it would have been to replace with something better. From a utilitarian standpoint the ability to maintain it was useless, from a political standpoint NASA loved being able to pretend those missions where useful.
At a deeper level maintenance generally means some parts break down before others. So, an ax becomes less sharp over time. Meanwhile the head also loses strength which limits how long that head can reasonably be maintained.
QED: Maintenance is all about having different parts that ware out a different times.
I'm not taking sides in this debate, but I am surprised that we haven't yet seen a product which is a car lease for 3 years where the hood doesn't even open. The car ships with synthetic oil and high mileage tires and literally the only thing you do is put gas in it. The high end version of the lease involves someone driving to your place of work and filling up your car with gas, so that for three years you literally just get in and drive.
I think there is enough of a luxury market for that to be a thing, and I am surprised we haven't seen it yet.
This is absolutely not true of equipment with moving parts. It must either be maintained or treated as disposable. One of the hallmarks of commercial-grade equipment is its ease of maintenance and repair. You might not find it fun, but professionals who rely on that equipment for their livelihood understand the long-term TCO for well-maintained commercial-grade equipment vs. disposable consumer-grade equipment.
Whether that applies to mobile phones with their general lack of moving parts is an entirely different question.
> It must either be maintained or treated as disposable.
While I agree with this, I understand where Swizec's comment is coming from. I have a few business acquaintances who have been automotive engineers for 30-40 years now. They have an excellent idea of how their cars work. And yet, they rue that earlier, they could open any broken car and get it to run. Now, there's not much they can do to fix their own cars. Pretty much all they can do when they see a blinking light is take the car to a mechanic. The older generation has learnt that they can't fix their cars. The newer generation, unsurprisingly, doesn't even want to make the effort. The older generation could fill up their oil, change their filters, etc. Now, most people just get their mysterious machine serviced every few months. "I don't want to maintain my car" seems like a natural consequence of how cars work now.
OBD2 doesn't tell you much, in a lot of cases. It might identify a loose gas cap or a broken plug wire, but for everything else that can wrong on a modern car you need the manufacturer's proprietary scan tool and a subscription to their online service documents. These cost thousands of dollars, needless to say.
Not that, but certain "luxury-brand" cars specifically don't want you fiddling with anything, and to simply bring it in for a service.
E.g. The weirdest part of it (after driving an old car for the longest time) was they explicitly tell you not to have gas-station attendants check your oil for you. If you're leaking/losing oil, the lights will at some point come on and prompt you to take the car in for service.
> E.g. The weirdest part of it (after driving an old car for the longest time) was they explicitly tell you not to have gas-station attendants check your oil for you. If you're leaking/losing oil, the lights will at some point come on and prompt you to take the car in for service.
Why is that weird? It's a pressurized system with plenty of sensors, you are certainly better off following the data than a gas station attendant (which itself is an old fashioned concept in most places).
And this becomes even more true as the thing with moving parts becomes more expensive. For an excavator which costs several hundred thousand dollars, when a shaft wears out of spec, they send it to a welder to apply more metal, then onto the lathe to trim it back into spec. In other words, when the equipment gets expensive enough, parts which you wouldn't normally consider to be maintainable become maintenance items.
An item that can't be maintained is an dark pattern. It is a sign of planned obsolescence. It is goes against the interests of the user. Items should be designed to have long lifetimes. This only doesn't happen because capitalism incentives manufacturers to sell consumers a new product as often as possible. There is no reason an item can't be user friendly, reliable, and maintainable.
By creating reliance(for service), a future revenue stream is ensured(for manu or 'authorized' provider). Over-engineered products with features of spurious benefit only adds to the reliance. That is The Service Economy, in a nutshell. But don't worry, we can always pay more!
An item that can't be maintained is a light pattern. It is a demonstration of confidence in good design and engineering; longevity for as long as an item is useful, but no longer.
It is in the interests of the user to do away with the costs and complexities of making something maintainable and the consequent obligation to do maintenance.
This only doesn't work well because once something reaches a reasonable 'end of life', there often is no identical or equal replacement. This generates in the user a wish that they could maintain their old device to prolong its use, to avoid having to choose and learn a new and different device which may not even have any improvements.
There is no reason an item can't be user friendly, reliable, and need no maintenance.
The majority of people don't even maintain their bodies, which are priceless and irreplacable - it does not make sense to say capitalism is failing because it's not meeting people's interest in doing maintenance, when people don't show any interest in doing maintenance (outside of a small subset who care about maintaining certain specific highly prized or expensive and necessary items).
When my teeth start to rot I get them fixed at the dentist, then start to maintain my teeth by brushing them. If I get a wound on my arm, I wash it and apply bandages, not finalize my will and kill myself. When your toilet gets clogged, you plunge it, not buy a new toilet. When your carpet gets worn out you replace it, not tear down the whole house and buy a new one. If the RAM on your computer fails, you buy new RAM and install it, not scrap the entire computer and buy a new one. Absolutely, ideally everything would run perfectly forever without intervention, but disorder is inevitable in this world.
Without intervention, the artefacts of civilization would literally crumble within decades. With proper maintenance, a building could last for centuries, a car for decades, a computer or phone I would hope for at least 5 years.
Our throwaway culture is threatening our existence via environmental degradation. We're in the middle of a mass extinction, and climate change could literally end life on Earth. We need to consider the long term sustainability of our economy, way of life, and civilization.
I bought my Corolla off the lot in 2004. It currently has 120k miles on it and I've never had a major problem with it.
OTOH, I always maintain it by taking it into the shop and having them do what they do.
The only issue I'm having now is the A/C would sometimes go out last summer, but I'll be getting that looked at as we get into the summer months.
I expect this vehicle to be running just as well at 240k miles. I've already got over 10 years in it and I don't expect another 10 years to be outlandish.
That's lasting power, but I don't maintain the vehicle myself, I pay others to do it for me.
I'm still with you father on modern vechicles. Yes--the engine light comes on, and I can read a PID trouble code on many vechicles.
The fault code is not always the problem. It's just not that simple to fix a modern vechicle. I pull a generic pid of XXXX, but maybe, around 30% of the time it's just that error code.
Manufacturers have scan tools that read there products very well. Much better than my Snap-on 2500mt. I can't buy their tools, nor will they sell their priority information to
most mechanics.
So, working on vechicles made after, I say, 2000 is really getting hard.
So hard, I believe most vechicles made in the 90's will become collectable? Why--they have less do-dads, and Emmission sensors.
It gets monumentally difficult if your trying to get a vechicle to pass CA Emmission tests.
I thought OBD2 would make working on vechicles a breeze. I have not found it to be the case.
I have found buying a new vechicle is a lifelong relationship with the dealership; at dealership repair prices. I think manufactures did this on purpose. "Get them to buy your vechicle, and keep them coming back?" A sales tatic that software companies have been relying on for years now? I still remember buying Lightroom 1 at $199.00, and thinking that's all I will spend. What a deal?
I actually foresee a bunch of bricked, by failing emmission tests, vechicles in the near future.
Good post. And that's why if I ever by a car it'll be older and not require a proprietary computer sensor to maintain.
That and I have a hard time with the new "smart" driving technology. I was in my friend's Subaru last week and it beeped anytime he did anything remotely out of line...
> Good post. And that's why if I ever by a car it'll be older and not require a proprietary computer sensor to maintain.
If that day comes you should find a way to secure it because almost all older cars are very easy to steal. Those computer bits make new cars much more difficult to snatch.
In Germany the vast majority of cars on the road are well looked after and relatively new - at least that was the persistent impression I got during my time there.
In the US the average car age seems much older and they are less well maintained on average - the inspection is a breeze in comparison. So in Germany the overall amount of pollution is lower to start with so exemptions for older cars is a less objectionable and more clear cut. Comparatively. That's my thoughts on it anyway :-)
I had a 1974 TR6 with an H kennzeichen! It was an adventure owning that car in Germany.
Maintainability is the feature of unreliable equipment.
Not necessarily. Modern airliners are highly reliable, so long as you follow the maintenance schedule.
Disposable equipment is a feature of markets driving costs down. It's a sign of commoditization and convenience+short-term reliability winning over long term reliability.
Considering structural widths in modern CPU's, I'd disagree. But CPU's are built by the billions and planes by the thousands, so the amount of engineering that can go into a CPU is insane.
It's great, but without tinkering - you never really learn how things actually tick.
I always chuckle to myself when I'm told by 40-year-olds how their 14-year-
olds are "so amazing with computers!". But yeah - Jimmy can open up Facebook on the iPad like nobody's business, but Jimmy has no fracking clue what's actually happening or why, or how to even diagnose common issues. Then again, maybe that's ok if Jimmy doesn't give a crap about how computers work.
I grew up in Europe and never had a car until I was in my late 20's so I never tinkered with them. Now, if something goes wrong, I just take it to the dealer. So I'm like Jimmy with the iPad.
There's no problem for me or Jimmy. The world is fine.
But then there's Billy. Unlike me, Billy didn't grow up with DOS and early Linux, so Billy has never had to look at a hex dump or figure out what pointers are or registers or flags - Billy just hits "Go" in his Java IDE and prays everything works out. If it doesn't, his eyes glaze over and he heads over to Stackoverflow.
Billy is hampered by today's world. He doesn't have to tinker with his PC or iPad, but not only that, he's actively being prohibited from tinkering with them. They're not only appliances, they're sealed off, protected by dozens of copyright and patent laws appliances that you don't even technically own anymore without signing-off on 7 different legal agreements. It's insane.
Billy might never learn about how a computer actually works. And one day he'll have to diagnose/fix something that only the 30-somethings can and he won't know how, and not because he's dumb.
Those DOS hex dumps meant nothing to me until I had a couple of microcontrollers and CPU architecture classes under my belt.
Like you, I'm also nostalgic about those error dumps and tinkering. But I also don't remember a single time when my reaction was more than "Oh neat, I understand my CPU did an error. reboot"
>Maintainability is the feature of unreliable equipment.
I want to see a two hour debate on that by top engineers from several industries because that seems to be one of the big questions of our time in regards to product development.
If you find an engineer willing to argue in favor of non-maintainable equipment, he's not a true engineer, but some failed engineer who's moved over to management and is more interested in profitability than in users having a quality product that allows them to keep their TCO low by being able to maintain it themselves (or by an independent professional) and keep it for a long time instead of throwing it away early.
There is, quite simply, NO good argument in favor of non-maintainable equipment, unless your goal is to increase profits. This doesn't mean we should go back to the days of carburetors and points; modern cars are extremely reliable and actually highly maintainable if you have the right equipment, but there's no reason they can't make the computer-based service tools publicly available so that anyone can service them themselves. They keep that software and those interfaces secret to increase profits.
>There is, quite simply, NO good argument in favor of non-maintainable equipment, unless your goal is to increase profits.
As a universal assertion, particularly in the realm of products intended for personal mobile use by the general population, this absolutely and utterly wrong. The fundamental core issue is that many forms of maintainability require dead matter, simple as that. Take removable vs non-removable batteries, perhaps the most classic example in portable electronics: having a removable battery requires user safe contacts that can handle repeated mechanical strain, the battery itself to have its own protective case, the device case to have a way to interface the battery and the resulting structural support and tradeoffs therein, the dimensions and shape of the battery are significantly constrained, etc. All of this boils down to significant additional stuff that isn't battery, or performing any other useful role for that matter, but rather is simply scaffolding/support infrastructure. In other words, dead matter. There is no free lunch. A removable battery fundamentally can never match the size/weight/performance matrix of a non-removable one, full stop. That's the tradeoff for being able to swap it. In this specific example there are additional potential tradeoffs too for some use-cases (it's significantly easier to have a higher degree of harsh environmental tolerance with a fully sealed system for instance).
Now, yes, there is absolutely room for reasonable disagreement about what side of the tradeoff is correct for any given application or use-case. There are times where the utility of maintainability or modularity is well worth a reduction in default performance. But there are also many cases where a higher percentage of active matter in a product is a legitimate feature to the majority of its intended users. The "No True Scotsman" fallacy you use to start your argument should have been a flag and caused you to rethink the rest of it.
I disagree. You can call this "moving the goalposts" if you want, but I don't think it is. You seem to be basically be claiming that something is only "maintainable" if you can easily disassemble it down to the smallest component; I'm not arguing for that at all.
If there's an actual engineering reason to reduce maintainability (e.g. it improves performance), that's a worthwhile consideration. What I'm talking about is when a product is made intentionally non-maintainable, or maintainable only by people with service tools which are non-obtainable, solely because it increases profits. There's no good reason for this.
Now, for your battery example, I don't think that even applies. From what I've read and heard, most "non-replaceable" batteries are actually completely replaceable, it's just not so easy to do and requires a bit of skill. "Maintainable by a service technician with some common hand tools and half a brain" does not equal "non maintainable". I've seen tons of videos on YouTube showing non-professionals how to take apart their phones and replace those "non-maintainable" batteries. It's not like the things are epoxied in there. And you're right, you can save a bit of space by going that route; it's an engineering trade-off.
My example of something that's deliberately designed to not be maintainable (by the end-user or someone not employed by or affiliated with the manufacturer) would be a car that requires regular service, but where it can't be done without connecting a laptop to the car and using an extremely expensive software program to really do nothing more than tell the car the oil has been changed. This makes it impossible for the customer to do the service himself, or have an independent mechanic do it unless that mechanic is willing to shell out the money needed for that tool.
>If you find an engineer willing to argue in favor of non-maintainable equipment, he's not a true engineer
And probably not a true Scotchman either.
I mean, obviously only a failed engineer would ever propose not maintainable products -- everybody should use old maintainable razors for example, and not (recyclable) disposable ones. /s
Oh please. It's not engineers who propose non-maintainable products, it's the marketing and business people who make those decisions. Engineers just carry them out.
As for razors, that's a terrible example. Gillette is famous for the whole "razor and blades" marketing scheme, which obviously was invented by a business person seeking to maximize profit. Disposable razors are a bad idea all around (and they're not recyclable easily; recyclable things don't have metal and plastic merged together so they can't be separated): they perform terribly and are wasteful and cost more over time. The only thing they're good for is if you left your razor at home while traveling. I like old DE razors personally, but even a modern razor is "maintainable": you can replace the cartridge heads. You can't replace the individual blades because there's no feasible way of making a blade assembly that small, with that kind of precision, where an end-user can replace the blades individually, and besides the plastic part of the blade-holder isn't very much plastic anyway. This example is just silly; it's like claiming a car air filter is "unmaintainable" because you can't wash it out, or you can't separate the paper pleats from the plastic frame. That's just dumb. As long as the filter is fairly easily replaceable, it's OK for the filter (a consumable) as a whole to be a disposable product.
I am not arguing for things to be made so they can be easily disassembled to their smallest components.
Hmm. Take it from a resident of Scotland, the words are Scot and Scottish. Scotch is whisky or tape, and when it is applied to people is likely to result in contempt at best
I'm sympathetic with your overall point, but the fact is, I own and enjoy a lot of cool gadgets that simply couldn't exist if your words became law.
It's best to think of "unmaintainable" things as monolithic components of a larger system. You wouldn't complain about not being able to fix a light bulb, would you? Then don't complain about not being able to fix a smartphone. Your phone is just the tip of a leaf on a very large tree... and the same will be true of our cars, soon enough. This isn't necessarily a bad thing.
As for what "true engineers" would do, engineers have to take the big picture into account and design accordingly. Everything real is a compromise of some kind, and maintainability is only one factor among many that can make a product succeed or fail in the marketplace. If you design something that fails in the marketplace, it probably doesn't matter how awesome it is... or how easy it is to fix.
Unlike the HN readership, most people don't want to think about the tech. They just want to get things done, and are willing to pay big bucks for that convenience.
Don't buy a Nexus. I have and it's a huge disappointment.
I had a perfect Nexus 10 device running KitKat. And then it keeps nagging to upgrade to Lollipop, so I did. Ever since that, it runs every application slow as hell. If you allow the battery to run out, prepare for pain. Once you fill up the battery and it restarts it will start "optimizing" all installed applications. I have about 80 applications and this takes an hour. Every time it reboots!
Also, whether the sound will work after reboot, is a lottery. If you leave it plugged into the power, it surely won't work.
It's been how long since Android L came out and they still haven't fixed these issues for their own flagship device. Nexus is a mess and we're not even beta testers. Just a big fu from Google.
Nexus devices have pretty much proven out to be that way. I was going to move to a Nexus before abandoning Android (after about 7 years of using various phones) but they cut off updates way too early. My friend has one and overall I was just not pleased with it. Build quality as well. I ran Cyanogenmod on my phones usually and helped a lot but I'm still happier with my iPhone.
I ended up moving to an iPhone 5S and I love it. Right size (for me) to hold with 1 hand while holding the rail on the train or bus, and runs really well with no problems. I maintain my work computer and home machines, that's enough. I really didn't appreciate what Android offers and it really is a shame that even the Nexus isn't the answer. I'm not a hater, I use what works for me.
There is no real iPhone equivalent in the Android market. The real kicker for me was that my wife has been using an iPhone 4S to this day, since 2011. I went through 3 or 4 Android phones in that time. Not low end phones either, Motorola Droid, GS3, GS4, HTC Thunderbolt... absolutely absurd.
Today we buy apps once and both use them, enjoy the iPhone tracking services that are built in, and the fact she just got iOS 9.3 is flat out fantastic.
Apple has literally earned our business and will continue to get it.
Well, I have nexus 4 since 2012 and have been using to this day. I just might use it for another year (unless the new Nexus phones this autumn really impress me). Some of my relatives still use Samsung Galaxy S3. It is possible to use an Android phone for more than a year. I have no clue why you went through them so fast. 4 phones in 5 years? So you upgraded nearly every year. Why?
I had to upgrade almost every 1 1/2 years due to various problems. I wanted to stick with Android. I kept hoping the next one would be the "iPhone" of Android but it never landed. I don't think it ever will. The last GS phone I looked at was damn near an exact copy of Apple's all-metal design but Samsung is really wearing on me.
The best phones I had were the Droid 1 (for its day it was ok) and GS4. I don't have a ton of bad things to say about them, but the GS4 was too locked down and got returned for a 5S. Androids bigger appeal is easy hacking with CM and other mods. My GS3 just started randomly restarting, so it flaked out. My HTC Thunderbolt was definitely the worst piece of electronics and software that I've ever put my hands on. It was an absolute abomination.
They all had strange slowdowns, lockups and restarts at one point or another. The Tbolt took the cake on that behavior though. I still have the GS3, it works but it gets used as an Alarm Clock Xtreme that sits next to our bed. It's running CM and reliable enough for that. But when I really use it, seems to flake out eventually.
The biggest things I appreciate from the Android space is the great variety in smartwatches, and GearVR is pretty neat. If Apple has their own GearVR someday I'll definitely be onboard. I think that's the future of VR for the masses and Apple will swoop in and perfect it.
Only getting what's promised is a disappointment. My expectation from Google is that they over-deliver on their promises. Being pressured to buy a new (much more expensive) device is sure to turn me off from buying one.
I'm still using an iPhone 4S and I have no reason to upgrade. a while back I called to see what it would cost me to upgrade through my provider, and I think I was quotes something like $600 (that's the cheap, 2 year contract version), and I just cannot fathom why it's worth spending an extra $600 for the new iphone.
The only think I wish was better is the load times on the kindle app. We're talking seconds, so not worth $600 to get better hardware for it.
As far as I'm concerned, the 4S is perfectly usable.
We're waiting on hers to break too. But I'll be more than happy when that time comes to toss Apple their $600 or whatever they're asking for a iPhone6S Plus (that's what she wants) or 7 Plus. She's a heavy user of it, both games and calls. That little thing has seen a lot of "Cookie Run". :)
It's amazing too because the phone was originally Verizon carrier locked, then Apple/VZW sent out an update to unlock 4S phones through iTunes and now she's been using AT&T and before that, T-Mobile.
I sparsely use my 5S, and will probably replace it with a SE when the time comes. I'm more than happy buying apps from Apples store because of the ability to install on both our phones. My most expensive app was $20 for TouchDown (coming from Android I was using this for work email and liked it). She's able to use it as well. But given something with the right utility, I'd pay more than $20 if it's on iOS.
Apple made the right call in building higher quality devices, providing the best support they can, and then banking on the AppStore to pay off. Since there's only so many iPhones to optimize for, when we do buy apps they Just Work. I had a lot of trouble with certain apps on the phones I listed in my last post.
When she's missing on a Saturday morning I can see she just went to the store without hassling her. If I'm at a Python meetup or other user group, she can see if I'm still there without calling/texting. Just now I see she's 2 miles from being home from work. If she loses her phone, I can locate it or make it sound an alert, lock it, wipe it. iCloud is so nice as well for both backups and getting access to photos without even plugging it in. It's rendered iTunes useless for me, and I was never an iTunes fan.
Yes, a lot of these features are possible on Android but iOS got there first and they just work so well and built in from day 1. Zero additional apps needed. I'm also happy with iOS' interface. It's just ideal IMO. Then the build quality and support as mentioned before.
I use a NUC for my desktop, but she uses a laptop and I've never had a Mac or Macbook but we have absolutely no qualms in buying them when we need new machines. If I weren't 100% satisfied with the NUC, I'd strongly consider just buying a Mac Mini as well.
Anyway, sorry about that. I'll stop singing the praises of our experiences with an old iPhone 4S and 5S. :) But I completely understand how you're happy with a 4S. We're really that happy about our situation as well. And I hated smartphones before. I wanted to go back to no phone at all before moving to iOS.
Having gone back and forth myself a half dozen times, (and sticking with iPhone this time), the thing I miss the most on Android is iMessages. Sending full photos and videos is really nice and I just appreciate the simplicity of the interface. On my last Android device (LG G2) Hangouts still didn't have SMS support (and it was pretty ugly). It was always "coming real soon now!".
My reception on my MVNO carrier sucks at the house, but that's OK. She just has my Facetime Audio number down as primary. Signal is much less of an issue, and call quality is much better. If I've got WiFi in the building, it doesn't matter if my cell signal is weak.
I could go on all day... but yeah. I guess it cuts both ways (Apple/Android) to an extent. But there's a lot to be said for being on the same platform as your spouse.
Apple did the same thing to the original ipad. It was a great device with ios 3.x when it launched. The ios 4.x -> 5.x transition rendered it useless. The original ipad had just 256 megs of ram, around the time ios 5. arrived the ipad 3 was out with 1 GB of RAM. As a result you could see that apples own apps were making assumptions about system resources that were not true on the ipad 1. Safari, Itunes etc would crash routinely. Added bonus with apple is that they dont allow you to downgrade to previous versions of ios.
Sorry to pick on your response, and you're right, a factory reset might be worth a shot, but factory resets on Android are a PITA. The last time I did it (my last 3 phones have been Nexuses), it literally took half a day to get the phone back to the point it was at previously - I had to install OS updates, re-install apps (which also reset to 0 in many apps), re-download music (I admit, I could copy files over from my laptop). It makes setting up a new iPhone for the wife look like magic.
I wouldn't mind, but even with Nexus phones, my experience of issues is that you end up crawling Google, and the answers are the technical equivalent of doing the hokey cokey in the hope of curing a cold: "Uninstalling Snapchat made the problem disappear!"; "Install this app and use it to work around an issue", etc.). And then the last resort - the factory reset. I'm not doing anything particularly exotic with my phone, the thought of the hassle of a factory reset is just depressing.
I bought a Nexus 5X at launch, after my replacement Nexus 5's power button died. And it has been a laggier experience than the 5 (I admit the latest update seems to have improved things (though it's still not equivalent to the 5 IME). But looking for other people with the same problem you see the same responses, like a repeating background in a roadrunner cartoon - "Mine runs buttery smooth"; "Maybe yours is faulty, RMA?"; "Tried a factory reset?". Sorry, I don't enjoy this detective work/maintenance.
I doubt the iPhone experience is perfect, but it can hardly be worse, can it?
Ahhh no. Factory resets don't do ANY OS upgrades. All they do is wipe the data partitions. Unsess you downgrade the firmware no OS needs to be upgraded.
I've wiped my n10 many times. Wipe boot and let it reinstall. Takes a while to reinstall but hands off.
The n10 is problematic hardware wise. Mine will do random reboots and always has. Boots fast so not a huge issue but annoying.
In 2010, I was considering getting into Android development, so I paid full price for an unlocked Nexus S when it came out (I think it was about $500). At about the same time, I bought an iPhone 4 for my wife. That Nexus S became slower after each upgrade until it was nearly unusable. The UI was so janky that making or receiving phone calls was difficult, and wasn't even worth considering using the browser. The iPhone 4 stayed just as good as the day we bought it and my wife didn't bother upgrading until the iPhone 6S.
My current phone is a $200 Moto G and I'm perfectly happy with it. Lollipop runs well, battery life is good, and with a cheap SD card I don't have to think about storage. It isn't as nice as the iPhone 6S, but the Moto G is great value.
> The iPhone 4 stayed just as good as the day we bought it and my wife didn't bother upgrading until the iPhone 6S.
This isn't a typical experience. There's a reason that iOS9 is only on 80% of "active devices": people hold off deliberately. There have been many iOS updates since iOS4 that have caused widespread criticism for their effects on older phones.
Honestly the Moto g is probably the best value phone available. Even the earliest version without 4g or the SD card would still serve my purposes perfectly at a great price point.
You need to factory reset your device or maybe even reinstall the OS. I had the same issue with my Nexus 5 and Nexus 7 (2nd gen) and after doing factory resets after the update to 5.1.x, it was like I had a new device.
It is pre-compiling apps from java to native executables. This comes from the ART runtime which is the default in Lollipop and newer. Google for "android ART"
I think this is a HUGE problem, and that somebody is going to die because they're unable to call 911 while the phone is "optimizing"
Allegedly in Android N this will be much faster. When I upgraded my Nexus 9 to N this step was probably less than 30 seconds long. I almost didn't even notice it.
I was a longtime android user. Now jumped to iOS. It was not just the crapware but also the sheer audacity of android developers to access any and every piece of information available on the device. Marshmallow will fix things but the ecosystem still has to catch on and I don't think that developers would be quickly jumping on board.
I remember a very big media house published their first android application in my country. They demanded access to contacts, calendars, locations, camera, gallery...basically everything imaginable. And there was a fierce backlash from users.
It's always a matter of trade offs. For some people, tinkering with their device is more important. And for the rest, they just want to get their work done and for their devices to get out of the way. I have come to terms with the freedom in the latter category now.
I made a trade off, being a FreeBSD person I am one degree removed from a lot of the xnu/iOS team and trust them to do the right thing. Empirically it seems like they quickly ship updates for vulns and support phones for beyond their typical first world lifespan. I also trust Apple to worry about the baseband firmware for the lifespan, whereas that is completely unmaintained on all other handsets especially once you use a custom ROM.
It amazes me when Android users say that the answer to fleeing a walled garden where one company controls the hardware, the software, and the app store is by buying a phone (a Nexus) where one company provides the hardware and software and if you want to stay safe, only use their app store.
Nexus devices have a variety of manufacturers. The current 9 is made by HTC, the 5X by LG, and the 6P by Huawei
>one company provides the software
Nexus devices all come with unlockable bootloaders that allow you to flash custom Android ROMs such as Cyanogenmod. Past that, other operating systems such as Firefox OS and Ubuntu Touch could be flashed on Nexus phones such as the Nexus 5.
>app store
F-Droid is an alternative FOSS app store available for Android. You can also use Amazon's App store which is what Amazon's Kindle Fire Android tablets do rather than Google's.
The Nexus 9 is a tablet, and the 5X and 6P were released within a month of each other. So they're all pretty relevant, and are targeted at different markets.
I'm an iPhone user myself but I understand this impulse. Having safety and compatibility sorted out for you really is an important time-saver and convenience. However, when you want to do something that isn't part of the manufacturer's plan there's only one way to go. I probably wouldn't sideload many apps, but when there's one app that makes my life easier and app store rules prohibit it, I'd really appreciate the flexibility.
Long story short: just because you can doesn't mean you must. Options are nice but so is not having to think about it. The Nexus is a middle ground for Android
> I probably wouldn't sideload many apps, but when there's one app that makes my life easier and app store rules prohibit it, I'd really appreciate the flexibility.
Apple relatively recently removed the requirement to pay for a developer account to compile and run apps on your own device. You can pretty much sideload apps like you can on Android, just with the added requirement of re-signing them for your device specifically (which is IMHO a nice security feature). A lot of the app store rules are enforced by human review (e.g. only being allowed to use background execution for certain things), not the sandbox itself, so you have a comparable amount of flexibility (one thing I still really miss is the ability to do JIT and dynamic code generation).
Because they like the awesome hardware, they can install the software from another company if they wish and even use other app stores they trust, or better yet make their own and run them instantly without a hassle.
It is the freedom of choice. And the quality of the hardware that makes them say that!
What you're saying is that you left the freedom of your device to jail yourself into simple interface...?
That's an incredibly hyperbolic way to spin their choice. No one's in prison here. A choice was made based on desired functionality and features. And they paid for that choice out of their own free will.
They've chosen 'the jail of a simple interface' the same way someone who gets tired of working on a classic car just to keep it running as a hobby decides they'd like to buy an A8 has imprisoned themselves to the dregs of luxury car use and bumper to bumper manufacturer maintenance.
I am not generalizing here. I am solely talking about kev009's decision in moving. Read his comment, his motivation to move is because he could not resist doing things that resulted him with a bricked device.
The way his comment read to me is he felt compelled to tinker because of flaws in the device like bad firmware or poor design that didn't seem to work well for him.
So he switched to a device that worked well enough so he did not feel that compulsion. After all, he could equally choose to jail break his iOS device and tinker with it. But there's no reason (for him) to do so.
That's how it's always come across to me. I buy Nexus or Nexus-like devices (the 2014 Moto X being an example of the latter) and just like iPhones, they work just fine for me out of the box.
In general, even the devices I don't personally like with OEM skins and addons work just as well out of the box for typical uses like web, email, phone, calendar, nav, and your average smattering of entertainment and communication apps.
In that regard, there's not a lot of difference and both platforms succeed well. It's more about how well they "fail". When I use my iPad and it doesn't do something I want or behave in a way I prefer, my options are often similar tweaking and tinkering. Many times, I would need to jailbreak the thing in order to install an unsigned app not approved by Apple to get it to do what I want.
On my Android devices, it's usually a lot simpler. iOS has improved a bit in terms of customization (being able to "open with" various apps instead of the factory defaults, third party keyboard layouts, and stuff like that) but that was always the case on Android.
As these platforms have matured, they've both got their "success states" pretty solid so now it's down to how well they "fail" and how easy it is to get my device to do what I need without jaibreaking or otherwise taking advantage of security holes to gain access to certain settings or capabilities.
I tried in February to switch to the Nexus 6P. I literally had to restart it TWICE on day one. How is that even reasonable? for 650 dollars, that's a joke.
I'll get downvoted to hell, but I really don't care, iOS just works (tm), and I'll take that over custimizibility any day of the week.
This is the first time I am hearing about someone having to restart their 6P twice a day. I have been using mine for 5 months now and I would have restarted the phone may 5 times other than the times I was updating it.
Clean as it gets? That must not be a very high bar. I bought a Nexus 7 once and it came with an HP Print services app that could not be removed. I would be willing to bet that would be classified as crapware by most users.
This is the main reason I stuck with iOS, even the the "pure" Android experience the Nexus line is supposed to offer is tainted.
You mean like all the Apple apps you can't remove on iPhones? The difference is that on your Nexus 7, you can disable the HP Print Driver, so you never see it, while on your iPhone, those Apple apps are going to keep taking space on your home screen and continue to waste battery and data on updates.
And on Samsung, we have Samsung apps. Double standard?
Yes, not all of them are Samsung apps but those are mainly what Samsung users rile them for.
Once again, you are not forced to suffer this. You have the freedom to get out of this. In your case, you DON'T!!
!
And that's why Apple fans will never get it. We do have a lot of crap on Android just as you! But the thing is, we don't have to suffer it! We have the freedom to change this!
That is why Android remains a superior platform. You get to choose your experience!
You mean like Yahoo! Weather, Yahoo! Stocks, and (formerly) Google Maps and YouTube?
To actual users, it doesn't matter whose app it is. It just matters that they don't want them, and most of the Apple preinstalled apps are utter crap.
Meanwhile on Android, though the apps aren't removable because the system partition is read-only, the apps are disable-able so the user never sees them, which is far better than what iOS lets you do.
In 5.x -- because Moto/Verizon refuse to update my X to 6 -- the path to add a news number in my call list to my list of contacts is... several steps and non-obvious, via the route of the command to "edit number before calling".
With each Android revision I've encountered, I feel more pissed off at it. Whoever's making these changes -- it feels like they are jerking me around for the sake of their own purposes -- whether ego, marketing/ads, or whatever.
And did I mention, my device -- still under contract -- is stuck on a vulnerable version of 5?
I'm about done with this shit. I've been looking at the Nexi, but... I'm just pissed, at this point. Maybe Apple's a "bully", but sometimes that seems to serve a good purpose.
In stock Android, just click the "face" placeholder left of the number in the call list, then the new contact button on the top right of the screen. Moto is close enough to stock for this path to be present.
Much as I was happy with my Nexus 4 when I had it, this is one thing that I really didn't like about the OS' design. On iOS, it can generally be assumed that tapping on a list item will do the same thing no matter where on the item you tap. I found it infuriating at times (no hyperbole) to tap on part of a list item on Android and have different things happen depending on where I tapped, or to discover hidden functionality.
Just one of the many small reasons why I ended up going back to iOS. To be fair, I could still happily use Android and the main reasons had nothing to with UI, but still, it contributed.
There are people out there who are either going back to flip phones or getting rid of their phones entirely. I chose to go to a Nexus 5X instead, but I feel people wanting to simplify their lives and focus on things that matter to them more with fewer distractions.
> What you're saying is that you left the freedom of your device to jail yourself into simple interface...?
Hmm, I think it's only a jail if it feels like one. I did something similar for my photography, "jailing" myself to a fixed lens with no zoom. It was truly liberating to lock myself in. Yes, I realize the oxymoron there. But I could concentrate on making the best of my skills rather than falling into a gear swamp.
You know...I used to think the way you do. But given that we're the product in the Android ecosystem, lately I'm wondering more and more if I've made a mistake. If the perms were better on Android...if Google's control and permissive misuse of Android were better, I might feel differently.
We can only judge by devices that are out of support.
Galaxy Nexus: released in November 2011, last release: 4.3 in July 2013. Update Window: 1 year and 8 months.
Nexus 4: released in November 2012, last release: 5.1.1 in May 2015. Update window: 2 years and 6 months.
Nexus 5: released in October 2013, last release: 6.x (?), probably April/May 2016. Update window: probably 2 years and 6 months.
(Granted, the Nexus 4 received security updates for a longer period.)
They have recently announced a better policy:
Nexus devices will continue to receive major updates for at least two years and security patches for the longer of three years from initial availability or 18 months from last sale of the device via the Google Store.
Has N6 and Note 4, just got iPhone 6s+ a month ago, can't believe I stayed with android so Long, the only thing I miss on iphone tho is the touch flow keyboard from windows phone, nothing on iphone and android comes close. :(
With Android you have a choice to buy devices with unlockable bootloader so you can get root without looking for on exploit. On iOS you have none such.
And the fact that every iOS version ever has been jailbroken only tells you how hard security is... specially against an adversary with full physical access to the device.
This vulnerability was already fixed for Nexuses by the time the article was written. The exact same thing has happened for iPhone. People forget that to date, a far higher percentage of iPhones have actually been infected with malware than Google-flavored Android phones due to XcodeGhost and that actual Google Android devices like Nexuses have an even better security record than that.
Malware infections from the Play Store have usually been on the order of thousands infected, with the occasional instance of 500k-1 million (http://www.ibtimes.co.uk/google-removes-13-android-apps-play...). XcodeGhost infected more than 500 million of a smaller total userbase (http://www.macrumors.com/2015/09/20/xcodeghost-chinese-malwa...). The numerator is an order of magnitude larger, and the denominator is an order of magnitude smaller, so a much higher percentage of iPhones have been infected with malware.
I can't find the percentage of Wechat users who use iOS, but that 500 million number is potential based on the fact that Wechat had 500 million users at the time.
Clearly not all are iOS, and clearly not all happened to have that one compromised version.
That was indeed a serious breach, but the rigor of your comparison is lacking.
Did you click on the article? All your points, while valid in a vacuum, have nothing to do with the author's argument about the two platforms' approaches to web apps.
I appreciate and even agree with your view, but you might as well be talking about OS X versus Windows given the topic of the submitted post.
Threads like these (completely off-topic, but somehow ends up at the top and takes up 1/4 of the page) are why I wish the official HN client could collapse threads.
I got a cheap-o Moto G for $170 3 years ago and love that thing. It is small 4" only, got reasonable updates (up to 5.1 now). It is simple to use.
Yeah Google owns my life, but I wouldn't feel better if Apple owned it instead. Never felt the need to tweak hardware, or run Cyanogen and others. Once I wanted more memory for my music. But then deleted some of the music I didn't want and was fine.
Best part if I sit on it and break it, I'll just go find another $170 Moto G without blinking an eye.
I have a full time job and all but shelling out $700 for a phone I can drop, loose, break is not in my budget yet. Maybe one day...
> Yeah Google owns my life, but I wouldn't feel better if Apple owned it instead
Why? Apple makes money selling you hardware. Google makes money selling you to advertisers.
I'm not comfortable with any company figuratively "owning" my life, but if I have to choose, the one that isn't built on scummy ads will get my money every single time.
Whenever I try to get iCloud actually working [1] I kind of wish Apple was actually interested in owning my data ;-)
Rants apart, this fact:
> Apple makes money selling you hardware. Google makes money selling you to advertisers.
has a direct consequence: cloud services made by Apple are generally inferior compared to those made by Google[2].
Now of course if you value privacy over everything you might prefer to save your data locally rather than in the cloud, but I have too many devices lost or broken to go that way.
There's not that much difference between what the two of them provide to governments as a response to legal requests.
Also note that Apple continues to operate in China while Google refused to cooperate with the government there and gave up huge business potential in that country.
Sure, there's a chance for government abuse of my data, no argument. There are also significant benefits to me for sharing with Google. For me (and I suspect for most Americans), the real benefits exceed the likely costs.
I worry far more about things like getting into a car wreck, falling in the shower, and my crappy diet.
I just got a Moto G3, and the 6.0 upgrade. Almost zero complaints so far. My only gripe is it occasionally has to restart apps with 1GB of memory. I would go with the 2GB model if I had a time machine.
This is an annoying top comment because it has nothing to do with the developer topic of the OP. It's just another boring useless opinion in the fanboy flame wars.
Linux user chiming in. This reminds of the people who complain about running Linux :-) When they run linux, they start tweaking all sorts of things: trying to run wayland master or run Arch (which is a great distro if you know what you are doing). And more often than not, they come out frustrated. Then the proceed to claim how awesome Mac is since everything just "works".
As another Arch user using an S4... that currently has stock, because CM is just broken from a lack of maintainer on jfltespr... your desktop never breaks and is always up to date, while your phone eventually breaks and never gets updates.
That is predominantly because OS and hardware as separate products is essential to user empowerment over their own hardware. There is a tremendous conflict of interest for a company who makes its money selling new hardware to provide good software support to old hardware, so they just do not. And it brings Android as a whole down for it.
If these companies were also not so Linux hostile and stupid, they would upstream their device support into mainline Linux so we could see a healthy ecosystem of Android forks rather than just one attempt in CM that destroys the souls of volunteers who have to maintain all the insane out of tree binary blob kernels these OEMs ship phones with.
I have a laptop with in installation that's 4/5 years old, and still running. Except for the occasional things, no problems with upgrading (even transitioning to systemd went fine without problems).
I know a few people who have a constantly broken desktop because they like to tinker (which is fine, we all did it) and then complain that linux is getting more unstable.
I just install Xubuntu, configure it to my workflow and it works until the next update comes out, I've had one serious issue with it (they shipped 15.10 unable to build the fglrx kernel module with the version of GCC, can't blame Xubuntu directly but that was a pain oth I found out that the open driver is now as good/better for just the desktop stuff so I came out ahead).
I made the switch to OS X because I couldn't trust myself not to tinker. Everything I broke, I eventually fixed, but that isn't something I wanted to deal with once I started using my computer for my work.
The article talks about how Android is a better platform to develop mobile offline web apps. You talk about how you like iOS from a user point of view. Your comment is totally unrelated to the article.
There is an entire book written about this trade off called "Zen and the Art of Motorcycle Maintaince" One of the major themes is the author and his best friend comparing how they interact with their bikes and the meaning they get from either tinkering, or not having to tinker, with them.
I went through something similar recently. I moved to another country and in the process I had to buy something to replace my Note 4. I initially bought a Note 3 to replace my iPhone because I wanted to stop carrying a tablet. The Note was a "solution" to be able to read on the go at all times, play games, etc. all in one handy device. Upon moving I was really frustrated at first at the lack of options with large amounts of storage (my Note has a 128GB SD card) and a giant screen that were available from my new company's carrier.
The more I thought about it, though, the more I realized I was solving for a problem that no longer existed. I've felt recently like I spend too much time on my phone. I don't want to play games and watch movies on my commute any longer. I don't want to read books on my phone. I want to read an actual book or, at worst, on a Kindle where all I can do is read. I want to work my brain more, basically and the phone has become antithetical to that.
So I purchased a Nexus 5X. Low storage, barely enough space for my music, etc. I saw it as going as far down the phone food chain as I was willing to go without going to a flip phone. I've been really happy with it. I talk to human beings. I look at the world. And my phone really only has enough space for a few smartphone things like maps and music. It's perfect for what I want now. Fairly simple and limited. In this case limited is good.
yep, exactly the same experience. I've used android since beta and finally switched on iPhone 6s. never been happier. At one point (on my 2nd to last android) i found myself flashing a version of cyanogen on the subway because the phone just stopped working. I was laughing to myself about the crazy mess I was in. and flashing was never a smooth process, each version had it's own issues for which of course the only support was the forum. definitely do not miss any of that. i was shocked at how little tweaks ios needed after first setting it up and how little work there was to transition to a new phone when i changed colors. it not "just works" but works extremely well.
Same. I had Android for probably 6 years. Top of the line phones. Nexus one and Nexus 4. The Nexus one was great. The 4 irritated the crap out of me. I can't answer an incoming phone? Hello, this is a phone. Charging issues. Weird lag all the time. When it came time to upgrade I switched.
I've been thinking about "trying" a move in the opposite direction as well, but each time I look at the limitations of iOS, I think maybe next time I just get a cheap non-smart phone if that's all I want. Escape from all this.
n.b. I'm 40 and have no need for snapagram or whatever. (Even if I needed it, pfft, nobody needs it).
> I did the opposite and can't believe how much better my life had gotten because my iPhone is just a simple tool that I use for communications and don't think about it as a project. With Android, I always wanted to tweak silly things and run Cyanogenmod because the handset firmware was always so bad and vulnerable. On several occasions I'd bricked my phone requiring hours of recovery, or had transient failures of cell service and communications issues. I guess if you have the right level of discipline, apathy, or use a Nexus device that may be more Apples to Apples (harhar).
I did the same. Outsourcing mobile to Apple made my life easier too.
Me too. I switched from Android (Verizon HTC One) to iPhone and shit just works, e.g. VPN. I wasn't able to use a stock Google phone without vendor crapware. But the market being flooded with devices suffering from crapware is in some sense a valid criticism of "Android" as a product isn't it? At least that's how it seems to end users who might not have the sophistication to avoid crapware and who don't understand that Android is a platform rather than a product.
And how is this bad? I bricked my phone several times and fixed it. I cannot buy a phone that I can't tinker with (which is i have a Nexus now). I don't understand how inability to tinker is a good thing.
Take that argument one step further and it's the net neutrality condition.
I don't think he is talking about the "inability to tinker" but about the "necessarily to tinker". Most Android phones a loaded with bloated crab ware.
I have an Android and I made sure before I bought it that it runs Cyanogenmod. I don't like the locked-in systems from Apple but sometimes I miss something that runs out of the box.
I'm not sure if I got that same sense. See, the point about tinkering to get rid of crap is an implicit acceptance that you CAN do this on Android.
And even if I had to accept your argument, you forget about a Nexus.
A Nexus is a phone built to tinker - and has zero crapware. An Xperia is also a phone with beautiful Android customization (yet allows bootloader to be unlocked easily).
The 6p is my first Nexus and I have spent the last couple of years running bleeding edge CM. Android encourages opinionated experiences...that is a good thing IMHO.
"necessarily to tinker" - i suppose is done by tech guys. Normal people would use it as it is. There are so many low-end to high-end Android mobiles sold in India. Most of them don't tinker at all. As long as it does the basic call/browsing/videos/music its fine.
"Perfect" is a stretch. It was one of the better options in its release window, though.
One flaw: tough to repair (2/10 on ifixit [0]) which will be fun when the battery starts to go.
Another issue: Android Marshmallow (admittedly not Nexus-specific) doesn't play well with AdBlockPlus, and if you want AdAway or another hosts mod, you still need root. Rooting will allegedly break Android Pay, too.
Android pay can be activated when you are not rooted, and remains active if you root later. It is trivially easy to root/unroot flagship android devices and you have access to unblemished images from google if you happen to screw something up.
My experience "hacking" my Nexus 5 to enable WiFi hotspots, without paying sprint for the service, required root, and the process took maybe five minutes.
My iPhone would ring and I could use speaker on a call but I could not hear music or sound in videos. I rebuilt my image, but the issue persisted for about 3 months!! It was my car audio dock and Apple's hidden "other volume" setting that was the culprit.
At one time, I tried to copy music to my phone, but all new songs were being corrupted. I used 3rd party tools successfully, but iTunes would corrupt the songs when I re-synced my phone. About a month later, Apple fixed the bug - but it was "impossible" to get new songs on my phone.
ITunes crashed during synchronisations and I realised at one point that I had about 25 gigabytes in lost space. I had to erase the phone and recover from a backup to fix the leak, which takes many hours to do. There is no file system fixer for IOS.
In most of these instances, I was snookered because I had no control over my device. Going several months without music was a major inconvenience that Apple failed to solve, despite many attempts. This reinforced that I am not truly in control of my device when such basic things are not possible.
TL;DR Apple "just works" is a myth. It's great when it works and disastrous when it doesn't.
Exactly Kev. Android is like having a phone that feels like it has holes in it and thorns - its like an overgrown backyard like oh I should pull up these weeds.. I should work on this fence.. My iphone is like a smartphone.
This. This and more this. Compared to Android and Windows, iOS and OSX is pure nirvana. Sure, accuse me of drinking the Kool-Aid all you want, but is my life simpler or what. Never wanna go back to fiddly-hell, ever.
Nearly all of the comments here are missing the point of this blog post. The author likes Progressive Web apps, they are important to him. He's moving to Android because it supports the web better.
That's it.
This isn't iOS vs Android and it certainly isn't web vs native. Yes, the article is critical of native apps (and the app store) so I can see how you'd go there but it's a distraction. I see this article as an"I want to use the best mobile web platform possible" argument.
I'm not sure why people are giving anecdotes about switching to iOS from Android like the blog post was about a personal device usage decision vs. a decision to switch developmental platform due to better support for the web.
It's one of the better written blog posts, and has convinced me to look at PWAs. The future he outlines with seamless installations and cross-platform fallback IS something I want to get to.
I guess if the original poster had chosen a better title for his HN submission, like "Android's good for progressive web apps" he wouldn't have started a flame war.
"I ditched iPhone for Android" is always going to rekindle the iPhone vs Android flame war. The original poster is to blame.
It's a pity Android fans always feel the need to compare everything they do to Apple's software and devices. I guess it's the imposter syndrome that comes with being 2nd to the marketplace?
I didn't read it that way at all. He's calling out that Apple isn't doing a great job supporting the web and this fact is so important to him that he's willing to switch platforms.
And 'blaming the poster' is classic victim shaming. Not reading a post and then flaming based on the title is exactly what the web tends to do far too easily (and what we need much less of)
It's completely subjective that you and the poster think "Apple isn't doing a great job on the web" - for one, I think they're doing brilliantly. Safari is extremely fast and well-optimised on iOS, certainly a better experience whenever I've compared iPhones and Androids of similar vintage side-by-side.
And I'm relieved that web gizmos like bluetooth support aren't built into iOS Safari. I can't think of a more inviting attack vector.
You clearly don't do web development do you... I'm very supportive of Apple and happy that they are starting to finally update Safari more quickly but the reason OP published this article is that there is a long list of modern web features (going through the W3C) that Apple is severely behind on. I totally agree with you that Safari is a'good, fast browser' so from the your consumer point of view, it's quite nice. But it is lagging behind standards that are being implemented on nearly every browser BUT Safari. Again, this is hopefully changing, but it's this slowness that motivated the OP.
The title invites debate about the platforms and pros/cons thereof. If the title were about progressive web apps, I suspect the entire discussion here would be different.
You're absolutely correct. I participated in the above conversation because it's interesting, but you're right that it's missing the point. The original blog post is really thoughtful. I enjoyed it.
You're correct, and I partially blame the author of the article. He chose a very controversial and, in my opinion, incredibly counter-productive way to frame the discussion of progressive web apps.
My main exposure to Chrome web apps is Hangouts on Chrome for Mac and half the time I shut it down and choose to use the native app on my phone instead due to the poor, non-native UI and the battery life impact of Chrome.
edit: the other shiny Google Web App example, Google Docs, doesn't work either. In Safari it likes to drops keys, and the last time I used it in Chrome (last autumn), it would either crash the whole tab, or freeze it up long enough for it to tell me it gave up and that I should just copy the content and paste into a new document
It seems we're re-living the nightmare of Java "cross-platform compatibility" but with an even worse programming language.
> In fact, I think Progressive Web Apps (PWAs) actually have a huge leg-up on native apps because you can start using them immediately
> There’s just so much less friction for users to start using them
Every web app I've used has required a painful sign-up process, which is usually where I bail out of the process. Way more friction than an app store install.
Facebook's mobile web app is very good. In fact it is quite a lot better than their native app on Android. I believe most of the examples of bad mobile web apps (eg: twitter, linkedIn) are because the organization focuses their resources on the native side instead of the mobile web app.
> Every web app I've used has required a painful sign-up process, which is usually where I bail out of the process. Way more friction than an app store install.
That signup process can be made better. Nothing fixes the pains of having to download a large app over a potentially slow/spotty network, sacrifice an unknown amount of privacy, then having to twiddle a variable amount of options to get the thing to stop sending you notifications about every single action or event, then after a week of use, having to re-download the large app again because of updates.
> Nothing fixes the pains of having to download a large app over a potentially slow/spotty network
You mean like the 12 MB it takes to load a Google Sheet? At least with a native app, once it's downloaded you know it's there and it won't go into an indeterminate state if you happen to try to use a feature that hasn't been loaded yet.
> sacrifice an unknown amount of privacy, then having to twiddle a variable amount of options to get the thing to stop sending you notifications about every single action or event
These are not issues when you have iOS's permissions model
> These are not issues when you have iOS's permissions model
Which is 13.9% market share currently.
Unless Apple wants to make budget devices (they don't), this world does not exist, and it won't any time soon.
> You mean like the 12 MB it takes to load a Google Sheet?
Although I realize we are speaking in hypotheticals, and generalizing the type of apps people use (I realize there are smaller ~2 meg apps), the average size of an iOS app is 20mb, and the average android app is 7mb. You pointed out an exceptional use case, not the most common.
> Every web app I've used has required a painful sign-up process, which is usually where I bail out of the process. Way more friction than an app store install.
Support for password managers like LastPass is one of the areas where Android shines compared to iOS.
Also, you seem to imply that most apps downloaded from the app store don't require a sign-up process. I beg to differ. And I note that the sign-up process is even more painful outside of a browser (e.g. outside of the browser you can't use LastPass to generate a random password for you)
On iOS Keychain works relatively well for Safari, but needs to be explicitely supported for native apps, which means basically never.
Also as far as I know there's no first party app to directly view your keychain items in iOS, which makes it useless when the domain detection fails (it's the most painful when the same service has two clearly different domains for desktop web and mobile web, which is a pretty common case)
I use keychain but end up duplicating a lot of entries in a Lastpast like app just to cover these cases.
> Also as far as I know there's no first party app to directly view your keychain items in iOS, which makes it useless when the domain detection fails
They fixed that in either iOS 8 or 9, there's now a "Other Passwords..." option that lets you browse/free-text search through all your saved passwords.
Yes, this definitely improved the situation, but I think there is still big limitations on what you have access to.
Perhaps some of the entries are not marked as web passwords, and/or it is limited to the passwords Safari has saved (Chrome or firefox passwords would get ignored for instance). I have hundreds of entries in my keychain and "Other Passwords..." won't display most of them.
As a behavior, it doesn't bother me much if Safari wouldn't get automatic access to other apps' keychain entries or generic passwords (from a security perspective it's a sensible limitation). Instead I would like a separate keychain app, mirroring the abilities of the OSX app.
My main argument being that any password manager, be it Lastpass or not, tends to work better on Android because of features like "draw over other apps" which basically means creating a modal window on top of other apps. On Android this action can be initiated by clicking on an icon which lives in the notification drawer, and it can be done in any app, while on iOS it's only possible in an app that supports the iOS 8+ extensibility features (such as Uber)
The website about 'progressive web apps' [1] has 3 demo apps. None of them work in Firefox 43 on Linux. The apps require JavaScript but fail to use the <noscript/> tag to tell the user.
I've an iPad 1 on which I can install web pages as web apps by bookmarking them. If the page has the right meta tags [2], the app/page will open as fullscreen. This works fine with many web APIs e.g. WebAudio. I do not know if Android or Ubuntu phone support Web Apps in the same way.
I like this way of distributing simple applications, but take care to check the JavaScript with Closure Compiler.
airhorner reacts to mouse clicks visually but plays no sound. (Debug console says: "EncodingError: The given encoding is not supported.")
voice memos needs cookies or local data but does not inform the user about this requirement. With cookies / local data enabled and after a reload, it does work.
The weather app also needs local storage enabled but fails silently when it is not available.
I did the opposite. 7 years of Android to iOS. I'll never go back unless Apple somehow swaps the experience to be more like Android phones, and less like iOS is. But I don't really care about that. I just want my phone to work, to make calls and not fail or slowdown. Not be another computer I have to maintain. iOS in my experience is a great choice if that's the goal.
He hit the nail on the head at the end. Native React and similar tools are going to simply help the app stores. I have no qualm with app stores as I'm not a webapp diehard.
Just use what makes sense. I never think that is Javascript and take the exact opposite view of the author. I use JS only when I absolutely have to. I prefer to build native platform experiences, which if you're doing more than a CRUD app many times you have to do anyway. I'd work with C#, Swift, Rust, Python and their associated ecosystems before trying to JS All The Things. I find that concept very anti-democratic and regressive.
The Javascript diehard mentality will come to it's final death throes once wasm hits V2 and allows every language the chance to work in the browser.
Then the web will truly progress as the author states. Developers will be freed to use whatever they want. Swift on the server, iOS and browser. Let programming platforms and tooling duel it out, not hand the crown to a PL that was created in 1 week. I choose Python, but everyone should be able to use whatever they want as well.
The argument seems to be that app developers aren't doing very well on the app store, and you're looking to the free and open web as the place where vast sums of money will be made? For the vast majority of these apps, I beg to differ. The web plays by the same rules as the app ecosystem: it's very expensive to monetize, unless of course you are creating value for someone who has money and minimal friction when paying.
"Unfortunately, the web platform itself wasn’t quite ready for the spotlight yet. It was sort of possible to build web apps that looked and performed like native apps..."
Are you talking about 2007 or 2016? Native apps will always outperform non-native apps - and not because of any emotional or "political" reason - but for perfectly obvious technical reasons. Web apps have an extra layer between themselves and the hardware. Native apps do not (or, at least, the layer is much thinner). Even if web apps increase in speed another 100x, native apps will be right there too.
Look, at the end of the day, use Android or iOS. I don't care. I've used both. But don't switch for this reason.
Thank you for a comment that actually speaks to the content of the article. Unfortunately it's buried under people commenting about their thoughts as a user. Which may be to the author's point: Apple's suppression (intended or not) of the web-app ecosystem has helped make the iPhone experience the (apparent) gold standard in mobile. [Note: I'm just summarizing- I don't know because it's all I use.]
But I empathize with the author's view. In fact, let's not ignore the fact that some companies that have perfectly useful web pages have dreadful iPhone apps, and in those cases the web experience (even on the phone) is superior. But when you think of the ideal, you are correct and native wins.
This point is addressed in the article, the point is not to have web app perform as fast or better than native app. As long as they are fast enough it's ok.
I'll support this point: for so many services I'd be ok to trade off native performance for a smoother install process and independance from arbitrary rules. For instance amazon kindle app is severly limited by the app store rules while it has arguably no features that need to be native and does have almost no performance need (I wouldn't care if it took 250ms instead of 100ms to turn pages)
Same goes with apps like google keep or to do list apps. Whole categories of app would be better off as locally installed web apps, if only the OS had better support for them.
> This point is addressed in the article, the point is not to have web app perform as fast or better than native app. As long as they are fast enough it's ok.
That may be true if you only care about performance, but what about battery usage? That's something important on a phone.
I get that taking more CPU time and doing less efficient operations will be worse, but this peaks would generally happen when the user is actively interacting, which in the running time of an app is not a lot.
I would think the large majority of what this could be used for has less interactions and moving parts than the usual app. Of course someone would implement Quake in JS, but otherwise your note taking app or other utility (even a chat app) won't be actively sucking battery constantly.
> Web apps have an extra layer between themselves and the hardware.
True but, on the other hand, native apps require extra steps to be taken by the user (go to the App Store, download the app) which somehow makes user acquisition harder. However we could also argue that once a native app is installed, that increases the chances of user retention, i.e. the user is more likely to use that service again.
Wow. I'm a long time Android user and probably pay more attention than most, and I had no idea web apps had gotten quite this nice. Currently the only web app / web shortcut I have installed is the HackerWeb app[0], which is nice but clearly not taking advantage of all of the functionality it could.
I "installed" Flipkart Lite and the Voice Memos demo app to see the state of the world. Clearly it's possible to build some really nice web apps these days! I hope to see more of it moving forward.
Actually, let me piggyback on your comment and ask a usability question: Has anyone written an OS X app to make OS X play nicely with Android phones by syncing contacts, emails, calendars, and audio? I ask because Apple did something supremely annoying with an iTunes, OS X, or iOS update a while ago: Contacts and calendars no longer sync directly from OS X to iPhones and vice versa.
This is monumentally annoying. iPhones are now pretty expensive and don't have this one feature that I used to find incredibly useful. I know there are ways to accomplish this via iCloud, but I neither like nor trust iCloud and don't need it.
You can connect your gmail account on a Mac and it sync's contacts. I do this so my VoIP apps have access to my gmail contacts, which are shared with my Android phone.
jseliger - Thank you for saying this! I can't use iCloud when I don't have internet access. This is usually when I'm travelling, which is also the time I most need to manage new contacts and calendars.
I'm still using iTunes 10.7 and iOS 6.1.3 on Mac OS 10.9 Mavericks. It required some framework hacking to make it work, but it's the only way to get offline USB sync and a (beautiful) Retina display.
Oh, and don't forget the ability to sync Safari Bookmarks. I used to be able to sync Notes too, but Apple broke that in 10.8 Mountain Lion.
If any company can offer an ecosystem comparable to Apple circa 2011, I'd be persuaded to switch. For now, I have to stick with my old iPhone 4S. Surprisingly, I haven't really missed out by not upgrading.
Hey! Sorry if that comment came out a bit harsh; I definitely didn't mean it to. As evidenced by the fact that I continue to use the web app over any of the native options, I'm obviously a pretty happy user.
So, random thoughts/feedback:
- I wish I could login, comment, maybe even receive comment notifications? Although the last would clearly be an improvement on HN itself.
- I wish I had some preferences available to me, e.g. always open links externally vs. inside the app itself. (I can long-press on a link and select "open in Chrome" of course.)
- Flipkart has some pretty slick animations. The primary thing that jars me about HackerWeb is how abrupt everything is compared to native apps.
Obviously nothing huge; just stuff I didn't know was even possible. Anyway, let me at least grab this opportunity to thank you for your work!
1. I myself also wish that I could login, comment, etc. Unfortunately the official API doesn't allow it yet. Other HN apps implement those by scraping HN, save your username/password somewhere but I didn't choose this route because it might be a maintenance nightmare for me :(
2. Regarding the 'open new tab/window' preference for links, I've been thinking about this for a long time. Will experiment soon :)
3. Animations. I'll need time to implement those :P
> I wish I could login, comment, maybe even receive comment notifications?
AFAIK authenticated user actions (logging in/commenting/profile management/etc) are simply not exposed through the official HN API. I don't think there's much third party developers can do about that, unfortunately.
But yes, web apps have come a long way. Apple treating web apps as second-class citizens will probably still pose a huge barrier to widespread adoption for quite some time though.
I have tried multiple Hacker news native application, and I didn't like any of them. I, however, love your Hackerweb web app. Its clean, simple and fast. And it feels like a native app.
Only one for me: get the previous icon back! I've really tried to like the new one but I still miss your previous icon.
Joke aside, HackerWeb is an awesome example of a webapp done right. It's the only web app on my home screen, and my favorite Hacker news reader on mobile, beating any native app I've tried.
Awesome job! Do you have any feedback about issues your encounter for the development? I'm thinking about iOS updates, responsive design with iPad etc... ?
Thanks! If you're interested in the issues I encountered for dev, I recently blogged some of them in my article here: http://cheeaun.com/blog/2016/03/building-hackerweb-ios/ (Also note that I've released an iOS counterpart of the web app).
I read the post, then looked up ServiceWorkers and this progressive web app stuff, and it doesn't seem that useful. You don't have access to files, or hardware (Bluetooth/sensors), or notifications, so what's the actual use case?
It seems like it's just a way to be able to make cross-origin requests in a browser. Can it even do that? Seemed like it had a bunch of security considerations that make even that not useful.
The primary use cases for service workers today are robust offline support and notifications. More generally service worker gives you broad and very fine grained control over your app's use of the network. Service worker itself doesn't give additional cross-origin request abilities, except by giving more control over caching.
If YC provides API like reddit, you can build really good client using web technology. https://hackerwebapp.com/ is best you could do without good APIs.
This is my reddit client. https://reddit.premii.com/ - You can login, upvote, reply, save, and tons of other things.
>I don’t know about you, but the idea of having a fully capable web browser in my pocket was a huge part of the appeal.
A: Both iOS and android have fully capable web browsers, I'm not sure what's missing here ?
>I’m talking about stuff that QA should have caught, stuff that if anybody at Apple was actually building ? apps this way would have noticed before they released.
A: They do pass QA, that's why features are removed
>One quick example that bit me was how they broke the ability to link out to an external website from within an app running in “standalone” mode. target=_blank no longer worked.
A: Thank god apple no longer allows that, how do you expect a tiny screen to have popups and switch web browser views when you click links ? this is a very bad UX.
>We were running a chat product at the time, so anytime someone pasted a URL into chat it was essentially a trap.
A: I'm not here to judge your decisions or why you did it that way, but IMHO a chat product doesn't really belong in a "web browser"
>The message from Apple seemed clear: web apps are second-class citizens on iOS
A: Exactly, and it is that way for many good reasons.
I see you've mostly switched to android just so you can continue developing webapps, that's okay for you, but it's not a really good reason at all.
Don't be like the people who where bashing apple when it decided to remove support for flash player, because that's one of the reasons the web has
become the way it is today, i'm not an apple fanboy, i also did the switch from iOS to Android after around 7 years too.
According to that, it does not work on iOS Safari. Not any version. Ever. Apple only allows Safari on iOS. Therefore, any application that would like to do streaming will have to be native on iOS. Will have to pay Apple a 30% tax. Will have to live with Apple's approval and release schedules.
Apple has allowed Safari to stagnate in significant areas that would permit web apps to compete with native apps. This isn't another iOS vs Android flame war. It's more an indictment of Apple's development priorities on the mobile browser.
I saw that point yeah, sorry i missed mentioning it, but in my opinion, this is not even closely a reason to compare iOS to android, that's basic browser limitation, even though it's pretty recent on android, and your link marks it as "partial support", I wouldn't see it from a developer point of view nor from an end user point of view.
He was even comparing iOS to an old android phone, which definitely didn't support it either way and wouldn't even be updatable to support those new features.. and I wouldn't call a browser that doesn't WebRTC as a less capable one.
There is only one rendering engine on iOS. Apple TOS prohibits all other rendering engines. Chrome uses Safari/webkit rendering engine to render the page.
The general "Safari is the new IE" meme comes down to Apple having different priorities than other browser vendors (notably Google) when adding features. Right now the complaints tend to center on Service Workers and WebGL, but there are quite a few browser technologies in which Safari support lags.
The things Apple priorities -- battery life and security, for instance -- don't mean much to most developers who would prefer to be able to use <insert sparkling new web tech here> without worrying about shims, and so on. Problem is, you can't quote that "there are 1.5 billion Android users out there" with this in mind and keep a straight face. A huge proportion of those users are NOT using a browser this group wants to target.
> Thank god apple no longer allows that, how do you expect a tiny screen to have popups and switch web browser views when you click links ? this is a very bad UX.
I don't think you realize what he's talking about. Any mobile app has the ability to open links either sending them to the default browser or using a webview overlay. How is not being able to open any links at all a better user experience?
1-You're wrong, any app can do that on iOS/Android. who says that you can't open links from an iOS app ?
2-He was specifically talking about webapps in "standalone" mode, he specifically mentioned using `target="_blank"`. that kind of behavior does not belong in mobile environments, actually i personally disallow that on my computer too, but that's personal choice.
>Both iOS and android have fully capable web browsers, I'm not sure what's missing here ?
I think at that point he was referring to the initial appeal of the iphone, when th efirst one was released. there was no Android and no comparable device existent at the time.
>Thank god apple no longer allows that, how do you expect a tiny screen to have popups and switch web browser views when you click links ? this is a very bad UX.
What kind of phone are you using? most things got screens so big that they don't fit into my pocket anymore.
>I'm not here to judge your decisions or why you did it that way, but IMHO a chat product doesn't really belong in a "web browser"
Rocket.chat does exactly that and it is fantastic. Other webapps as well. The key feature being that you can chat on any browser, and using for example electron (the engine based on chrome, also used by the atom editor) you can easily build apps for every platform. And if you add features, they are added everywhere at the same time without a problem
>I think at that point he was referring to the initial appeal of the iphone, when th efirst one was released. there was no Android and no comparable device existent at the time.
True, but don't forget that the first iPhone was an expensive piece of nothing really, we had no app store nor sdks
>What kind of phone are you using? most things got screens so big that they don't fit into my pocket anymore.
I come from iPhone 3Gs->4->4s->5->6->6s->LG G4, I can say that it's a HUGE screen with bigger resolution than my desktop, but what i meant was the total size of the screen in physical size, i don't want no friggin popups and many windows in a 5" screen
>Rocket.chat does exactly that and it is fantastic. Other webapps as well. The key feature being that you can chat on any browser, and using for example electron (the engine based on chrome, also used by the atom editor) you can easily build apps for every platform. And if you add features, they are added everywhere at the same time without a problem
Ofcourse there are tons of good examples out there, I'm explaining my personal point of view when it comes to web browsers and doing lots of in it that that it was never intended for. I'm fine if you just rename it from web browser to "JS App Container" or whatever, but to me a web browser is just a place to browse pages
The context of this discussion is wanting to make the mobile browser a suitable platform for development of all apps similar to what has happened in the desktop browser. One of the reasons for this is that the web is one of the few truly open platforms. That it doesn't fit your opinions about what belongs in a web browser is not very interesting, especially since you're not giving any reason why you think some apps should not be in the browser.
>> I’m talking about stuff that QA should have caught, stuff that if anybody at Apple was actually building ? apps this way would have noticed before they released.
> A: They do pass QA, that's why features are removed
Even if QA catches stuff, it frequently gets ignored by developers and product managers who don't want anything holding up the ship date.
If the software gets frequent updates, this becomes the norm. Bug fixes come in future development cycles, not when they are found.
QA is the least powerful group in any software engineering setup so it's amusing that consumers think of them as God-like powerful creatures who can hold up releases.
Im not sure what it is about articles like these that bother me so much. Is this guy some hacker hero that I should know? I dont care what the platform is, and this is nothing to do with iOS vs Android. I really cannot stand this "why I quit x" type of blog post. Is there a reason this guys opinion matters more than anyone elses? I know I could just ignore articles like this, but it does happen to be staring me in the face at the top of the list. At the risk of irony, I would much rather see a case made for improving something than a "I chose this because its better, and I know better than you" article.
I don't think there's anything wrong with the article; it's a personal blog and switching mobile platforms is a pretty significant change for most people. I'd be more surprised if someone with a personal blog _didn't_ write about it.
That said, I don't see why it hit the frontpage of HN. It doesn't seem to add anything of benefit discussion-wise or show anything new in my opionion
>That said, I don't see why it hit the frontpage of HN. It doesn't seem to add anything of benefit discussion-wise or show anything new in my opionion
I upvoted it because it showed me how exciting progressive webapps can be. I was somewhat aware of them before, but hadn't realized how close they were to native apps.
It's unfortunate about the title, because the comments devolved into arguing platform wars instead of discussing the ramifications of this new technology.
It doesn't seem like you've read the article because the author does ask for improvement for Apple's support of web applications and specifically criticizes their blatant and ignored backsliding over the past 9 years.
This article is specifically on professional reasons to use a development platform, and really has hardly anything to do with personal preferences.
This guy is a hacker hero, and he is one that you don't know.
I agree with pretty much everything in this article - I firmly believe that we're due a "post-app" world where progressively enhanced web sites provide 95% of the functionality we require. But we're not there yet - I'd love to see better WebView integration into native UI components (UINavigationController and the like), to provide things like swipe-to-go-back, which is monumentally hard to do on the web.
But hey. Maybe, just maybe, we'll end up back in a world were cross-platform development is viable. If Apple lets us.
> I firmly believe that we're due a "post-app" world where progressively enhanced web sites provide 95% of the functionality we require.
I don't think we are. Apps provide users with better performance - compiled native is going to be faster for almost everything and should also use less battery - and provide Apple + Google with control over the ecosystem.
The latter makes it possible for (e.g.) Apple to claim that it won't unlock a phone for the FBI.
It doesn't matter whether or not the claim is true. It matters that the claim is possible at all.
>If Apple lets us.
Apple won't. Nor will Google. It's a political decision, not a technical one.
There will be a post-app world one day, but it will only happen when there's a new platform and a new kind of OS - probably something AI-based like Echo/Alexa that has no concept of separate applications.
I'd be interested in a composable OS where you could build processes from free components and then share them. This is how a lot of web development works already - see also left-pad and NPM - but if a friendlier, simpler version was available in UserLand, that might start to chip away at the walled gardens around app dev.
Of course neither Apple nor Google are likely to support something like this.
> Of course neither Apple nor Google are likely to support something like this.
They won't when they're on top. See Microsoft, Sun, etc.
But when the cracks start to show, they will cave. Long term betting against internet technologies is almost as foolish as betting against Open Source.
And if you think about it, how much longer can the gold rush last? Especially for mobile devices. How far are we from saturation? Probably not that far. The markets that are left are much smaller and harder to enter than the existing ones.
Of course, Apple or Google could pull some tricks to create entirely new markets, but that's usually a long shot.
And when the stocks stop going up (or they go up slower than expected), that's when we'll start seeing concessions from them.
Unfortunately it's a limitation of the Android platform; you can't add arbitrary launch activities at runtime. So the Chrome team is unable to fix this AFAIK.
However, you could imagine a future release of Android that sports a custom homescreen app that just includes Chrome progressive webapps in the main app drawer. Or someone might be able to write a third-party homescreen app already that does that. (Not sure if Chrome exports that data though TBH.)
Also, FWIW, the "add to homescreen" is really just icing on the cake - even without it, PWAs save data locally and are launchable offline. If you remove Pokedex.org from your homescreen, you'll notice you can still navigate to https://pokedex.org while in airplane mode, and Chrome still reports some 6MB of Pokémon data as being stored on your device. (It remains to be seen whether this is a bug or a feature... but we'll see how many PWAs abuse it.)
The Chrome team should tell the Google Now Home activity team to show these apps in the drawer until they get the Android team to implement runtime (instead of install time) addition of launcher activities. It sounds like an instance of UX failure through non-communication.
Interesting, I see the same thing, though it hadn't occurred to me. Seems easily fixable, though I agree that we're not there yet.
However, I have uninstalled the Facebook app from my phone, and now receive push notifications from the mobile website, which I have on my home screen. It's a fantastic experience.
I struggle to find the reference, but I'm almost certain that the unveiling of the original iPhone came forward with this intention ("progressively enhanced web sites provide 95% of the functionality we require"), which is why there was no app store or anything until the second release of the iPhone. We were supposed to develop amazing web pages, which could be placed as shortcuts on the home screen and function somewhat like a native app.
Of course, back then, I'm not sure there were any sites that were actually mobile friendly, and developers were more interested in hacking the device to make native apps than using a browser to make crippled apps.
"This app provides the functionality I require" is a pretty meagre goal. The idea of native apps using a platform's native support is that users come into your app already knowing how to use most of it, having learned the platform conventions.
If every app is a cross-platform web app, what's the point in having more than one platform?
And then somebody in management asks why the new app is missing so many features on his brand new iPhone. In fact, all the C-level folks and board members are primarily iPhone and iPad users and none of them are happy that so many goodies are missing.
If you aren't worried about provided a first class experience to your iOS customers, then build for Chrome + Android. Although, that sounds a little like "build for IE6 + Windows" 15 years ago.
> If you aren't worried about provided a first class experience to your iOS customers, then build for Chrome + Android. Although, that sounds a little like "build for IE6 + Windows" 15 years ago.
Except that Android is the open one that is implementing agreed upon standards, and Apple is the laggard left behind.
But unlike in iOS, the browser is a Play Store app which is updatable outside of major OS releases. So a two year old phone can run the latest version of Chrome.
You can install new browsers through the play store, but I do not recall the stock web browser being updatable back when I used Android. Can it be updated on Android 2.3/4.x and how much effort does that require?
As for browsers installed through the play store, how many users can reasonably be expected to install them and of them, how many would update them?
Not only does the Chrome app auto-update, on Android 4.3+ so does the WebView component. This makes Android pretty hospitable for hybrid apps nowadays.
Telling users that they have to install a new browser before they can fully use your app is a lousy experience though. And then two months later they will uninstall Chrome because (as far as they know) they never use it.
That's not how it works. Most Android phones have come with Chrome preinstalled for a while now. That version is automatically updated, just like any other app.
It probably isn't on the Kindle Fire, no, but neither is the Play Store. It might use Android as its base, but it's not really an Android tablet.
And while I don't doubt there are many variations of Android device without Chrome installed, the devices that dominate the market (Samsung Galaxy and the like) have had Chrome preinstalled for a long time. From a brief Google it sounds like the default browser varies between phone, provider, etc. etc., so I can't say for certain. What I can tell you is that my analytics logs show the vast majority of Android users are running Chrome.
I don't think that really serves your argument - phonearena.com post a lot of stuff like that either as reference for people who Google the right question, or because the writing effort:ad revenue ratio is working in their favour.
The Kindle Fire ships with the Amazon Silk web browser, a Chromium/Blink fork which supposedly tries to serve all content via SPDY tunnel to Amazon's CDN.
You still need to write apps to be compatible with 2+ year old OSes if you want them to be able to install those apps. You don't get infinite forward compatibility for free. There are many updates I stopped being able to get on Android 2.x after 4 was released.
The market share of <Android 4.0 is small enough now to ignore, especially if you are also ignoring iOS entirely. Definitely not enough to stop you from writing a webapp in the first place.
KitKat was the first version to ship with Chrome as the default browser, but IIRC it didn't replace the system webview or become auto-updating until Lollipop. Wikipedia shows 70% of Android users on KitKat+, and about 35% on Lollipop+.
I dunno what Samsung ships with, when I was still doing a bunch of mobile web work (early 2014) they used a forked version of Android Browser that was really terrible. Hopefully they've replaced it with something saner. A lot of recent Samsung devices have dropped Android entirely for Tizen, though.
Probably yes, although they seem to show basically the same numbers. I think the Wikipedia graph comes from someone scraping the official dashboard periodically; the text of the Wikipedia article indicates that the data source is Google Play Store and excludes non-Google forks.
My Samsung S4 came preinstalled with some off-brand default browser that was worse than terrible. Hopefully they have gotten their act together by the time I'm due for an upgrade this fall.
Who cares what it came preinstalled with? My S4 was automatically updated to Android 5.1 and comes with all the stuff that 5.1 normally comes with. I also installed Firefox as my default browser there.
Why bother to upgrade to another phone? The newer phones (except the S5) aren't any better. I love my S4. The only thing I'd bother upgrading to is an S5, since it's waterproof, and still has a removable battery.
> Except that Android is the open one that is implementing agreed upon standards, and Apple is the laggard left behind.
Given that many of these things are potential exploit vectors, I am not inclined to fault Apple for taking its time to implement them.
Also, we are at the point where the standards are driven by a select few companies. If I recall correctly, those are Apple, Google, Microsoft and Mozilla. Opera used to be there too, but I doubt Opera does much of anything there anymore and I suspect the same either is or will soon be true for Mozilla given its leadership issues.
In the past, changes to internet standards were about enabling better presentation of webpages. Now changes involve JavaScript APIs that access things traditionally reserved for plugins (which were a security nightmare) and native applications. Doing that can pose unforeseen security risks, such as the supercookie:
Not to mention, I posted elsewhere in this discussion that WebBluetooth seems like a way that an attacker with control of a server can run attacks against bluetooth devices that he otherwise would not have been able to access without breaking out of the sandbox. Once in control of one of those bluetooth devices, it would be possible to attack the system from the compromised devices. It is like giving unrestricted network access to Javascript once a user clicks accept (and they almost all would), except with a different network technology where devices all trust each other not to do malicious things.
Given that security flaws can happen when new features are used in unforeseen ways, I am happy to see Apple take its time under the assumption that it is taking its time to implement things correctly.
I'm not sure if you're trolling or sincere here. Of course iOS apps don't need them, they are native. We are talking about the capabilities of the iOS Safari browser.
Yeah, because the browser doesn't offer the capabilities needed to render native apps redundant. I'm not sure why we're talking in a giant circle here.
Clearly, the "build for IE6 + Windows" of 2016 is "build for native iOS", which was the original point I was making.
You learn to evaluate technologies working in a relevant sector or studying some information systems stuff. No citation needed IMHO.
Would you demand citation if I tell you that 'mov ax, data' in assembler moves data to ax or look it up if you don't trust your own judgement at the moment?
A bit OT: I'd like a mobile platform that provides confidentiality (from both government draget and commercial spying) and end-user control. These seem like fundementals of any platform, at least as user options, but I haven't found it:
* iOS seems to have some confidentiality, though are users really protected from commercial spying? Of course end-user control is very limited.
* Android provides some end-user control if you root your phone, but it's complicated to utilize. Confidentiality is awful; there are a never-ending number of holes and leak, AFAICT, many built into the OS. No fork (i.e., ROM) of Android seems to focus on confidentiality, though I'm curious whether Blackberry's Priv locks down the OS in addition to the hardware.
* Basebands are neither confidential nor provide end-user control, in any phones outside of FOSS projects, AFAIK.
* Mobile service providers also are an omnipresent risk.
---
I suspect a decent solution to the baseband and mobile service problem is the following, but I haven't tried it and I know it has some weaknesses:
* a hosted VPN service that provides a firewall (the firewall is needed to filter outbound connections from your phone)
* a cellular router that's pre-paid, tethered to the phone to isolate the baseband from the rest of your handheld computer
I'm curious whether Blackberry's Priv locks down the OS in addition to the hardware.
So am I, but when I read their site about it around the time it launched, there were so many loopholes and weasel words in the information about security features that I ran away.
FWIW, the most obvious warning sign was that they were very hot on telling you about potentially insecure things being done on your device, but I couldn't find a single definitive statement that their software actually let you do anything to prevent those things from happening, nor any reference to tools or controls that seemed like they might do so, on their entire site. It also appeared to be based on an older version of Android that didn't have some of the more recent advances in per-app per-function privilege controls, suggesting that they might actually be worse in this respect than recent devices from other providers would be just with the latest off-the-shelf Android release.
Just yesterday, I switched back to Android after 4 years of iOS and I am really really pleased. I especially like the interoperability between apps and the "draw over other apps" capability.
In relation to the linked post:
1- I'm not 100% convinced that web-based apps are always the way to go on mobile platforms, there are many pros and cons.
2- While Chrome for Android supports a wider array of web standards[1], that difference doesn't (yet) seem very significant looking at various sources such as caniuse.com.
I just wish Apple was working more actively on Safari develpment, both on desktop and mobile: they started from a very good position (e.g. the circa-2010 Safari for iOS was vastly better than the circa-2010 Android browser) and they are now rapidly losing ground.
I for one could never go back to Android. iOS is just such a better user experience, much more fluid. Android feels like Cisco Voice's product lineup, all pieced together. fragmented applications and processes that dont work side-by-side with eachother. The other reason, which is huge to me, is the hardware. I am huge on how things feel in the hand and in my opinion apple's hardware is just far superior to anything offered for Android. Best thing I have seen hardware-wise was the Samsung Galaxy Alpha, and the Oneplus2. I miss the old Nokia days, e61/e62, that build quality was top notch, although running symbian made it a bit of a snail. I tried switching out of iOS and over to a nexus5 when it was released, I had pre-ordered it and was super excited for it to come in, but the hardware felt like total shit to me, and after a month I swapped back to iOS. Im still rocking an original iphone5 thats jailbroken, works better than that N5 any day of the week. Much like cars, it isnt about the size of the engine, or the tech it comes with, its about the whole package and how it all works together, as a unit.
> fragmented applications and processes that dont work side-by-side with eachother
Are you joking? I just tried to email some screenshots to myself from my iPhone. Couldn't do it. It only let me send one image at a time. There was literally no way to make multiple attachments, and if you are trying to attach something that's not in Camera roll, good luck! (I only went the email route because its 2016 and I still can't just send a file from my iPhone to my computer via Bluetooth).
On Android, its a simple matter of selecting all the photos (in pretty much ANY gallery app, doesn't have to be the OS included one), and hitting share: I could send to my computer via Bluetooth, or attach to an email, in like 2 clicks.
Android's interoperability and system for how apps can share data and work with each other is unparalleled. iOS has a long way to go on that front...
Discounting the fact that Airdrop only works on Macs (sending to a Windows machine or an Android phone doesn't work, even though those devices both support Bluetooth file transfers), I've never even been able to get Airdrop to work on my Mac.
As for emailing files: that's all fine if your images are in the Camera roll. But try emailing and image and a PDF together, or an image from a different app.
"all pieced together. fragmented applications and processes that dont work side-by-side with eachother"
Wow this is... don't even know what to say here. Just... incredibly superficial. Let me put this puzzler to you... I want to share something (say an image, video, sound, URL whatever...) from inside an app to a friend via a chat app. Compare how that's done on Android vs in iOS. If you don't know what the answer to that question is in Android, please refrain on commenting about what platform feels like a bunch of fragmented precious snowflakes glued together on a rectangular screen.
Also worth mentioning, I think the design of the hardware on the new Iphone6 are a massive screwup. For instance how rounded the edges are, they should have a curvature, but not as drastic as it is currently. And the protruding lens from the back of the phone, jobs is surely rolling in his grave over that one.
I think apps are in a lull right now because most were abandoned and left users feeling jittery about pouring their lives into them. Also few apps spent the effort to take advantage of working offline. If I'm in the subway, I'm basically unable to use anything except games. Although the last couple of games I couldn't play because they were trying to connect to an Ad server that would fail and so the game wouldn't progress.
Not just to ad servers. Some games that have no need for online-only modes are starting to function that way as well. I suspect it was thoughtlessness on the part of the developers ("When would someone ever be without the internet?" "When they're on a cross-country flight!"). This reminds me, I should find a comment box on their site and suggest they fix this, it was incredibly frustrating being barred from a game I bought to play in single player mode just because I was 30k feet in the air.
It's antagonistic behavior towards users and unnecessary for most apps to be always-online. This is the difference between "I'd recommend this to friends" and "screw these guys". The primary reason I buy board and card game apps is to play offline when traveling, usually with other people, versus carting around 100lbs of games. If a simple hot seat version of your game requires an internet connection, you're doing it wrong.
I agree that it's annoying because I like to play games on the bus where I also don't have internet. I'm just saying that in a way, this was caused by people pirating too much software.
I wish I had a solution which didn't require the apps to go online but I don't.
To forget about piracy. I mean no offense to these developers, but if your app can't sell then it can't sell. People will steal software regardless of what you do. Measures like this almost certainly don't encourage more sales, instead they result in negative reviews and fewer sales.
Related question: This was on iOS. How bad is software piracy for this platform?
From what I understand iOS doesn't have much of a problem with piracy since you have to jailbreak to pirate apps (I think). If it's iOS then I'm not really sure why they had to use the internet to be honest..
I just know that Android has a pretty big issue with piracy and some developers choose to release their apps for free on Android for that reason.
I don't disagree with what you are saying and again, I don't know if requiring internet access to combat piracy is the right thing to do but I feel like it's a bit sad to place the blame solely on the creators of the app and not on people who pirate their apps
>("When would someone ever be without the internet?" "When they're on a cross-country flight!"
Actually, that's incorrect. All cross-country flights by now should have WiFi available.
Now, draw your own conclusions about app developers who think you should pony up $$$ to get WiFi on a plane just so their app can connect to game servers (in single player mode).
The user experience is similar to webcam/microphone access: nothing works without a prompt and browser-mediated pairing process, and only on secure origins (e.g. https). The spec goes into detail about security/privacy considerations, and includes a blacklist of problematic targets. https://webbluetoothcg.github.io/web-bluetooth/#security-and...
Access through web browsers could expose issues in the user's kernel bluetooth stack, but that risk exists with any binding. There should be time to explore this possibility while the feature is still behind a flag.
> The user experience is similar to webcam/microphone access
What happens behind the scenes is not. The microphone and webcam are far easier to secure because they just provide data streams if authorized and the web browser can provide a visual cue when it is in use. Some webcams even have a light to indicate when they are I use. Although that might not be perfect, it is far better than things like browser plugins.
Bluetooth is another story. With WebBluetooth, you are effectively providing access to an Advanced Persistent Threat attack vector. That takes things to a whole different level for black hats. If it is widely adopted, someone somewhere will find a way to target it as compromising the firmware of paired Bluetooth devices should be easier than typical escape from sandbox attacks. How long it takes for us to hear about it is another story.
> Access through web browsers could expose issues in the user's kernel bluetooth stack, but that risk exists with any binding. There should be time to explore this possibility while the feature is still behind a flag
Whether WebBluetooth can attack the Bluetooth stack directly is irrelevant. What matters is the embedded device's Bluetooth stack. Allowing a web site to dictate the contents of an otherwise legitimate communication with an embedded device's Bluetooth stack allows it to compromised with no compromise of the machine required.
Running exploits against the embedded device should just requires gaining control of a webserver hosting a site that the browser permits to use webbluetooth or injecting code through a XSS attack. If the embedded device allows firmware updates over bluetooth, getting malicious code onto it is easy. If not, the embedded code that communicates with a paired device should have been written under the assumption that the other end would not try anything malicious and consequently, it should have vulnerabilities.
Regardless of how a blackhat gets into a paired bluetooth device, once they are inside, they have code execution on the opposite side of the surface typically attacked on modern computers.
A malicious app must be installed before it can run and is likely vetted by the maintainers of a package manager or App Store. A webpage running JavaScript simply runs with no inspection from anyone.
Also, a malicious party usually cannot inject code into an installed app. Injecting it into a webpage you visit is far easier. Ad/tracking networks have been used for that. There is the possibility of a MITM attack if all parts of the page are not protected by HTTPS. There is also the potential for cross site scripting.
The web is not a place where I would want access to everything an installed application can access to be possible by design.
The Javascript has to request permission for each type of device access on first use, which is a lot better than the ask-for-everything-on-install model that older versions of Android use. Service Workers also only load over HTTPs. Generally xss attacks are prevented by the permission being granted to the domain of the script which is trying to use the service.
If you are uncomfortable that any given site will be properly secured you can always deny them the permissions just as you would decline to install their app, except that the website can offer you a degraded experience, where the uninstalled app will offer you nothing.
> The Javascript has to request permission for each type of device access on first use, which is a lot better than the ask-for-everything-on-install model that older versions of Android use. Service Workers also only load over HTTPs. Generally xss attacks are prevented by the permission being granted to the domain of the script which is trying to use the service.
If you are going through an app store, the app has been vetted. If that misses something and it is later found, it gets pulled. There is the possibility that you will never encounter the bad app by virtue of being one of the ones who would have installed it using it after it was pulled. On iOS, there is the possibility of signature revocation providing protection to disable it after it is downloaded. With a website, there is no such protection.
Plus, web servers are rarely patched and often exploited. Anyone who allows a website to use WebBluetooth effectively opens themselves to the poor security practices of the other end. Even without that risk, there is also the risk that an ad/tracking network is not used in a cross site scripting attack to gain access.
> If you are uncomfortable that any given site will be properly secured you can always deny them the permissions just as you would decline to install their app, except that the website can offer you a degraded experience, where the uninstalled app will offer you nothing.
If all users thought the way I did, WebBluetooth would never have been proposed. The reason being that WebBluetooth could be used to exploit other things even if the web browser's implementation has no exploitable bugs. If WebBluetooth becomes widely used, Black hats will have a field day with the users who do not know.
They need not even compromise a web server of a site that has a legitimate application for it. They might just ask users of some other site that they trust to enable it as few users ever say no to such prompts (or prompts in general).
Firstly, these powerful features are not available unless your site is properly (I.E. fully, absolutely nothing can be plain HTTP) protected by HTTPS. You cannot even create service worker without working HTTPS so any kind of PWA is out of question without HTTPS. Secondly, any browser that supports these capabilities also supports Content Security Policy which makes your site trivially immune to XSS and I expect that it will sooner or later become required to get access to the powerful features, on top of HTTPS. Thirdly, any powerful feature is behind a permission that is basically as hard to obtain as the consent to install an app in the first place.
First, black hats hack into sites protected by HTTPS all the time. Requiring HTTPS does not protect you when the server is compromised. Second, XSS is not needed to exploit devices on the other side. Third, users click/tap yes to just about any dialog, no matter what it says.
> From the article you have to "install" the web application for any of these features to be available.
As far as the article is concerned, rendering a webpage as if it were an app takes away functionality (mainly, the ability to interact with the address bar). It does not discuss the security of web 2.0 features and it certainly does not claim that these features are only available when the webpage is pretending to be an app.
> From websites sure, but they do from other apps.
iOS uses capsiculum to isolate applications while Android uses SELinux. They aren't executing each others' code.
> iOS uses capsiculum to isolate applications while Android uses SELinux. They aren't executing each others' code.
XSS isn't about executing other people's code, it is about performing commands that you shouldn't be performing. There are a ton of instances in the pass where cross application communications have lead to privilege escalation in the same way that XSS does.
> Apps suffer from MUCH bigger security issues than XSS.
It depends on the attack surface. However, something like WebBlueTooth has only one-click/tap authorization protecting it at best against software that is already downloaded and executing. Mis-taps/clicks are trivial. You do not have that with a new application that a website wants you to download. You also tend not to have installed software updated without your consent after you first obtained it (with the trend to use Javascript to add functionality to iOS apps being the glaring exception), but websites can be updated at any time, by both the web developer and by black hats who hack into it.
I want to clarify some points on React Native. Unlike what is commonly said, my goal with the project is to make the web better.
A fundamental problem with the web as it exists right now is that as a "user", you cannot go one level deeper when you want/have to in order to provide a good experience. There's a big list of things like customizing image decoding/caching or extending layout part of css that is encoded in the browser and cannot be changed in userland.
The way to solve your problem is to convince a browser vendor to implement a solution, then all the other browsers to support it and wait for years such that your userbase can use it. This loop is extremely long and involves a lot of conflicting interests and having to support it forever.
The idea of React Native is to provide a subset of the web platform and hooks to drop down lower whenever you want to. For example, as a user you can use <Image> which behaves like a web <img> and be done with your day. But, if you want to use another image format, or manage your image cache differently then you can implement it and provide a <MyImage> component to the end user.
The advantage is that each app can start building and experimenting with its own low-level infrastructure and replace pieces that the default platform doesn't do adequately for the use case they are trying to solve.
Now, why is it good for the web? Since React Native primitives have been designed to work on the web with a small polyfill ( https://github.com/necolas/react-native-web ), there's now a concrete way to improve the web platform without being a browser vendor. You can prototype with your ideas on React Native and when you figure that one is actually good, now start the process to ship it to the entire web platform. Kind of the same way you can prototype your js transforms with babel and then push them to tc39 to make them official.
If React Native is as successful as I want it to be, the web platform is going to supports all the use cases that only React Native can provide today and we can just rm -rf the entire project and use the web.
I tried to do this a few years back and it was completely impossible to order anything from the Google store and have it delivered to Portugal.
Although I routinely rebuilt Android to reflash my Nook Color and even rebuilt Android x86 for the "Magalhães" school laptops on a lark, I could not beg, borrow or steal an Android device with "proper", vanilla Android for myself without resorting to shady imports and zero warranty.
So after a year of using an HTC One[1] and, later, a moderately vanilla LG 4, I quietly went back to the iPhone, got a Nexus 7 (2013) to scratch my occasional Android development itch, and haven't looked back. The ecosystem is _so_ much better, Safari on it (and my iPad) still knocks Chrome on Android out of the park from a user perspective, and I can tinker all I want on stuff like the Remix PC and the ODROID without having to put up with a lousy phone user experience.
Would I use Android? Yes, for sure - but I wouldn't _like_ it.
Would I develop for it? Sure, no problem. Did that for digital signage, even[2].
Would I develop for it _first_? Doubtful. The only serious money in it is in vertical (B2B) apps and suchlike.
Would I develop web apps for it _first_? Like... are you serious? With the market being what it is?
So although I "get" the article, I think it's not that realistic.
TLDR: Chrome on Android supports Service Workers and WebRTC while Safari on iOS does not. This means Android these days is better suited for fully-fledged web applications that do not require a native app (or at least a native app wrapper).
I think the flaw in the argument is that web applications that only run well on a single platform (Android) aren't really web applications. In that case you might as well build a native app.
Sadly, the web is an accessibility nightmare. If that changes, then sure, I could move too. But there's a lot that modern versions of iOS get right regarding accessibility, stuff that I wish google/android would do too.
I am not a professional web developer, but I used LAMP to make a decent size website using standards conformant XHTML/CSS without table hacks with PHP and MySQL for forms when I was in high school. I wrote the markup by hand, so I made certain to place content first so that 56k modems would load it quickly and web browsers for the the blind would not read navigation bars before the actual content. At the time, I assumed that JavaScript was not always available because people eithet either turned it off to eliminate the Javascript engine as an an exploit vector or were using browsers that did not support it because they were blind.
Consequently, I considered requiring JavaScript for a webpage to load properly to be bad practice. Even if I assume JavaScript is everywhere, I have yet to hear of how one would make things dependent on it accessible to the blind. I know that people will make webpages that require it regardless of whether the blind can view them or not, but I still feel that is bad practice.
Modern screen reader software looks at the output of the DOM. It isn't manually parsing raw HTML straight from the server (it's possible 10 or 15 years ago this was the case). So however the browser got that particular text on the screen (directly from a server, or rendered on the client via XHR requests) this is an abstraction most screen reading software doesn't involve itself in.
with the latest webdev trends it is extremely unlikely this will improve any time soon. There was a time (~10-15) years ago when separation of concenrs and accessibility did matter, now it is just a js frameworks bloodbath.
Some "frameworks" put a ton of work into accessibility.
The Polymer team's entire element catalog is accessible with ARIA integration done with assistance from Chrome's dedicated accessibility engineers. We even provide reusable abstractions that make writing your own accessible elements easier, like iron-a11y-announcer and iron-a11y-keys.
Thanks for the link - was really interesting, particularly the introduction which explains why accessibility is so important and the number of people that it touches.
The biggest issue is the performance difference. It takes an entire second to syntax highlight a new file and large files are unusable. Almost all interactions have a noticeable delay, including typing. Scrolling is painfully slow.
At least on OS X, it's by far the app with the largest energy impact. It's the only other thing that competes with Chrome.
Besides that, it doesn't use native UI elements where it could. Plugins don't add top menu items, the folder view on the left isn't a native treeview, it renders its own (slow) scrollbars, it doesn't respect native text rendering settings like line height or font hinting, pop-ups overlap in surprising ways (sometimes scroll bars are above them) and can't easily leave the main window, various elements move around unexpectedly when scrolling to an edge.
Primarily because Firefox on Android doesn't yet support any of the technology being discussed in the article, or indeed most of the technologies on the page you linked to.
If I ever get a Android phone, it will be Nexus series. I had an HTC and I waited ages for Android 4 update because AT&T didn't had there "customized" version, with bunch of useless apps on it. On the other hand, my friend was able to upgrade to latest version of Android, because he was using Nexus. I switched to an iPhone and I loved it. Better battery life, and clean installation.
I also went from iOS to Android (iPhone 4s -> Nexus 5x). I had my 4s for 5 years and loved it. I'd still have it if it weren't for iOS 9 being too big to install and verizon overcharging. I've developed apps on both.
Some apps have to be apps to use sensors and devices built into the phones. A lot of apps could probably get away with being mobile sites. Doubly so with some of the new html technologies being introduced by the W3C.
Because Android and iPhone are owned by companies, they can move fast. The web has to accommodate for many more devices. So web standards move slower. In the time apps have become huge, a lot has been added to web standards. But I'm guessing most people haven't noticed. My guess is people are used to using frameworks and have abstracted themselves away from the basics.
As a challenge to the reader, see what you can build in only JS/HTML/CSS with no server side. You'll be pleasantly surprised by what you can accomplish.
I think the differentiating factor here is Chrome's push to support and utilize the Service Worker API (https://developer.mozilla.org/en-US/docs/Web/API/Service_Wor...). The opportunity for web apps to have an offline experience and utilize push notifications is not only exciting but game changing for the web platform as a whole.
Except you didn't read the article so you don't know that it is specifically related to web application development and not "things that are just personal preference."
The article makes a list of web features that Apple has dropped from the iPhone or from Safari or has neglected to implement continuously over time, and provides real enthusiasm to developers.
We often take leading "Why" out of titles here, so we'll do so above. It's a form of bait, as anyone who's read the first chapter of Cialdini's "Influence" knows. (I think it's the first chapter; the one that quotes a study that turned out to hinge on the word "because".)
But that said, please don't post comments of pure grumpiness. It just makes this a sour place.
If he had titled "Android is currently the best mobile web platform", I'm not sure it would have been upvoted here and therefore less read. He made the right choice.
Apple have actually been always pretty excellent with Safari performance and features on iOS. They were impressive from the start and they have kept pace with Google with regard to JavaScript performance overall performance has usually been class-leading, rendering too. Ok they're missing WebRTC right now and workers, but I'm pretty sure WebRTC will come soon and workers too at some point.
Google Play Music is why I installed Chrome. If I play music from Firefox, after 6 hours, my machine gets choppy and slow. Looking at Task Manager (in Windows 10) it will show me that Firefox is using around 1.4 GB.
So, I use Chrome for music.
Edit: And printing. When I need to print I always use Chrome because Firefox's printing is pretty broken.
Sounds like someone trying to force web apps to do native apps' jobs. When something like React Native bridges web languages and full native benefits/performance.
Sidenote: I checked the Google's Project Fi - damn, it's expensive. For $20/month you get unlimited calls and texts, but you have to pay extra $10 for every 1GB of data.
Here in Poland for $10 I get the same unlimited calls and texts plus 4GB of LTE included (and then you're limited to 1 Mbps - but you can take the $13 plan and get unlimited GBs too).
If you think Project Fi is expensive, you will be shocked by the rates of other carriers. Fi is trying to disrupt phone carriers through cheap pricing and transparent billing.
I have been experimenting with Fi and I think it is good but has some significant drawbacks. I am about ready to cancel my Verizon service to go all in with Fi, but a major factor is the fact that I'm going back to school and will be counting pennies. Verizon's 3GB plan is attractively priced, but that significantly better service is still double what I pay on Fi in a typical month.
The Fi service is fine in metro Boston, but on a recent trip to parts of rural AZ I was without service for long stretches. Another downside with Fi is that I don't seem to be able to talk on the phone and get data service at the same time.
That's pretty good compared to other service providers. Also, if you pay for more data than you use, you get refunded whatever amount to didn't use e.g. I bought 4 GB of data but only used 1.2, so I get refunded $28.
The downside to Project Fi is that you need to buy a Nexus 5X to get in, and there's significantly less coverage than Verizon.
Where I live, Fi is great. I'm on Wifi and only have to pay for the data I use. With AT&T it'd be $75+tax for calls/texts+5GB of data, and $15/GB if I go over. Where Fi would be $70+tax for 5GB data, and less if I use less data. US get's screwed when it comes to phone plans :/
Good post. There's one other challenge though and that is access to native GUI widgets. Just having an app icon and appearing in the task switcher simply isn't enough. It's one of the problems React Native tries to solve, although I have to admit I'm not impressed with it so far. With the momentum Javascript is having I wouldn't be surprised if most vendors will release "native" javascript bindings to their platforms anyway, which hopefully will remove the last missing piece for "native experiences" using Javascript on iOS and Android (and for that sake, Windows 10 and OSX).
For what it is worth, Windows has had "native" JS bindings since Windows 8/Windows Phone 8.1. The Windows 10 store added support for server-hosted JS apps, which was the last puzzle piece in the support system as a lot of web developers still love their existing/preferred server host/backend language/deployment pattern.
To be honest, I've been hoping that Google would lead the way with JS API bindings... Cordova is pretty nice these days, but it would also be nice not to deal with it.
If you want to argue that I shouldn't expect my user to have the newest iPhone you shouldn't also list WebBluetooth as a pro. My user probably doesn't have a device that supports it either.
I am not entirely sure if Android is the best mobile platform out there. Apple continues to innovate at an incredible pace on its hardware and software. It is untouchable as far as HCI is concerned, they just seem to get most of the UX right. Its amazing to see them make computers that work and behave like a charm.
Pricing is unreasonable, TBH. And that's where Android eco-system has held an upper edge for too long now. Android as a platform, superior enough technology-wise, is terrible 'fragmentation' wise. Apple's laser sharp focus on UX around their entire line-up is commendable. To an extent, they think about their end-users at a level unparalleled at other tech companies-- not supporting flash, pushing aggressively ahead with ad-blocker support, adding a voice-enabled assistant, iCloud etc Apple's radical re-think of a smart-phone is a miracle. Almost everyone before them got it wrong. They are operating on some other level altogether.
Google, I think except for Google Now and their notifications scheme on Android have mostly been playing a catch-up with iOS.
I think Google faces the same issue with their Cloud offerings too. All the talk of the most advance platform/tech in the world and they still languish behind AWS and Azure.
"It is untouchable as far as HCI is concerned" (among the "it just work's" argument, or the privacy advantages, generally superior ecosystem, etc) and yet "Pricing is unreasonable".
The dissonance… is strong with nerds who think the only thing that contributes to a product's price is it's raw spec sheet (where again, Apple is generally quite a bit ahead). Clearly, things are not equal and Apple's sales mean millions are giving them a thumbs up in regard to their pricing being reasonable.
I'm actually going to be on topic off topic, but I seriously hope that somehow we have celestial alignment and QML can somehow take off as the defacto networked app standard. HTML/CSS/JS is a document format, styling for said documents, and a language cooked up in a week to bake into a browser in the 90s. And the 90s language is the best part!
QML is ground up meant to write interfaces in, and provide all kinds of critical functionality you would want on everything from mobile to televisions to toasters to your desktop:
* Hardware acceleration everywhere.
* DPI scaling.
* Ability to write controls in native C++ or as composite elements in QML itself.
* Signals and slots throughout all aspects of the framework, instead of callback hell.
* Intuitive and first class animations support.
* Native look and feel on almost all platforms through the Controls API, with the ability to restyle them however you want.
* All aspects of the framework support network transparency. You can associate resources remotely or locally, and all the necessary properties to track loading and downloading are available, and the API handles component loading from web services much more intuitively than HTML script / css loading.
I love QML a lot, and there is even a project called qmlweb to run it in the browser, but I really want to see http://test.org/app.qml be a thing. Having written my share of web applications and QML ones, I have no idea why anyone thinks spreading the design disaster of the traditional web to encompass all user software is the best we can achieve.
I also just made the exact same switch, after years of wanting more control over my hardware without jailbreaking, I just want to install f.lux for crying out loud! As a web dev, i'm very excited to loose the chains of iOS :)
How did Android help you with f.lux? Apple just came out with a f.lux copy built into iOS, while none of the alternatives on Android work without rooting.
There aren't any programs that do the same thing without rooting. Android doesn't have any APIs that allow you to change the color temperature, so all of the non-root apps just add a transparent red overlay on top of the screen.
I know this area well since it's one thing I was really looking forward to when I got an Android phone and I was very disappointed.
I'm a Java guy, open source advocate, I love to have "power user" features and I was an android guy since android came out. I recently made a move to iOS (iPhone 6), and I'm not looking back.
It has much less features, it's a walled garden and all, I have to learn a new language (or two) to be able to develop apps for it (And pay $100), but the reason I like it so much is that it simply works.
Not just the software side, my android devices always had more issues, my Galaxy S III spent 3 times being fixed at Samsung for different reasons, so far with the iPhone I had no software or hardware issues.
And when my wife had battery issues with her iPhone 5c, instead of taking it for fixing they just gave her a new one on the spot and apologized for the inconvenience.
Simple, do-one-thing and do it right devices, that simply work.
This is a classic "do more with less", less features, nothing too exciting, but the little they have simply works.
For many years it wasn't possible to install self signed apps on iOS. But on recent iOS versions, you no longer have to pay $100 to install apps on your own personal iOS device, you just need a matching iCloud account to self-sign from Xcode.
This was a pretty interesting article, and from the title alone I had absolutely no idea this was actually a discussion about the relative merits of web apps and native apps on phones, with the main claim being that we've nearly reached the point where web apps are viable and that Android happens to support this better at the moment. I suspect many others were caught off guard too (and perhaps did not even read it), given how many comments here are just addressing the generic issue of iOS vs. Android and all the drama that comes along with someone emphatically announcing that they've at last switched to the other side.
This is why I think that rhetoric phrased in terms of one camp vs. another is often greatly counter-productive.
My only issue with iOS is that Safari doesn't play WebM. You have to download and open them with the VLC app. I wish they would just accept that it's a solid format and adapt it, but I don't see that happening any time soon.
I have an Ubutu phone, and most of the apps are web based. Its quite a good user experience (way better than Andorid or ios in my opinion, apart from the lack of apps). However, when I went abroad and turned off the data connection it became pretty useless. No offline maps, as the web based apps won't even startup without a data connection.
> Of course I don’t know the full backstory, but it sure seemed like the original plan for 3rd party developers on iOS was to have us all just build apps using the web.
Correct, there was no SDK on the first generation iPhone. It was a closed device, like all Apple devices. And that's how Jobs wanted it, he just thought that the idea of third party applications running on this device was pure absurdity.
Then Android came out and Jobs had to adapt.
> Apple made what turned out to be a really smart business decision: they released an iOS SDK and an App Store and the rest is history.
Kind of. Apple made a really smart business decision: they realized that if they didn't match Android and provide an SDK as well, they would lose. So they followed suit.
> The end result, for those of us still trying to build installable web apps for iOS was that with nearly every new iOS release some key feature that we were depending on broke.
This makes it sound as if these features got accidentally broken. No, they were intentionally removed or crippled because they either threatened Apple's dominance or cut into their profits. You could call that another set of "really smart business decisions"
I have to say that I'm all for web apps and web based apps using things like Cordova or what not, but recently my company's app has been hitting some walls. There are a lot of great things those systems can do and they're great for starting out. However in the long run you might as well consider developing native or developing using something Xaramin (which will probably be even more free soon). Native development just provides a less kludgy of developing. My company will be making the switch soon in this light.
EDIT:
I'd also like to say that the reason it's tough to develop for the web is languages like Javascript, sure it's getting better very slowly, but it also doesn't really allow for other languages to run in the browser and probably won't in the future. Sure you can compile, but why compile to JS and use a web view and work around conflicts while developing an app, when you can use a typed language and access APIs that work?
I actually did the opposite. Owned a Nokia "smartphone" when I got my first gen iPhone. Stayed on for 2 more generations then switched to a Samsung Galaxy (reason: wanted to see what this whole Android thing was about).
In every way it was a painful experience but I stuck with it for a few years. When I finally switched back to an iPhone I was like, wow, it just works. Forgot how that felt.
I'm still a fan of Android and believe it does some things so much better. Google Now is actually incredibly cool (too useful to be creepy). Music library management was much better (I miss you so so much N7 player). eBook reading was also better (Moon+ is amazing).
On the other hand, even as a power user (I program Android and iOS apps for a living) it frustrated me to no end. Android is here to stay (which is great) but from a usability (i.e. user friendliness) perspective it still has so much further to go.
I might switch if my job was only coding, but I handle a lot of graphics as well, and that just doesn't fly on linux. On a side note, it's frustrating that everything I want to do on linux requires me to download 5 packages and recompile a binary... I guess that's just me...
Another iOS -> Android switcher here. I owned every iPhone up to and including an iPhone 6, and then switched to a Nexus 6.
From my perspective, the two platforms (and when I talk about Android, I mean Android-on-a-Nexus) are pretty much homogenous. They look and feel very similar, behave similarly, etc, etc.
Been with Android since forever, but the battle for security that Apple has recently been fighting on behalf of their customers is enough to make me want to start considering iOS devices in the future.
I'm in the same camp. I've had a dozen or so android phones starting with the moto droid. I suspect my next phone will be an iPhone, although its hard to justify the price difference between a Nexus 5X and the latest iPhone
"I want the ability to create app-like experiences on the OS with web technology.
Very little seems to be happening in that regard as far as I can tell"
I'm not sure why this doesn't sound like a compelling reason for a switch.
I find the maintenance aspect much more persuasive.
Usually people are paid to do sysops, administering, maintaining and tinkering with OS. It's a job. And handsomely paid at that. Doing the sysops job and having to pay for it, just to maintain your own phone, seems like a bad economical proposition.
For me these two platforms are more-or-less the same from a user perspective. There're some cosmetic changes, like notifications are handled better on Android by bundling them, instead of pinging for every single one of them. Apps are usually on both platforms, same with games. iOS users at my work seem interested and impressed by the Nexus 6P, some consider the possibility to switch someday. But it really doesn't matter as long as the device get the stuff done, does it? :P
It'd be more accurate to title the article "Why Apple needs to treat Progressive Web Apps as first-class citizens".
It's less about iOS-vs-Android than it is about eliminating friction between the web and mobile apps. I enjoyed this analysis very much but if the article wasn't so highly upvoted already I might have skipped over it due to the title.
My first smart phone was an iPhone 4. After switching to the Galaxy S3, I was sold!
Apple is good for users who was a device that is simple, set in it's was and easy to use. It makes it hard to break.
Android makes a phone that has unlimited potential, but at your own risk.
As an IT, I'm a tinkerer... so I prefer the later. :)
All about preferences.
We just today published a UX checklist for iOS and Android apps (https://stayintech.com/info/mobile_ux_checklist). There are some good ideas on this thread that I can later add on that list! Hopefully useful for some of you.
The point about the full web app experience is a good one. And while Android's Nexus One left me high and dry on promises of continual updates and pushed me into my iPhone 4s from which I've never come back. If iOS doesn't get full support for service workers soon, I'll have to look again at Android.
Interesting opinion. I am struggling to think of a single standalone webapp I would benefit from... I use a few native apps that work flawlessly and the clean out of the box functionality for phone calls and web browsing. I guess I'll stick with IOS (shrug)
The web is a patchwork of different frameworks, languages and standards without any clear direction as to where its heading. Why anyone would want to work with js is also beyond me.
Website is just HTML, CSS, JS. Web is open, so other people developed different frameworks for their needs. It seems that goal of the web is to reach as many users as possible without relying on any 1 technology/company.
Apple is just taking a page from Microsoft's old playbook, sabotaging the Web platform in order to prop up the competitiveness of its native platform. When MS owned the dominant platform, they made sure that the Web browser they shipped pre-installed on every Windows machine was always just good enough to claim to be a usable Web browser (or it might have driven people away from Windows), yet always bad enough to make the Web itself look bad compared to Windows. With the biggest benefit of the Web being its reach, anything that could limit the reach of new powers could hold back its spread, and MS did hold back its spread for years.
At the same time Apple, having no leverage from their own native OS of the present, touted their hardware/OS/browser stack as the best way to use the platform of the future--the Web--to make themselves more relevant in a MS-dominated world and sell more hardware. They did a lot of good for the Web platform in the past.
Fast forward to today: the iPhone ignited the explosion of mobile computing and made Windows' dominance of the desktop into being merely the biggest frog in a smaller and smaller pond. MS no longer had a monopoly to defend, repented for its sins, and began to build first-rate, evergreen browsers to stay relevant in the new world. (Competition is a wonderful thing.)
And Apple took their place, not as the monopoly OS in the new, big pond, but as an OS that was a large enough part of it that it could make things "not work on the Web" by making them not work on iOS. They manage to frequently be behind in getting new things to work in Safari (cf: caniuse.com), while being careful not to be so far behind that it affects their reputation with the general public and weakens them in competition with Android, and they prohibit any superior browser from interfering with this delicate "hurt the Web without hurting yourself" strategy by banning all others from iOS.
The result is that anything iOS Safari can't do, Web developers can't use: iOS Safari's shortcomings appear to be the Web's shortcomings, which can be overcome by committing to Apple-proprietary alternatives.
They can't afford to fall too far behind, though, or conventional wisdom will gradually emerge that iOS isn't as good as Android at "Web stuff". And as "Web stuff" improves on other platforms, the Web matters more and more as does your reputation for supporting it.
If developers, blogs, pundits would talk and post about it every time iOS Safari fails, yet again, to support some new Web technology, and even release some features that work nicely on Android/Chrome but require a native app on iOS, "because, you know, the iPhone's Web support is not very good, as everyone knows...", it will increase the pressure on Apple to shift the balance of "good but not too good" farther forward.
He basically list all the reasons I've stayed away from android. As a tech toy it's fun to play with but as a everyday phone it scares the hell out of me security wise when every minute they are opening up the attack surface.
So I've been with iPhone every since, it opens emails, reads text and webpages I barely open the App Store anymore. But I can see your side as I love writing code and tearing things apart to mod - I just decide my phone wouldn't be one.
I'm amazed when I go to webdev conferences and see 90% iPhones, including many of the most prominent "javascript celebrities". Then I tell myself that just because you work on something doesn't mean you are passionate about it. I'm passionate about the web and couldn't imagine using an OS where all major features get delivered 4 or 5 years after creation (like IndexedDB was).
It depends on what you value – some features take awhile to show up on iOS but others are implemented relatively quickly, so there's both a question of which specific features actually benefit you and how much it's worth to have a much faster experience in general. The Android phones tend to perform much worse because the vendors chose to add multiple slow cores while Apple adds fewer faster cores — and since JavaScript is single-threaded, that adds up to a rather substantial difference:
https://meta.discourse.org/t/the-state-of-javascript-on-andr... got a lot of attention last fall and the situation is generally still true — the Samsung S7 was even slower than its predecessor when it launched (https://twitter.com/RonAmadeo/status/709448306771025920) depending on which version you happen to buy. A lot of people just don't want to have to deal with that when they can pay roughly the same amount of money and get a good, consistent experience. Yes, he dismisses that as “not all of your users have an iPhone 6s” but that ignores the fact that even the flagship Android phones were struggling to match the performance of iPhones which were multiple generations older, greatly extending the usable life of the phone, and that performance issues are quite notoriously user-visible. Yes, it's possible that with optimization heroics you might be able to get close to 60fps even on an old Android phone but it's expensive and most sites don't bother.
The other thing to remember is that people who care about this also tend to care a lot about security (or work at places which do). The Android experience is less dismal but it still requires a lot of of micromanagement and questions about whether e.g. enabling encryption will slow your phone down noticeably (i.e. parity with the iPhone 3GS from 2009) or whether the fingerprint authentication has been implemented competently (it's complicated – see e.g. https://www.blackhat.com/docs/us-15/materials/us-15-Zhang-Fi...).
Again, if you aren't primarily working on this exact problem you might quite reasonably choose not to have to add “phone security analyst and sysadmin” to your workload.
I'm not sure why so many people don't understand that there's no one-size-fits-all solution out there.
I have a Nexus 5x that I'm pretty happy with. However, when asked I've only ever recommended Apple phones (and tablets and computers) to friends and relatives. Having a place where you can take your device to get support is pretty valuable.
TL;DR (applicable to all articles in both directions): Apple software quality has gone to crap. Android is an inconsistent mess and I hate $OEM or $CARRIER bloatware.
In fact, both iOS and Android are usable. If you had one or the other issued to you by an employers, it would be fine. The only shocking thing is that there isn't a third and fourth choice with a vibrant device and app ecosystem.
Samsung is even learning from Apple with the locked bootloaders and no root. Why have users own the devices you sell them when you can just keep owning them while people pay for them?
But Android users never update there OS and there is a lot of old Android OS versions to support, correct? Additionally, the device manufacturers control the OS distribution and what's included.
Web apps are okay but really there just needs to be a better way of 'using' native apps. A 'yes I want to use you now but no I don't want to install you' button.
It would be nice if guy stuck to coherent argument.
Meanwhile he talks about "monarch enforcing a 30% tax.", about iOS developers barely making any money.
Ok, so where are the numbers, how much money did he make with his "installable web apps" on Android?
>So, instead of opening my text editor I placed an order for a Nexus 6P
Nexus 6P is notorious for atrocious build quality. It bends easier than a bar of chocolate. [0] Google should do a recall on these things. It bends a lot easier than an old iPhone 6 plus.
Edit: I see Google fanboys decided to downvote this comment instead of engaging in a debate. This is not in the spirit of Hacker News. I know HN has a lot of Google employees who are extremely touchy but come on.. be objective once is a while
Anecdote: I have owned a Nexus 6p for ~6 months now. When I'm not using it, it's either on my nightstand (sleeping) or it's in my pocket. It has not bent.
I have carried several chocolate bars in my pockets before (mostly when I was younger). They bend very easily. (They also melt and even when they don't escape the packaging, there is melted chocolate all over the wrapper, and it's nearly impossible to eat without making a mess. And if you let it cool again, those tiny chocolate traces end up falling all over!)
Anyway, I'm not sure I got the point of this (only incredibly tangentially related to the post) piece of FUD.
Fact is that Nexus 6P is incredibly poorly engineered due to the placement of various button cutouts and battery position.
Can you take your phone and do what he did and prove him wrong? Go ahead. Until then, this is not FUD and your post is nothing more than a rationalization.
I don't know. Oddly enough, picking up my phone, placing my thumbs in a particular location along the body of the phone so as to minimize the structural rigidity of the device, and applying force just isn't part of my use case for a phone. I use my 6p like every other phone I have used, and it hasn't bent. Good enough for me!
Seriously. I'm a big dude, and my everyday life is filled with objects that I could bend with a similar amount of force, including objects that I carry on my person and/or interact with a lot. I don't pick them up and try to bend them, and they don't bend.
Interesting on case usage. I'd say virtually everybody I know with an iPhone has it in a case, but for other devices it's maybe 20% of people I know who use one. All anecdotal, and every mall I go in has a hundred shops selling them, I've just always wondered who's buying them
I've never used a case on any of my phones whether iPhone or Nexus. I did use the iPhone 4 bumper they gave out because it was free and I liked the little ridge that let me lay the phone face down.
I'm using a bumper-style case myself just because it came with the phone, and the phone has a glass back and razor sharp edges which is really just bad design.
You need to get better chocolate. I have had the 6p for over 3 months now and try as I might I cannot bend it. I don't see how the phone can bend in 99% use case scenarios.
We appreciate your concern for the spirit of Hacker News, but your comments in this thread do three things we ask people not to do here: (1) call names; (2) comment about getting downvoted; (3) make insinuations about astroturfing. Please do your part on those, even if other users are wrong. Any other approach damages the community in the long run.