The difficult steps of Samsung in the software world

Important disclaimer: I worked for Samsung Research America as a full-time contractor from september 2013 to june 2014, and have been maintaining there no contacts but personal ones since then. The following lines represent only my personal opinions and do not contain any detail or information that were not published by the Press before if you except what people having no employment or contractual link with Samsung shared with me between september 2014 and today.

A Tizen-based phone, finally..

After a long, long, really long wait, Samsung finally releases one Tizen-based smartphone to the market. The Z1 is now available in India for a unsubsidized price of 5,700 rupees, so roughly 78€. The full specs of the beast are available for instance here. Here are my thoughts about that release...

First, the name of that smartphone is badly chosen. Very badly even. The successful Sony Xperia Z1 was released Q3 and Q4 2013 and googling Z1 usually drives to the Sony smartphone almost everywhere in the world. Of course, because of the release, references to the Samsung release are now on top of list but that won't last if the Samsung Z1's market does not rapidly increase. As a matter of fact, some of the first Indian articles about the Z1 are not that impressed.

The smartphone is almost similar to the ZTE Open C that runs Firefox OS if you except the fact the Z1 is dual-SIM. Even the price is the same. But the ZTE is available in many countries and received extremely positive reviews even here in France. Firefox OS is also available on a high-end device in Japan, crossing a segment boundary that Samsung does not seem ready to cross with Tizen.

It can run Android apps, through OpenMobile ACL (Applications Compatibility Layer) available in the new Tizen Store (no URL, reachable only from a Tizen device...). This is important and there are many positive and negative things to say about it. First, it shows that despite of injecting literally millions of dollars into software companies, Tizen has not attracted a big enough Apps catalog to live standalone. I even heard last month from a software company that ported its app to Tizen that they don't care about Tizen at all, they just caught Samsung's money and don't plan to update their Tizen app after that.

OpenMobile ACL is not an emulator. Apps should almost run at native Android speed. So that is quite positive from an end-user's perspective if you except one tiny detail: reaching and running Android Apps now rely on third-party software that is another problematic layer in the bigger Android fragmentation issue. OpenMobile ACL say on their web site they provide an AppMall for Android apps. I have no confirmation about this but my first thought is that it is necessary to make sure OpenMobile ACL users only download and try to run apps that are validated, i.e. apps that are known to work under ACL. AppMall is probably integrated into the Tizen Store. So what about the version of Android ACL allows? And what about ACL's updates? No word.

One word about ACL: a "Samsung spokesperson" denied Tizen on the Z1 can run an Android app without having the code re-written. Given what OpenMobile says on their own web site about ACL, I would be more than cautious about the authoritativeness of that clarification...

All in all, OpenMobile ACL's presence in the Tizen Store and the fact it's officially shown as a sales argument is not a good signal for Tizen itself. Will developers have any incentive to develop natively for Tizen? I don't think so. Will ACL's limited openness to the Android world be a problem? Almost certainly. Furthermore, the whole Tizen story was about building an alternative to Android and the Android app ecosystem; that strategy seems to have failed at least in Samsung execs' minds, and Tizen is, at least for the time being, unable to provide Samsung Electronics with such an alternative. I fail to see how that situation could improve in the near-term future without drastic strategic changes.

The Z1 is fueled by Tizen 2.3, released in December 2014, after a loooooong history you can read summarized here. And after so much time and many, many hesitations at Samsung that CNet reported about (launch announced, launch delayed, launch area restricted, launch suspended, again and again), it's amazing to watch the pace of Firefox OS, that went from inception in July 2011 to market availability in nearly 30 countries in December 2014 on phones, TVs, tablets, watches and even a TV stick. Firefox OS also has attracted many app developers, without subsidizing them, because it's a true open HTML5-based platform.

The browser inside the beast is clearly Blink-based, so that's another extremely strong tie to Google. A while ago, Samsung announced a collaboration with Mozilla to work on a new rendering engine, Mozilla Servo. Seen from github, that collaboration seems to have drastically fallen.

That said, let me tell you what I think of Tizen at Samsung.

What's wrong with Samsung's software

Samsung is a hardware leader. This is clear, recognized by all and quite stable. Yeah, well, its smartphone market share may suffer a bit these days but its chips and parts are still everywhere.

But it's nowhere in software (yeah, yeah, I know Samsung is a huge contributor to Linux) because the company and its processes seem mostly unadapted to software. The software stack of my connected Samsung TV sucks, the software bundled with my Samsung laptop all suck so deeply I deleted them, Kies for mobile devices (think iTunes) that is major visibility thing for Samsung is a endless subject of laugh and unfortunately cries for everyone I know, my Samsung S5 was so plagued by ugly UI, system bugs, painfully annoying and totally useless additions to Android that I finally moved back to Apple.. And Tizen is... well... stop the first person around the corner and ask "have you ever heard of Android? iOS? Windows? Tizen?". There are remarkable bits inside Tizen; Linux, EFL and more. It's the whole packaged thing that feels wrong.

To maintain a hardware leadership on devices, Samsung absolutely needs to become a software leader.  That won't be easy. First it needs to adapt to the software engineering culture and that implies opening a full Pandora's box because software engineering culture remains mostly a fact of the western world. To master software, Samsung then needs to move one of its centers of gravity outside of Korea, a true taboo as of today. This not hyper-specific to Samsung; most Korean companies suffer from the same issue and are unable to become global. It also means Samsung must induce a self-revolution to attract software engineers because the projects are exciting and will change the world, and not only because of the salaries, reported as being pretty high on Glassdoor. Samsung is known to be a rather vertical company, and that certainly fits well with hardware processes. It does not fit at all with software ones. All of that will require the implementation of drastic changes in the company. Again, Samsung is far from alone in that situation. Openness of mind is not a message, it's a core feature.

In that perspective, Android is at the same time an enabler and a blocker. Enabler because it clearly helped Samsung reach the #1 position on the mobile phone market but blocker because Android and its Play Store are in the hands of a partner that is also a competitor. Big names own an operating system and a browser stack. You can name four, in alphabetical order, and that's all: Apple, Google, Microsoft, Mozilla. Period. The others can reach a #1 position in sales but they will always remain strategically behind these ones because they don't own the full thing.

But Tizen seems to be managed by Samsung, at the highest level and not the technical one, by people who haven't understood at all how to insert it into the market. Or maybe they have and they were blocked by the corporate structure, which is clearly worse.

  1. you can't flash your personal phone, even a Samsung one, with Tizen. Holy cow, read that again: Tizen is heading towards version THREE ZERO and you still can't try it on any personal phone, even a Samsung one.
  2. so-called "reference phones" are so old/weak they cannot trigger developers' or manufacturers' interest. They're also rare and difficult to obtain.
  3. who cares about a Tizen emulator on a desktop computer when there are no phones in the wild...

So Samsung urgently needs to change that. It needs an extra team with one single goal: provide as soon as possible Samsung phone owners all around the world with flashable builds of Tizen for the longest possible device list (and of course easy way back to Android). That's where politics could enter the game, with the tenants of the Google partnership probably refusing collaboration on that ground. This is pure speculation of mine but I would not be surprised if it was later confirmed. The conclusion is simple: if Tizen is thought to be an answer to the decorrelation-from-Google question, then the decision to support and release has to come from the highest level in the company and be very strictly enforced. And if not, Tizen has to be ditched. In my opinion, Samsung must have its own OS stack to be a top player instead of being only a major player. It has to shift a large part of its growth from hardware to software and user experience.

Tizen itself needs, at the technical level, some major love. Its Web API is so different from the stable or proposed W3C API it's utterly shocking. Even the Alarm API, authored on both sides by a former Intel employee who spent a rather short while at Samsung and eventually left to Apple (ahem...), shows incompatible specs. The whole SDK needs a complete review, and revamp. Open Web Standards must be the only ground layer there.

At the UI level, Tizen is almost a clone of an old version of Android, and there is no fun using it. Tizen UI has nothing special, nothing exciting or different. Seen from a meter away, one is unable to say if a given phone is running Android or Tizen. So Samsung needs UI designers totally free to push the limits far beyond what Samsung is usually able to do in terms of UI. You may or may not like the tiles of Windows Phone, but they're a distinctive sign of Microsoft and the slowly but steadily increasing market share of Microsoft seems to indicate many people actually like them. Tizen has nothing like that for the time being.

The app layer is again a tough choice: native or web-based? C++/Java or HTML5? Still or sparkling? It's 2015 and developers should still love to code in, ahem, Java? Seriously? The largest pool of developers in the world is on the Web, every single web page author can be turned into a Web-based app author at very little cost, and the Tizen Z1 will try to gain success using a compatibility layer with Java-based apps? Wow. The future of apps is clearly HTML5-based even if some native apps will remain.

And then comes the browser issue... As I said above, a major corporation that does not own a browser stack is a major player, not a top one. And using Blink inside Tizen preserves a tie to Google that is completely counter-strategic and certainly harms the whole original Tizen plan. Samsung, like all other major smartphone manufacturers, needs a 64-bits multi-threaded rendering engine with parallel layout, to extract the highest performance - and the lowest battery drain - from multicore CPUs. It also needs its own rendering engine because the rendering engine is a core element of most Apps so innovating in that engine is a key factor of market success. Innovation should not be in the hands of a third-party, even a long-time partner and a fortiori not a competitor.

What Samsung needs to do to fix its software effort

My advices to Samsung about Tizen would be the following ones, even if I could say the same to any of their major Android-based competitors:

  1. yes, you need your own OS. It would be a very serious strategic mistake to ditch or even limit Tizen.
  2. no, OpenMobile ACL is not a killer feature, don't forget the downsides and the fact others OSes like Firefox OS can have it too.
  3. no, its current UI and UX are clearly not enough and you need a deep investment there.
  4. no, the way you try to increase Tizen's visibility and external contributions to the Tizen ecosystem does not feel right. Look at how Ubuntu Mobile or Firefox OS built a community and do the same.
  5. no, sorry, Tizen is far behind competitors in terms of modernity and openness. You must implement drastic changes there, and that goes down to the technical layer.
  6. yes, to do that, you must implement globalization. You must implement it anyway for a zillion good reasons. That will require cultural changes and a less vertical organization.
  7. yes, to do that, you also must release Tizen to existing devices, and you must even release nightly builds. Make "early adopters" become your best evangelists.
  8. no, you're not good enough, not open enough and not disruptive enough in the software world. To do something different, you must do it differently and with different people and habits. Accept it and apply it. The more you wait, the harder it will be.
  9. no, you just cannot wed yourselves eternally with Blink. You need your own rendering engine to fully unleash the hardware power of your devices and stimulate the rest of your software innovation. This remark is also valid for the browser on Android, although I'm not sure the new terms of the Android embedding agreement still allow the bundling of an extra browser...
  10. in that light, the Samsung Tizen Z1 could, perhaps, address the low-end segment of the market in some geographic areas but it's hardly the announcement of a new and successful OS ecosystem.

Update: mention of Android 2.3 for ACL in Z1 deleted after new input.