Android is the most popular mobile operating system and is continuing to grow its market share. IDC expects that Android will have 85.5% of the market by 2022, demonstrating that app development on Android will continue to be an in-demand skill. For developers looking to build Android apps, Ubuntu is the ideal platform in conjunction with
Sometimes, relationships just don’t work out. At first, it seemed that Xibo and Linux were made for each other. Xibo had a popular open source digital signage and player system, while Linux brought a community of enthusiastic users. Dan Garner of Xibo remembers why they broke up in 2015: “Releasing our player on Linux was
We’re excited to announce the release of MicroK8s 1.16 beta! MicroK8s is a lightweight and reliable Kubernetes cluster delivered as a single snap package – it can be installed on any Linux distribution which supports snaps or Windows and Mac using Multipass. MicroK8s is small and simple to install and is a great way to
Canonical announces full enterprise support for Kubernetes 1.16, starting with the beta release, with support covering the following installation mechanisms – kubeadm, Charmed Kubernetes, and MicroK8s. The beta release of Kubernetes offers users an opportunity to test some of the upcoming features and to validate containerised workloads
Kubeflow for Poets – This article introduces the core concepts necessary to understand all of the moving pieces in a Kubeflow based machine learning Pipeline. It includes a brief introduction to microservices, Docker, Kubeflow, Kubernetes, virtualisation, Google cloud and more. Read this article for step-by-step low level interaction with
We are excited to announce new Cilium and Helm add-ons, coming to MicroK8s! These add-ons add even more power to your Kubernetes environment built on MicroK8s. The Cilium CNI plugin brings enhanced networking features, including Kubernetes NetworkPolicy support, to MicroK8s. You’ll also get direct CLI access to Cilium within MicroK8s usin
Overall, most Linux distributions offer sane, reasonable defaults that balance security and functionality quite well. However, most of the security mechanisms are transparent, running in the background, and you still might require some additional, practical software to bolster your security array. Back in July, we talked about handy produ
When users of your application range from high school students to expert data scientists, it’s often wise to avoid any assumptions about their system configurations. The Jupyter Notebook is popular with a diverse user base, enabling the creation and sharing of documents containing live code, visualisations, and narrative text. The app use
Newsletter signup
A well configured linter can catch common errors before code is even run or compiled. ROS 2 makes it easy to add linters of your choice and make them part of your package’s testing pipeline. We’ll step through the process, from start to finish, of adding a linter to ament so it can be used
How AI Is Changing The Game For Recruiting – In this use case spotlight, we review how machine learning toolkits like Kubeflow and AI are changing the recruiting industry. Talent acquisition is expensive, and getting it wrong is more expensive. AI can helping improve talent acquisition efficiency and effectiveness. From finding the right
This iteration was the Web & design team’s first iteration of the second half of our roadmap cycle, after returning from the mid-cycle roadmap sprint in Toronto 2 weeks ago. Priorities have moved around a bit since before the cycle, and we made a good start on the new priorities for the next 3 months.
Replicating Particle Collisions at CERN with Kubeflow – this post is interesting for a number of reasons. First, it shows how Kubeflow delivers on the promise of portability and why that matters to CERN. Second, it reiterates that using Kubeflow adds negligible performance overhead as compared to other methods for training. Finally, the p
One of the most common complaints from developers moving into large Python codebases is the difficulty in figuring out type information, and the ease by which type mismatch errors can appear at runtime. Python 3.5 added support for a type annotation system, described in PEP 484. Python 3.6+ expands this with individual variable annotation
Depending on the audience, the discussion of software packaging elicits very different responses. Users generally don’t care how software is packaged, so long as it works. Developers typically want software packaging as a task to not burden them and just magically happen. Snaps aren’t magic, but aim to achieve both ease of maintenance and
Remember the one-size-fits-all approach to cloud computing? That was five years ago. Today, multi-cloud architectures that use two, three, or more providers, across a mix of public and private platforms, are quickly becoming the preferred strategy at most companies. Despite the momentum, pockets of hesitation remain. Some sceptics are und
Canonical is proud to announce the availability of OpenStack Charms 19.07. This new release introduces a range of exciting features and several improvements which enhance Charmed OpenStack across various areas. Let’s talk about a few notable ones. Percona cluster cold start The percona-cluster charm now contains a new logic and actions to
Ubuntu tech blog
Deep dives for developers
Visit the Ubuntu Tech Blog for deep dives into product features, step-by-step tutorials, and the latest updates from Canonical's engineering teams.