I’m just glad my pinephone shipped and everything on my phone actually makes sense now (even if I have to compile things and write a few config files.)
I’m just glad my pinephone shipped and everything on my phone actually makes sense now (even if I have to compile things and write a few config files.)
You say this like it's some egregious burden. Compared to the cost of building an app and shipping it $100/ year is a fraction of a drop in the bucket. It's less than 1 developer hour.
If you are capable of building an app with push service, the cost is trivial. If you aren't capable, it's irrelevant.
Theres no market of second hand developer licenses.
So please, stop defending them. They are doing really shitty things that will just become stains in computing history.
This is true if you love Apple or hate them deep in your soul for a million burning reasons.
If I started my career in the current era, there is no chance I would have been able to afford to develop in the Apple ecosystem (not just yearly subscription, which is crazy to me, but also the cost of the hardware as you point out).
Why the hell do I have to pay $100 a year to use a computer I own? Why are you defending this!?!
And where is the option for those of us who don’t mind less battery in exchange for actually getting prompt notifications for services we use?
Apple has an obligation to its customers to make their phones work as well as possible. Customers complain all the time about mysterious battery draining behaviors, and blaming various apps. Having millions install some cool new notifications service without realizing it’s actually a battery draining service just multiplies those problems.
This is pure FUD reasoning though. You can’t say “no you can’t have that because it could possibly be bad trust me” without any evidence that it would be a major issue. The more locked down a phone is the more people need Apple/Google.
Look at early Android or Windows Mobile or Palm or heck even your own modern-day laptop. Battery-draining background applications aren’t FUD and don’t require any additional evidence because that’s the reality on basically every platform except iOS and modern Android.
This is a pretty tough alternative. No developer is going to say "I have ill intent here"; are you confident you have the ability to make that decision on your own? I'm not confident I do. I can't look at the code of most of the stuff I run on my phone. Some people would say "then stick to all open source software," but I don't have the time or expertise to audit the code of all -- or even most -- of the applications I run. Maybe other people will, but there's no guarantee they'll find anything bad (whether malicious or just buggy) very quickly -- and we're talking about cloud stuff here, which means there's a server none of us can audit involved in the process.
Apple and Google having "blessed" push notification systems is certainly a tradeoff on multiple levels, from it being a single point of failure to being another server you can't audit and a single company you have to trust to at least some limited degree. But having the notifications integrated at the OS level reduces the number of people and systems involved in delivering those notifications, at least theoretically reducing the number of bad actors -- and, as many people have observed here, also lets these notifications be optimized for battery life in a way that's probably not possible if you have dozens of apps running their own background processes rather than simply asking to be notified by the system one. The alternatives are a different set of tradeoffs. That doesn't necessarily make them worse, but it definitely doesn't automatically make them better.
> And where is the option for those of us who don’t mind less battery in exchange for actually getting prompt notifications for services we use?
The alternate scenarios give you less battery, but don't guarantee actually getting prompt notifications for services you use, do they? They just give you different points of failure. Actually, they might even give you the same points of failure. When a DoorDash notification shows up on my iPhone late -- or as it did the other day, inexplicably 20 minutes early, leaving me standing in Silicon Valley's smoke-filled air quizzically looking for my chicken order -- is that Apple's fault, or is it DoorDash's fault? After all, the notification isn't starting on Apple's server. If the problem is with DoorDash, which the early notification had to be, then if DoorDash could bypass Apple's notification system all that would give me is an incorrect notification delivered with fewer network hops.
Most of the garbage people have on their phones (DoorDash included) is better as a web page.
You always have the option to build your own phone. With easily available components and open source software it’s never been easier. And with cheap and flexible Chinese manufacturing, Kickstarter and Patreon it’s never been easier to manufacture your own phone design.
Otherwise, your demands don’t reflect the needs of the vast majority of Google and Apple customers. The world doesn’t revolve around your unique desires.
That sounds factually false to me.
Seems to me that I can't do it. Others have tried, how's that going?
For a start I don't think the components are easily available. Both software and hardware.
> "With easily available components and open source software"
For me the modern definition of a phone is "a device that can make voice calls, message people on their required messaging network, and give me access to my bank accounts".
I don't think I can actually do that with easily available components and open source software right now. It would be interesting to be proved wrong.
https://www.pine64.org/pinephone/
Steve Jobs couldn’t build a phone. But he could build a team that could build a phone. You don’t have the resources of Apple (he didn’t at the start either, just Woz), but you have Patreon and Kickstarter.
The main difference between you and Steve Jobs is he didn’t waste his day complaining in the internet about problems, he actually did something to offer solutions for them.
I cannot message people on their required messaging platforms, and I cannot access my bank account with it.
That means if I used a Pinephone I would need to carry two phones.
This is not someone "complaining" as though to do nothing. It is someone stating the current situation and what needs to be changed.
I would dearly like to change this, but your suggestion implies that it's realistic and easy, which is far from the current truth.
> Steve Jobs couldn’t build a phone. But he could build a team that could build a phone. You don’t have the resources of Apple (he didn’t at the start either).
For the same, simple definition of a modern phone, another gigantic company, Microsoft, tried and failed. It really isn't easy.
Why not add the missing features you need to Pinephone? It just requires writing software. I’m not going to blow smoke up your arse and tell you that you are going to find a large market, but you could make something compelling and unique to a large enough audience to fund through a Patreon or Kickstarter.
What I will tell you that while every entrepreneurial activity I’ve started has not succeeded, (in fact most have failed), I’ve learned valuable things from every single one. It is one of the greatest ways to learn new technologies, markets and skills.
No, it does not "just" require writing software.
- Potentially writing software and reverse engineering will allow me to message people on their required messaging platforms. Matrix is getting there. Maemo on Nokia N900 was excellent at this, but that was a different time; messaging has become more complicated since then.
But, though I'm a fine software engineer, it is not feasible to write software to provide all the features I defined as essential in a modern phone:
- No amount of writing software will allow me to access my bank account, which requires an Android or iOS app on an unjailbroken device to the best of my knowledge. No, a web browser does not work, it must be the app (crazy but true). Yes I could reverse engineer and crack the existing app to port it, but that would be foolish given the application.
As I said, I would love to be proven wrong on this.
Obviously I could switch banks, although that's not without its own difficulties and arguably if I have to switch banks, the new device doesn't meet my definition of a modern phone.
The problem is not a software-writing problem.
This is what I meant by Microsoft couldn't do it. Even though Windows phone was pretty good, it wasn't enough to be pretty good. It needed the essential apps that only 3rd parties could write, and not enough 3rd parties decided to write them. That was not in Microsofts locus of control, just as it isn't in mine.
Eventually things may change, if Pinephone and its relatives become more popular or if fashions change. But not at the moment. At the moment, if I got one I would need to carry two devices. (I had two Nokia N900s btw, I'm no stranger to open source phones.)
Is each app going to be killed when not in foreground ? Or are they all going to keep running ?
Is there going to be special API for background download manager, notification listening, music playing, etc. or is each app going to keep running in background and do its own stuff like on Desktop ?
For Google & Apple things are super easy : they do what they want.
But For Linux Phones, people from KDE, Gnome, Wayland, Purism, etc. will have to agree on services & APIs which might take lots of time
A bit like some browsers do to timers in non-foreground tabs.
But RAM might also be a problem if the phone keeps everything in background & isn't allowed to kill any app when it needs to
The phone is suspended when the power button is pressed. Reciving network traffic (ex responses to IDLE on an open IMAP connection) wakes it up and there’s a service that suspends it again fairly quickly if the power button hasn’t been pressed. Another service manages an RTC alarm so that programs expecting pushed data can reestablish sockets if they die (since that won’t necessarily wake the phone.) The only disadvantage to this scheme is that there are more keepalive messages sent (so you should limit the number of services expecting push messages to just a few.)
Mine runs a normal X11 DE (fluxbox) so the apps run in the background just like they do on my laptop. If something wakes the phone up too often just kill it.
I’m still working out the kinks but it seems to get decent battery life this way. No need for some special API.
How can you listen to network events while being suspended ? I thought that on linux suspend = all user processes stopped. Does it somehow wake up every nth second to check if there a new message from the network ?
My friend has one with an ATT sim, and calls+SMS works just fine on postmarketOS. The UI is really sluggish though.