Jolla's Vesa-Matti Hartikainen came to Akademy 2013 to talk about—and show
off—the new Jolla phone with Sailfish
OS. Like a number of related projects, Jolla (pronounced as
"Yo-la") was created in the wake of Nokia's move away from MeeGo. While
Sailfish OS is based on Linux and many other open source technologies, the
"user experience" (UX) layer is (currently) closed, but it's clear that
put a lot of thought into how to interact with a mobile phone. Whether
that translates to success in the marketplace remains to be seen, but
Hartikainen's demo was impressive.
Hartikainen began by noting that he is an engineer at Jolla, so he does "code—real
stuff". Some of the software he will be showing was written by him, and much of
the rest was written by his friends and colleagues. His talk was about
"Sailfish OS, open source, and Qt" which covers "who we are", "what we do",
and "how we do it", he said.
He switched to a bit of history, going back to the beginning of 2011, when
"Nokia was a coward" that "didn't believe in themselves", and killed its
own platforms. That was when Nokia switched to Windows Mobile for its
phones. Several MeeGo people who were working on the N9 phone (which ran a MeeGo
derivative of sorts) recognized that the MeeGo platform was a good one and
was open source. They
wanted to continue working with MeeGo, so they started the process of
creating a company to do so. That company is Jolla.
Starting the company
In order to start a company, you need people, money, and technology, Hartikainen
said. Initially it looked like MeeGo would be the technology. Lots of
people were getting laid off from Nokia and other MeeGo contractors, which
would help fill the people requirement. Money took a bit longer. After a
year or so, though, there was enough money and confidence to announce the
company as a continuation of the legacies of the N9 and MeeGo.
At roughly the same time, Nokia had "another strategy change" and
decided to give up on Qt. It sold Qt to Digia and many of the Nokia Qt
employees also made the switch, but some did not, including teams
working on QML and Qt Mobility. So Jolla recruited some of those people
and was able to build a Qt team that way, he said.
Somewhere in all of that, Intel also gave up on MeeGo and moved on to Tizen
(which was not Qt-based), which resulted in the creation of Mer—a stripped-down version of
MeeGo. Another project is Nemo mobile, which
continues the MeeGo handset path. Nemo mobile provides packages for
applications like a dialer and for SMS messaging. Jolla uses Mer for the core
of its OS and Nemo mobile for some of the "middleware" applications.
But Jolla also needed something unique to offer, Hartikainen said. It was
determined that the UX would be the differentiator for the phone. Luckily,
there were a lot of talented designers available as well, due to the MeeGo
fallout. The folks at Jolla had already knew many of those
designers, knew "they were easy to work with", and those designers could
create "innovative ideas" that the other companies were too afraid to try.
In June there was a public launch of the resulting "Jolla phone". It is a
"real thing", he said, and held one up to show.
Currently, the team is working on the "final stretch": last minute bugs,
optimizations, and small features, to get it ready to go into stores.
At that point, he asked a colleague to run a video camera while he
operated the phone. That allowed the audience to see the phone and the
UX as exercised by Hartikainen. He started with the "basic lockscreen", which has
notifications that can be accessed by pulling right, a "pulley menu" that is
accessed by pulling down, or the main screen which is reached by pulling
up to "open the phone". Unlike Android's notifications, he said, you don't
need to pull all
the way from the
top, pulling (i.e. a one-finger swipe-like gesture) from anywhere on the
screen in the
proper direction will activate the feature.
The interface seems to be more gesture oriented than other phones. As he
was showing different features, there were numerous different gestures
used, which may require users to learn more before they can get the most
out of the phone. For example, there is no back button, so swiping from
the left goes back. In addition, status items like time, power, network
status, and so on, are on their own screen, rather than lined up across the
top as in most phones. That screen can be "peeked" at by pushing partly
across the screen from the right. Once the finger is lifted, the display
returns to wherever it was.
Leaving the status off each screen is part of the design philosophy of
using the screen real estate for user or app content, rather than
controls. The "pulley menu" which can be pulled down from the top is another
example. It is application specific, with haptic and sound feedback for
each menu item that
makes it "almost" able to be used without looking, Hartikainen said. When it is
not needed, though, it takes up no screen real estate for a button or
control. One can also interact with running apps from the multitasking
screen (which has thumbnails of each running app), rather than switching to
them (by tapping), you can use gestures on the thumbnail to perform certain
actions (e.g. switch songs).
There are various ways to personalize the device, as well. The "ambience"
feature allows you to choose a photo from the gallery as a background, and
the phone will switch its interface colors to match the "mood" of the
photo. Ambience will also be tied in with the idea of the "other half",
which is an intelligent back cover for the phone (aka "active covers").
covers will change the ambience of the phone, but it may also do more than
that. Hartikainen described a "party profile" that might be associated with a red
cover; when it is attached, perhaps work email and certain incoming phone
calls would be disabled along with
other changes that correspond to a party mood.
The covers have both data and power connections, so they could serve other
purposes as well. Additional battery power or a hardware keyboard are two
that were mentioned. The protocols and pinout information will be
available, so the hope is that other companies come up with their own innovative
Hartikainen showed a few more features of the interface, including the event feed,
which is accessed by pulling up. It is similar to that of the N9, he said,
can "+1", "Like", or comment on an event directly in the feed, there is no need
to open an app or web site. The app store is meant to be a "social store",
he said, with true recommendations from friends. But that is "hard to get
The device he showed is a prototype, the final device will be smaller, but
even now it is "so nice" to use, he said. That ended the demo, and he
moved into a
rundown of the specifications of the device: 4.5" display, dual-core
processor, "nice camera", user-replaceable battery, and so on. There is a
runtime for Android apps, so any that are absolutely required and only
available for that platform can still be run on the phone. Those apps will
provide an "Android experience", rather than the normal Jolla experience
(no ambience, pulley menu, or interaction with an active cover, for example).
To sum up the user interface, Hartikainen said, it is meant to be beautiful and
personal. It maximizes the screen space for user content and uses gestures
rather than tapping for control. It provides a modern
look, he said, but is "not boring".
Before his talk, everyone told him that he "needed technical details" in
it, he said, so he
turned to the architecture of Sailfish OS. The user interface layer is
Jolla-specific and is currently closed, but it will not remain that way
forever. Parts of the Sailfish Silica QML components were released
under a BSD license with the alpha SDK; the native (C++) code parts will
follow "soon". Silica is what is used internally as well;
there is "no secret magic", as everything uses the Silica API. The Jolla
team in Australia has been working on QML performance and have gotten it to
work "extremely well", even on older hardware.
On the "middleware side", there is Nemo, he said. It provides services
like tracker for indexing multimedia, mallit for virtual keyboards,
lipstick for building home screens, grillo for multimedia, Gecko for the
web, and so on. Under that is Mer, which provides Gstreamer, ConnMan,
Qt 5, Wayland, PulseAudio, and systemd "for startup". It is, he said,
a very normal Linux distribution, just with a "tight set of packages" so
that a small company like Jolla can maintain it.
The Sailfish SDK is based on Qt Creator and virtual machines: one as a
and the other as an emulator. The emulator runs a full x86 version of Sailfish
OS. Because of that, much of the development for the phone can be done
just using the SDK, he said.
Jolla is not just "sitting alone at home coding", but instead does a lot of
collaboration with other projects. The main projects Jolla works with are
Qt, Mer, and Nemo. Jolla started with Qt 4.8 and added some
hardware-specific code and optimizations; eventually backporting some
Qt 5 code to 4.8. Since then, it has moved on to Qt 5 and the
main focus right now is to "get Qt 5 fast as hell" on Wayland and ARM.
"We are a small company", Hartikainen said, so right now the intent is to ship
products before it does more ambitious things, such as helping out more on
Qt upstream. Jolla is the main contributor to the Mer project; "we love
it". It is also a "significant contributor" to Nemo, mostly in the
middleware layer (as Jolla does not use the Nemo UX)
Jolla has two offices, in Tampere and Helsinki,
Finland, and a "bunch of people
working from home" in various locations around the world.
There is "light
process" in the company and it takes an iterative approach to solving
problems, especially in the user interface design. Most importantly, though,
it is not afraid of change, he said. Everything is set up to try new
things quickly. It is an "open source way of working", he said, without
that and open source software itself, "we wouldn't be here". Pull
requests, patch reviews, IRC, and other distributed working environment
techniques have made it all work for Jolla.
[Thanks to KDE e.V. for travel assistance to Bilbao for Akademy.]
to post comments)