Is it practically impossible? Are we stuck with Android and iOS forever? This tiny selection of options worries me.
Is it practically impossible? Are we stuck with Android and iOS forever? This tiny selection of options worries me.
I don't care if Jolla or Ubuntu don't ever make it as "major" players in the mobile OS world.
I'd be perfectly happy with GNU/Linux mobile software that's as good as the Linux desktop.
I run Linux on my desktop (and laptop), and we're 1% of desktop users. I'd be satisfied with 1% mobile market share. We don't need a billion users, all I want is a hacker-friendly platform, with a good developer community around it (which I think both GNU/Linux on the desktop, and IMO SailfishOS [Jolla] provide).
Otherwise, there's the possibility that the Fairphone 2 will receive official SailfishOS support. Finally, there's a number of yet unreleased devices with official SailfishOS support[2]
[1] https://wiki.merproject.org/wiki/Adaptations/libhybris
[2] https://together.jolla.com/question/136143/wiki-available-de...
Here's a comment I wrote about the situation on reddit:
---
Yes, I'd prefer SailfishOS to be 100% FOSS, but Jolla is helping GNU/Linux establish its roots on the mobile.
How is it doing this?
* libhybris has opened up a whole new world for GNU/Linux, by allowing programs developed against glibc (i.e. GNU/Linux) to run on top of proprietary Android drivers (i.e. phones).
* Jolla puts a lot of development into lipstick, which makes it easier to develop UXs for phones/tablets/other form factors [This involved developing Wayland support]
* Jolla have opensourced their browser (Qt5 + Gecko engine) and their office suite (Nokia's Calligra Office work, with a QML interface)
* Jolla develops a sychronisation framework (buteo-sync) that can be used for syncing emails, Twitter, CalDav/CardDav, etc (I think Ubuntu Touch might adopt it in the future)
* Want to see how much manpower Jolla dedicates to developing FOSS? Look at the number of @jollamobile.com emails here: https://git.merproject.org/groups/mer-core/activity
* The SailfishOS community has been developing sfdroid. A FOSS application for running Android apps on your GNU/Linux mobile.
So while SailfishOS isn't 100% open source, it's doing a lot of good for the GNU/Linux community on the mobile.
* approx. the same as OnePlus One, which partially[3] supports sailfish as well
[1] - https://shop.fairphone.com/en/ [2] - https://wiki.merproject.org/wiki/Adaptations/libhybris/Insta... [3] - https://wiki.merproject.org/wiki/Adaptations/libhybris
I develop software for SailfishOS. It's like the Linux desktop. I SSH into my phone. zypper/pkcon install some dev tools (e.g. gcc, make, git). I initialise a Python virtualenv, pull down some libraries (e.g. Flask). I want to query SMS messages? I open an sqlite database on the filesystem. I can define services using systemd files. It really is "just Linux" underneath.
The paid ecosystem around SailfishOS is non-existent, having said that Jolla are looking to hire: http://jolla.com/jobs
BTW, it was actually in the Sailfish IRC dev chat that the whole "hire an assassin to take out Poettering" thing was uttered as a late night, off color, joke...
I work on Android daily on hardware that is as "hacker friendly" as it comes besides the driver issue, and it fights you tooth and nail.
In reality though, it doesn't really work on most of modern phones, and on the ones it works on, there is no WiFi support. And the latest commit on the Replicant git (excluding website changes) is 8 months ago. And it has just one guy committing.
So it didn't catch world's attention, apparently.
http://blog.replicant.us/2016/08/replicant-6-early-work-upst...
My phone (Galaxy S3) uses Replicant, and I'm quite excited for the upgrade, which will fix a number of rather unfortunate issues. I'm more than willing to make such sacrifices, but it'd be nice (for example) to be able to take videos of my children, which the current version cannot do.
It's not a shortcoming of Replicant---the fact that these issues exist at all demonstrate how much value is placed on user freedom.
Most unfortunate is that few users will be willing to make these sacrifices.
(It's possible I just don't understand the websites; looking at their GitLab and Redmine, I start to understand why is Github so popular; I cannot find anything there :(( )
It seems to have already happened[1].
[1] - https://wiki.merproject.org/wiki/Adaptations/libhybris/Insta...
Moreover, it's not Linux if you have to use a Java API to do anything useful.
And everything to do regarding being a fork on the Java ecosystem, and I side with Oracle.
It remains to be seen if Brillo or Fuchsia will have any relevance on the market, even when coming from Google.
Android is just the Linux kernel on the phone -- that's the issue I have with it. It comes with none of the other stuff that makes GNU/Linux great: philosophically/socially it's different, but on a technical level it's missing rest of the GNU/Linux stack (e.g. package management, and the plethora of developer tools -- including languages and libraries). The GNU/Linux stack is developed by a diverse ecosystem of contractors, big and small business, and non-for-profits (e.g. Red Hat, Intel, Mozilla, Samsung, Canonical, Document Foundation, Fujitsu, Google, etc). Android is largely controlled by one company.
https://www.youtube.com/watch?v=ig9GKAFzDxQ
https://www.youtube.com/channel/UCthvmTSlmIcMH93LIJNe-2w/sea...
http://penguindreams.org/blog/android-fragmentation/
The TL;DR, Android needs to be fixed so ASOP can be installed on any phone, just like Linux/Windows. The current state is bizarre for what's essentially now a general purpose operating system.
If anything, Android is a fork of Linux.
This behavior is the default because it prevents developers from needing to think about their UI changing dimensions (including runtime screen size/density changes!)... but it's certainly not required by the framework.
If you set android:configChanges="orientation" in your application manifest, your app won't be automatically restarted. However, you'll become responsible for swapping out any UI resources at that point.
(Keep in mind that Android lets you declare completely different UI layouts and drawables for different device configurations, so depending on how you wrote your app, you may need to re-inflate part of your UI.)
Or just implement onSaveInstanceState() and let the OS do everything for you.
No, the framework uses it to let you automatically handle those changes, the reason it's there is because early Android devices were weak (obviously) and the pipe dream was that we'd write apps that didn't mind randomly getting their processes killed as long as we used onSaveInstanceState... man-centuries later and it's clear the dream didn't pan out. I wonder how many billions of NPEs it was worth to be able to say Android does what iOS don't (multitasking) back then.
And that android:configChanges line misses out on many other triggers that cause you to need to handle onSaveInstanceState (like someone plugging in a keyboard). Even with every flag set for configChanges you still need to implement onSaveInstanceState for process death to work as intended.
The Android framework really is garbage. I might be biased though, I spent the day trying to trick it into not going to 7(!) FPS because our designers had the audacity to request we translate a video in an animation (and don't get me started on the insanity that is animations on Android [the X ways we've now gotten to do it which all have their own limitations]).
Really, all I care about is receiving SMS.
Also, does this thing even receive SMS? The page makes no mention of phone support.
To your question regarding SMS, there are already people working on it. A Vim plugin sounds especially delicious.
https://pyra-handheld.com/boards/threads/how-to-send-receive...
I'm preparing him for Minetest, though, if that makes you feel better!
"A 6000mAh battery means you have a companion that will be there for you, through use and at times other devices have given up long ago."
But if you look deeper you find on their wiki:
https://pyra-handheld.com/wiki/index.php?title=Battery
"Everyday work load: 8 hours (without any power management features, tested on prototype April 2016)"
8 hours? This is a toy. Why is their headline figure "6000mAh" instead of "8 hours"? Because they know it's shit.
I've been on projects where the dev builds would last 30 minutes on battery right up to days before initial factory run
Please tell us more about the LTE capabilities. Is it provided by a removable board? Which bands are supported??
Based on https://www.dragonbox.de/en/45-pyra it only supports B17 and AWS, which makes it mostly a AT&T compatible device
I wish it would support other bands, B25 for sprint (which has cheaper LTE plans)
Also, the wifi chipset is known. Can you run a hostapd?
Here's what I could find on the wiki.
https://www.pyra-handheld.com/wiki/index.php?title=Modem
and
The problem with that, from my perspective as a developer, is that I don't want to develop apps for low-end devices because it's an enormous pain in the ass. The lack of horsepower and features means you're pretty much required to compromise your vision, unless you really are developing something very simple, or with minimal finessing.
On top of this, and this was even more so 3 years ago, today's high end devices are 2 years' time's low-to-mid-range devices. If it takes you 6-12 months to develop your app (again, depends on complexity) on today's high end hardware you'll be targeting the mid-range when you release. Of course, there's a bit more nuance to this because single core performance isn't really increasing that much, but you get the point.
Short version: targeting high end devices means you're developing for the future and not incurring the compromises (and, in fact, support overhead) of dealing with low-end kit.
It's a real shame and it wasn't something that was immediately obvious to me at the time because I was very new to mobile development. Now of course I've experienced the same frustrations as every other mobile dev and realised that it's just not worth targeting anything but the top quartile. That is, unless it's a corporate app and you have a large number of lower end devices in the field that you don't plan on replacing before your app is deployed.
However I do think it's something that isn't yet ready for primetime, and it's going to be more a year or more before it is.
In the meantime they are trying to iron out bugs, improve features and get more developer attention for it. Recently they've added support for React Native: https://github.com/CanonicalLtd/react-native
HN readers might like to check out the Ubuntu Developer blog: https://developer.ubuntu.com/en/
Ok well I guess I'll stick to android then...
There should be a sticker "Don't blame me, I supported Firefox OS"
1. Purchase non-Apple, and non-Android devices (e.g. Jolla/SailfishOS, Ubuntu Touch devices)
2. Develop software for the alternative platforms -- that's what I do. It's a lot of fun programming on a GNU/Linux mobile. I write software in Python with 3rd party modules from pypi, and Qt/QML.
3. Spread the word. Tell other like-minded developers about how fun it is to work on your alternative platform of choice. Plus since there's only 10s of thousands of users, your software actual gets used (and people appreciate it!).
>> I develop software for SailfishOS. It's like the Linux desktop. I SSH into my phone. zypper/pkcon install some dev tools (e.g. gcc, make, git). I initialise a Python virtualenv, pull down some libraries (e.g. Flask). I want to query SMS messages? I open an sqlite database on the filesystem. I can define services using systemd files. It really is "just Linux" underneath.
In any case, thank you for your efforts. I've been waiting for UbuntuOS for all the features I didn't know Sailfish has already.
Even Google's direct competitors require Google to use an Android. Skype and Outlook are great examples of apps you'd be amazed to discover will not run at all without Play Services.
That is how hard the problem was to solve for Mozilla OS. They were essentially building a competing OS when they could have just been building a competing distribution.
Android (AOSP) + Firefox + Firefox Market + Firefox Mail could have been amazing.
Firefox OS should have competed against Chrome OS instead. Partner with some OEMs and you have a great alternative to Chromebooks.
Windows 10 Mobile has some of the advantages of iOS in terms of security updates and the Microsoft developer infrastructure -- whether that's a good thing depends on one's technical opinion of Visual Studio versus Xcode and Android Studio in terms of programming ergonomics and features and languages.
All that said, that doesn't mean that Windows Mobile will ever be successful or that a world where it's Apple, Google and Microsoft would be significantly better.
I'd still like to see a credible OSS alternative in the mix as well, and I wonder if Mozilla couldn't make that work if they dropped their low-end focus.
It has some parallels with Microsoft's strategy and could roll back into phones as just another device. And I think that getting a platform that works from embedded to server clusters has a good chance of how provisioning phones works ten years from now.
There's really nothing magical about phones. It's some compute cores, a bit of memory, some radios, a battery and a display. The only distinguishing feature of a phone is how the radio is tuned.
The best now is Jolla, which I don't think has failed at all yet (I have a Jolla C, I wrote about it shortly here: https://blog.separateconcerns.com/2016-09-16-thoughts-1.html).
https://github.com/webos-ports
Open WebOS became LG WebOS and is still around on their TVs...
For this reason, Android is a good middle-ground. It's well-sandboxed by default and if you need more power you can root it. Nothing is stopping anyone from releasing "free software" open source android apps published outside of the play store. As is, they would get more adoption than any app on the Ubuntu/Firefox/etc store.
As long as Android exists and is easily rootable, and preferably as long as the iOS jailbreak community keeps up with major versions, I'm happy with the state of "linux" on mobile.
Additionally, even if you trust Google today, they can turn evil tomorrow and then we'd have >75% of people who are using android without any options. Diversifying the available options in the market market is good for everyone except Google.
But this is the kind of thing that requires citizen action. Also, expecting the EU commission to be the only political consumer protection for multinational corporations is not ideal, there ought to be more actions on the American side as well.
Until then, I highly doubt that there will be any hope of breaking the duopoly, at least until Google's or Apple's core business model starts failing them, which is unlikely to occur within twenty years.
From an economical perspective, monopolies are great for companies and for the country's GDP, but they tend to cause lower standards of living, because of the loss of competition.
Why? In the 5 largest European markets, Android has 3/4th marketshare [1]. How can Apple be targeted for monopolistic behavior?
[1] http://venturebeat.com/2016/05/11/android-is-eating-apples-i...
Because they don't even allow other browser engines on their iOS platform, which is explicitly what was the subject of the "ballot box" ruling.
Monopolies are per-product class. Apple is responsible for both the hardware and the software. All it takes is having one of their products own half of its market.
… which, of course, could take a long time. It did happen for tablets circa 2011, I believe.
Android's market share in Europe is 75%. Google's search market share is over 90%. Any action against Apple would be completely counter productive when it comes to fighting monopolies.
Also, you need to take into account that the Web is a third mobile platform for all intents and purposes, and Windows still dominates the desktop.
So the case for any anti-trust action is extremely weak.
I think that the conditions that Google impose on handset manufacturers are something that probably should be investigated by the Commission. The travel search thing, not so much.
That makes no sense whatsoever. MS was hit because they were leveraging their OS monopoly into driving out and destroying competitors in other categories, such as browsers. Apple is so far from a monopolistic position in the EU they have a minority marketshare.
I never understood that people keep saying that. It's not because you make a lot of money that you will get under investigation for being a monopoly.
Microsoft was fined because it used it's marketshare to bulldoze into other markets. Apple marketshare is so small in comparison that it can do all the same stuff without disturbing anything.
Windows and OSX rule on the desktop/laptop with Linux a bit player.
Intel and AMD on x86 with Via, IBM, and Cyrix and the rest either no longer being able to compete.
ATI and Nvidia on the gaming GPU end, and even then ATI had to be swallowed up by AMD to remain competitive. Intel still a bit player for budget graphics and with no product that remotely compares with the GPU heft of even a many years old Nvidia card.
We'll probably see iOS and Android be the default mobile OS's for a while with MS's Windows as a third player. Surface tablets and Windows phones still sell. If anything, the Surface Pro might be the best mobile Windows device out there and one of the nicer mobile devices for sale anywhere.
That said, mobile is probably resistant to a foss solution as people expect all sorts of cloud and managed experiences. Maps, siri/googlenow, cloud storage of photos, ease of buying, sharing, casting, media, etc. Most people won't be happy with an unbuntu phone that doesn't have all these features and probably couldn't care less about the privacy argument here. Do default installs of Sailfish, Tizen, and Jolla have any of this? Joe Consumer won't buy these things if they can't compete feature-wise.
Also they seem to at least cater to those not caring about apps, not able to pay for iPhone and dislike for Android.
Overall Market share in Europe around 5-10% was around a few months ago, but they have money to spare, and might keep selling Windows Mobile devices just not to loose face.
You cannot sell mobile OS based on FOSS religion, normal people want the apps everyone has and convenience, while most developers care about tooling.
So whatever alternative comes, must have a very good selling point to consumers and developers currently targeting the established platforms.
It's going to take a plateau of performance coupled with a commoditization of mobile hardware for open source to move in.
Without a viable business model and with the rapid rate of change it's impossible for open source to even try and play in this arena.
https://www.bloomberg.com/news/articles/2016-01-21/google-s-... $22 billion profit.
iOS is a bit more complicated to value, but they've made more than $10 billion just in app store commissions (even not counting increased sales of hardware due to iOS). So if you consider the cost of iOS development as weighed against their hardware sales, and book the software as profit, you'd get more than $10 billion. The real profit numbers are probably higher.
Anyway, the point is that there's no reasonable way to assert that either one of them isn't profitable.
Samsung is pulling in about $4B profit per quarter from their smartphones. "Marginal"? In what universe is $16B per year "marginal"? Certainly not this universe.
Just as a point of reference, Samsung's smartphone profits are greater than Walmart's profits. It's greater than the overwhelming bulk of world corporations.
It's Galaxy, not universe!
At the scale of investment required to run a mobile business, Android is generally a bad thing, it's commodifying them in the way that Intel did to the desktop PC market.
Google and Apple both rely on ecosystems to attract and retain users, and Samsung doesn't have a competitive (or compelling) ecosystem. <end north american centric summary of problem>
I don't know if Samsung has the same problem in other markets, but I know that Firefox Marketplace does/did.
I've been living this for the last several years both with Android and ARM devel/hobbyist boards and it isn't much fun. It would be nice these quasi-business entities (i.e. Mozilla, Canonical) would forget about their brand-exclusive strategies and try to rally around an open ARM-based platform (you know, with support for things like, I don't know, GPUs and such) they can all run on. THAT I could get excited about and we could all win. Short of that, I don't get what I want and they continue to lose relevance in the mobile era. Granted, I'm part of the 1% that runs Linux. But here's a newsflash: right now we're the only ones who care about Canonical, Mozilla, etc. and ~1% beats 0%.
I don't know of any situation where the ARM ecosystem works like that, the companies compete for differentiation, they have a very limited interest in standardisation. Maybe I'm missing what you're referring to. It also wouldn't get you a phone, it would get you a base board but all the other bits like radios compete on the different manufacturers platforms.
I'm not suggesting that this be done purely from the standpoint of altruism: for both the IP providers and the various foundations, this would provide them with a possible path to participate in mobile that is closed to them currently so it seems like it's in their interest from an existential standpoint. That said, maybe it really is impossible to motivate any of the players necessary to go down this path. In which case it seems worthwhile for the open source crowd to go all-in on something like RISC-V/OpenGPU and jettison the proprietary IP as completely as possible, as soon as possible.
For the same reason DOS/Windows reigned on the desktop for decades, with Mac having a few percents and Linux repeatedly failing to grab any significant market share.
There was a brief flurry of activity around it, including getting it run on older Nexus devices, then it petered out.
I submit that a big part of the problem is fragmentation of effort. There was no reason for Ubuntu, Mozilla, and WebOS all to be aiming at the same target at the same time in very similar ways but by different people.
Open WebOS is a different beast (much like how Mozilla wasn't Netscape Navigator), based on the open sourced components of WebOS.
I think it's pretty simple: people want to use apps on their phones, and no phone OS is viable without a competitive library of apps.
Most major apps are developed for both iOS and Android, and convincing app developers to develop for a third platform is going to be a tough sell, unless that platform is very attractive to users. However, to be attractive to users, it will have to have a lot of apps already...
I suspect that the only way to gain marketshare for a new mobile OS is to ship it with an Android or iOS compatibility layer, which would be pretty difficult to do well. The developers would have to re-implement the entire iOS or Android API, and keep up with all of the changes. If they did that, there would be no incentive for developers to target the native APIs of the OS, because they could just target Android or iOS like they do already. So, the compatibility layer could never be deprecated.
So yeah, I think we're stuck.
People aren't interested in apps. They're interested in capabilities.
The apps markets are good for ... delivering a completely dizzying (that is: intentionally discombobulating and confusing) array of crappy software that sometimes works, always intrudes on your privacy and steals your personal information, and frequently goes titsup.com for no particular reason and with limited notice.
I don't want apps.
I want decent browsing capabilities with document management.
I want explicit control over networking.
I want a messaging capability. SMS, IRC, eMail, whatever -- there's no reason these need to be split out.
I want a multimedia player.
A basic set of utilities. The same ones as were on the Xerox Alto 48 years ago: A calendar, calculator, notepad type editor. Basic spreadsheet wouldn't hurt.
These days something with maps and an encyclopedia would be handy. Stills/video camera and gallery.
And since I'm not the 99.98%, I'd like a goddamned full-fledged shell running Linux or BSD.
But StuffMyCrapWebsiteIntoThisApp.com? Not so much.
A great Windows Phone 10 launch would not have put them in the top two, but it may have solidified them as a third platform.
Firefox OS promised to make app creation easier through web technologies, but "not enough apps" isn't the problem with Android or iOS, quite the contrary, so for an end user, that's pretty irrelevant.
Offer something people want that the others don't. It's not enough to just not be iOS or not Android, that only appeals to the small segment of people that HN appeals to.
The selling point for Ubuntu, Mozilla and Microsoft's phone was just 'it's not them.' They didn't provide any value. Microsoft had apparently forgotten what they had to do to make the xBox viable against Sony and Nintendo when it first launched, because they didn't just launch it with 'Hey, at least we're not Sony, the developers will show up eventually.'
At any rate, it seems like two major brands is all the tech world can handle.
Hey, at least it isn't a monopoly and one of the OSes is freeish. Freedom wise, hardware is behind, but the software is ahead (of the desktop market).
So, something like Cyanogenmod but with more drastic changes. It's Linux under the hood after all. It's already compatible with GNU coreutils and a whole bunch of other free software. No need to start again from zero.
I could also say the same about people upset with Facebook-2009-2010 people!
This has to be one of the best ways into handset market for MS/Ubuntu or others.
The issue is where the money is coming from.
Also, to move on an entrenched market you need to do a lot of things upfront. Android in, let's say, 2011 was much worse than iOS, today the gap has closed.
I think what Microsoft wasted on Nokia's phone business was something in the magnitude of >$8 billion, so money was not really the problem at least in their case.