997 karma · joined June 27, 2012
Secondly, the majority of websites that make up the Internet (and Intranets) are not serving 10k/second. They're serving a 100th of that.
Third, because your database can handle 10k queries, and your database can aggregate and manipulate data, and it's optimised to do this -- it might be a good idea to perform these functions at the DB-level, as opposed to the web application.
Finally, as stated previously, for most businesses, it's easier to buy more beefy servers, or get a more experienced PHP dev (that understands how to optimise code) than it is to find a Go programmer.
TechAltar on YouTube provides a very good explanation of why Samsung (and probably other phone manufacturers) are cautious of Android[1]. This is especially true when Google acts as a hardware phone manufacturer.
The summary of the argument (from memory) is that Google provides Android to hardware phone manufacturers, and it doesn't compete with them in the hardware space. Google owning Moto (and now HTC?), makes Google a direct competitor with hardware phone manufacturers -- which you could argue are its main customers in the phone market. Google can give Moto (HTC?) unfair advantages because it owns/controls Android; even if it's not done maliciously (e.g. having access to Android source before it becomes public).
I'd speculate that for many companies the GPLv3 is too strong in its copy-left stance, by disallowing Tivoization.
> It's infinitely more efficient to build and ship 1 VirtualBox OS Bundle, v.s. building and maintaining at least 3 different cross-compilation toolchains (one for each of: Windows, MacOSX, Linux). With limited developer resources, I'd choose the latter route too.
If I'd said "Linux-on-the-mobile", you could just as easily have said "Linux (kernel) is already on the mobile!".
If I'd said "GNU/Linux-on-the-mobile", you could have argued that Termux[1] adds GNU tools to your Android phone.
Half the things you'd expect on a "Linux" system (e.g. systemd, a Wayland compositor, X, DBUS, PulseAudio) are not associated with FSF/GNU at all.
Without nitpicking, when you say "Linux" most people think "Red Hat" (or Debian, Ubuntu, Arch, etc), not "Android".
But Jolla has shipped. Jolla 1, Intex Aquafish, Turing Phone, Inoi R7[1]. Limited runs of Jolla C, Tablet. Sony Xperia X should be coming soon. This is a startup of (these days) less than 50 people, cut them some slack, they're competing with giants.
> The Sailfish SDK relies on VirtualBox for the emulator and for native compilation
It's infinitely more efficient to build and ship 1 VirtualBox OS Bundle, v.s. building and maintaining at least 3 different cross-compilation toolchains (one for each of: Windows, MacOSX, Linux). With limited developer resources, I'd choose the latter route too.
I also prefer this setup to things like scratchbox2 and Android's (or iPhone's) emulator. It's portable between base OS's and it makes use of existing and well-known tools (VirtualBox).
> For years, Jolla withheld from or misled the public on the state of internal affairs
The Tablet fiasco could have been communicated better. At the same time, that's the risk you take with Kickstarter/IndieGoGo. It's a startup.
I don't agree with any of your other points, they're a startup, it's not all smooth sailing.
> Sailfish OS always lacked basic security features for applications (QT Quick embedded in plain text) or for the phone itself (encryption).
In regards to packaging, or app isolation, Jolla's wisely chosen to work on "mobile problems" and leave package management to the heavyweights (e.g. RH with Flatpak).
VPN support was added in the last release. The public git repos show ongoing work to filesystem encryption.
> Sailfish OS was never true open source, even less so than Android
Significant pieces of SailfishOS are proprietary. However, I think it's a more "inclusive" OS than Google's Android. Google develops Android. SailfishOS is GNU/Linux, it's developed by Red Hat (e.g. Linux kernel, systemd), Intel (Connman, ofono), Qualcomm (BlueZ), Qt (Qt Company), Mozilla (Firefox), GNU (CLI tools), KDE (Calligra), Collabora (gstreamer), etc.
I'm hopeful that one day SailfishOS will be fully open source.
> Very poor/non-existent developer relations
Disagree. They hold fortnightly meetings (#mer-meeting on Freenode). Most of the code is public (https://git.merproject.org/). There's a public Bugzilla (https://bugs.merproject.org/). There's discussion boards (https://together.jolla.com/). Community translation portal (http://translate.sailfishos.org/).
[1] https://together.jolla.com/question/136143/wiki-available-de...
[1] granted Mir may have kicked Wayland development into gear
Sony last year announced their intention to "mainline" their Xperia devices (their main phone brand)[1]. This could eventually mean running Android on the latest mainline kernel, and perhaps even GNU/Linux[2].
[1] https://developer.sonymobile.com/2016/02/17/work-on-the-main...
[2] Jolla (developers of SailfishOS, a real-Linux-on-mobile OS) announced in February that they are partnering with Sony to bring SailfishOS to the Xperia X (https://jolla.com/wp-content/uploads/2017/02/Sony_Jolla_pres...), which should hopefully be out this month. It's taken a long time, but real-Linux-on-the-mobile is getting closer.
gPodder (https://openrepos.net/content/thp/gpodder) is perhaps the most popular SailfishOS app written in Python and QML.
You can find a lot of FOSS apps (developed in C++, Python, etc.) on OpenRepos (https://openrepos.net/).
I can. I've developed and released an app for SailfishOS, and am currently in the process of developing a second one.
I do all my app development in emacs, and VirtualBox (running an i486 version of SailfishOS). My app's written in Python. The UI parts are written in QML (basically JS). I have a Makefile that does an assortment of things for me (setup dev env, package application, clean up stuff).
My second app is going to be written in Python and Go, with the UI once again in QML.
It's real Linux underneath, so you can write your application any way you like (as long as it runs on Linux/arm). However, it's easiest to write the UI in QML, as it handles all the input/widgets for you.
Jolla, the main developer of SailfishOS, is set to announce an official port of SailfishOS, to the Sony Xperia Z sometime this month (according to their blog)[2].
[1] https://wiki.merproject.org/wiki/Adaptations/libhybris_reboo... [2] https://jolla.com/wp-content/uploads/2017/02/Sony_Jolla_pres...
I definitely think Canonical bit off more than they could chew:
Mir
Not making use of existing Android drivers (I think they resolved this issue later on)
Building their own app deployment and isolation system (Snappy)
Building their own browser (although they did wisely reuse CEF, or was it WebEngine?)
Convergence
I really wanted Ubuntu Touch to succeed, I even backed the Ubuntu Edge when it was first announced.However, I think Jolla/SailfishOS did a number of things better:
They used Wayland.
They used existing Android drivers (using libhybris).
App installation/deployment is done using regular RPM. There's currently extremely minimal app isolation. This is a very hard problem. Let the Flatpak folk solve it, then adopt it.
They used Nokia's browser (based on Gecko) and office suite (based on Calligra). These were used on the N9, which had a larger install base than all existing Linux-on-the-mobile projects.
They used a well-tested ConnMan/ofono combo (these were used on the N9, see above).I use it as my daily phone, and I've developed apps for it, so feel free to ask me any questions.
SailfishOS should hopefully be available for the Sony Xperia X soon (within a month according to their blog posts).
[1] https://sailfishos.org/ [2] https://git.merproject.org/groups/mer-core/activity
SailfishOS is one of the few alternatives to Android and iOS.
[0] https://wiki.debian.org/ReproducibleBuilds
[1] https://tests.reproducible-builds.org/debian/reproducible.ht...
I don't understand half the decisions outlined in the article.
> I also have to imagine the Android update problem (a symptom of Linux’s modularity)
I seriously doubt the Linux kernel is anything but a minor contributor to Android's update problem. Handset developers make their money by selling physical phones. In two years, your average consumer probably doesn't care if their device is still receiving software updates. They'll jump onto a new phone plan, with a fresh, cool new mobile, with a better screen, newer software (features!), and a refreshed battery.
Maintaining existing software for customers costs handset manufacturers $$$, and disincentives consumers purchasing new phones (their cash cow). The money is probably better spent (from their POV) on new features, and a marketing budget.
I use SailfishOS because:
1) I prefer programming for GNU/Linux over Android or iOS
2) I prefer a decentralised development model (SailfishOS is made up of software by Red Hat, Intel, Mozilla, etc.)
3) I prefer the tight-knit, open, hacker community around SailfishOS/Maemo/Meego
You're right, I misinterpreted your question.
I cannot see how Jolla can overcome the difficulty of getting SailfishOS onto regular phones.
I personally don't think SailfishOS needs 10% market share. It needs 1% market share, with a dedicated following. Similar to how Linux is on the desktop.
I'm hopeful that SailfishOS becomes mature enough that you can install it onto existing phones relatively easily; similar to how people tried Linux on their desktop PCs in the 2000s.
I think that's the reason for the shift stated in the article.
P.S. Try having a look on eBay. That's where I bought my Intex Aquafish. Alternatively, if you're a tinkerer, you could try a community port (note, there's no AlienDalvik Android support): https://wiki.merproject.org/wiki/Adaptations/libhybris
My daily driver is a Jolla1. I also own the Intex Aquafish, which I'm keeping as a backup.
> I wonder how easy to install it on snapdragon 821 devices.
You can find information on ports here: https://wiki.merproject.org/wiki/Adaptations/libhybris
Yes, I use SailfishOS as my daily driver. I should note that I'm a Linux user, and developer, so I am technical.
SailfishOS satisfies all my technical requirements. Admittedly there are things that I would like (e.g. containerising/jailing functionality), but I understand that Jolla has limited manpower.
It meets all my communication requirements, and developing for it is awesome (I don't use that word lightly).
> Any reason to think it wouldn't end up like Firefox OS?
I don't know about FirefoxOS, but SailfishOS, thanks in a large part to Nokia before it, has a strong community from the Maemo and Meego days. e.g. https://talk.maemo.org/ and https://together.jolla.com ; also checkout the IRC channels on Freenode.
The community is very smart and dedicated. I think with a fully opensource SailfishOS, it could continue to maintain the OS without corporate sponsorship (i.e. Jolla). To give credit to Jolla, they really help accelerate development of GNU/Linux on the mobile.
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.
The paid ecosystem around SailfishOS is non-existent, having said that Jolla are looking to hire: http://jolla.com/jobs
>> 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.
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.