← Back to team overview

ubuntu-phone team mailing list archive

Re: Ubuntu Phone vs. Sailfish OS (for history fanboys), and Windows phone


On Wed, Dec 16, 2015 at 11:23 PM, Peter Bittner <peter.bittner@xxxxxxx>

> I just found an old albeit pretty interesting comparison with demo
> videos from 2013 about Ubuntu Phone (demoed by Mark Shuttleworth) and
> Sailfish OS.
> http://www.jollausers.com/2013/07/why-sailfish-is-better-as-a-modern-os-here-is-a-comparison/
> Now that many of us have used Ubuntu Touch for almost a year on the
> first dedicated Ubuntu phones it's interesting to look back at what
> was originally planned, promised, envisioned.
> Interesting are a couple of facts:
> - Ubuntu Touch had a few niceties which went away (long name of the
> app selected on the launcher, among others)
> - Indicator controls (i.e. the elements shown when you pull down an
> indicator from top) are much smaller today than two years ago
> - The apps demoed by Mark seem to be much more consistent compared to
> what we see on our devices today (e.g. every single demoed screen,
> apart from the camera app obviously, had a header in large letters,
> including indicator pages!)
> - The large header letters have been replaced by a smaller font (not
> sure why this makes me feel like Ubuntu Touch is moving closer to
> Windows phone)
> Most interesting comparison facts with Sailfish OS:
> - The gestures seem to be more well-designed in Sailfish (e.g.
> left-handers have a harder time to access the launcher on Ubuntu
> Touch, true in fact!)

- Sailfish has no lack of apps, because you seem to be able to install
> and use any Android app there is
> - Ubuntu Touch needs more horse-power, the UI lags sometimes (true in
> fact, not really visible on the demo video but on the Aquaris E5 when,
> e.g., your device connects to a new network CPU goes up to 95% and you
> must lean back and wait)
That bug in particular is
https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1480877 and
it has been released today as part of the OTA8.5 :)

About lag in general, there are many many things that can still be improved
in Ubuntu Touch, both on Mir and on Ubuntu Components side. It is just a
matter of actually implementing the performance improvements, and there are
people already working on that :)

I am contributing to the conversion of some of the Ubuntu Components from
QML to the more performant C++.
It is a work in progress, but the progress is steady, I can give you more
details about that if you wish :)

Most of the lag a user sees while using is phone is while he/she flicks
through list views.
The list view provided by Qt (our UI framework) creates new list items on
the fly when the user scrolls, and if the creation of those list items
takes too long, the UI "lags" behind and stutters because the CPU spends so
much time creating the new list items that it doesn't have enough left to
draw them on screen quickly enough.
For that reason, it is vital for app developers to use lightweight
components in their list items (a.k.a ListView delegates).

And that's where we started the optimization journey from.

- Ubuntu Components 1.2 introduced the ListItem component, a lightweight
C++ component that basically replaces the community-provided
ListItemWithActions QML component. It handles swiping actions, but has
empty content.

- Ubuntu Components 1.3 (more specifically, OTA7) introduced the
ListItemLayout C++ component, that provides the developer with a tool to
create performant list item contents to put inside the 1.2 ListItem. All
apps using the old ListItems module (note, I'm not referring to the
ListItem described above, but the old ListItems.Empty, ListItems.Standard,
ListItems.Value ecc) should transition to the ListItem+ListItemLayout combo
to enjoy more consistent UI, better performance and better code
readability. </spam> :D

Using both ListItem+ListItemLayout would bring a big improvement in the
list scrolling throughout the whole system.
But, that takes some patience :)
As of OTA8 none of the apps (as far as I know) are using ListItemLayout to
represent the content of their list items. Some of them are using
ListItem...others are still using the old ListItems module, which is less

I'm sure OTA9, OTA10, OTA11 will make the improvements in list scrolling
more visible, as more apps transition to the new optimized components :)

HTH :)

> Interesting explanation also here, in a video confronting the pros and
> cons of Windows phone:
> https://www.youtube.com/watch?v=C-wdWzspIBY
> Some of the disadvantages of Windows phone just make me think of
> Ubuntu Touch. It's terrible.
> Let's see if we can draw some conclusions out of this.
> I feel it's time to sit down for a review and evaluate which decisions
> went down the wrong lane, before it's too late to throw in the reverse
> gear. Is it really all just a matter of maturity, a matter of time
> that, e.g., the lagging disappears? Is it good or bad that Ubuntu
> Touch is partly starting to look like its competitors? Which were the
> compromises (e.g. in the look and feel) that led to what we have today
> (as opposed to what was envisioned two years ago)?
> Peter
> P.S.: Just updated to OTA 8.5, and it's as if Ubuntu Touch wanted to
> stop me from pressing the Send button: Launching apps feels much
> faster all of a sudden!  :-)  But seriously, the headers still have
> the small font, so I send this email to the list.  ;-)
> --
> Mailing list: https://launchpad.net/~ubuntu-phone
> Post to     : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~ubuntu-phone
> More help   : https://help.launchpad.net/ListHelp