Main menu

Post navigation

What’s the difference between platform and apps?

I’ve been observing the expansion of this idea of “Ubuntu App Development”. David Planella just wrote about what the Canonical Community team is doing to build that area. Recently, Daniel Holbach asked if the Ubuntu Packaging Guide should be renamed to the Ubuntu Platform Development Guide (or something similar) since it deals more with working with packages within Ubuntu instead of on top of it.

So here’s my issues and questions. How do we distinguish between apps that we have in the Ubuntu archives (for which the current Packaging Guide would apply) from the apps that people ship on top of Ubuntu (delivered in PPAs, Canonical Partner repos, etc. for which developer.ubuntu.com is maybe the primary entry point)?

I’m personal uncomfortable with the “Platform” language being applied to things like Firefox or Inkscape or the thousands of other desktop and end-user applications. “Platform” to me means libraries and kernels and things like X.org, awk and curl.

My feeling is Ubuntu is becoming a mix of Debian, where we try to put the entire FLOSS universe in our software repositories, and iOS where we have a fairly clear distinction between Platform and Apps. It’s a bit confusing

Since about 8.04, I have been beating a drum over Ubuntu needing to slim down the number of apps and define itself clearly as a platform for development, with the core technologies and their APIs documented clearly, something Canonical has *started* to do with developer.ubuntu.com. Quickly, etc. seemed to be a move in the right direction (still needed a blessed IDE), but then Unity 3D and 2D didn’t end up using the same toolkit. Oops!

There’s still too much in the Universe and Multiverse to make sure that there is a bug-limited release. Most of that stuff should be jettisoned to PPAs.

You’re raising an interesting point, and one that Daniel and had I started discussing when we realized the line between developing Ubuntu itself (Ubuntu developers) and developing applications (Ubuntu app developers) was becoming a bit blurry.

Some of the actions we took to make it clearer were:

* Separate the communication and social media channels for Ubuntu Development and Ubuntu App Development
* Started a discussion to change the name of the Packaging Guide
* Added an introductory paragraph on the Platform section of the Ubuntu App Developer site to explain what the Ubuntu Platform is and how to contribute to developing it (but agreed that we need a more clearer message)
* Started making more concious use of the Platform development and App development terms

Apart from the conversations Daniel and I had and the Packaging Guide thread on ubuntu-devel, we also mentioned it in our weekly Community meeting Tuesdays on #ubuntu-community-team. If you’ve got any ideas on how we can better address developers who make Ubuntu and developers who make third party apps for Ubuntu, we’d really appreciate your suggestions!

I recognise the need to clarify the terms and what’s specifically within each one. The underlying point is that there are things that are within Ubuntu which are looked after by maintainers – main, universe etc. Then there are applications which come into Ubuntu through the developer, this is developer.ubuntu.com. The driver here is that both developers and users want the latest and greatest apps.