Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close
Thank you for contacting us. A member of our team will be in touch shortly. Close
Sometimes, you may wonder, what’s on the other side of the curtain? If you’re a developer contemplating snaps, you surely want to know the range of tools and options available in the developer account dashboard in the Snap Store. But some of the features may not necessarily be immediately visible or relevant until you’ve uploaded ...
We have been transitioning the web interface for MAAS from AngularJS to React. One of the reasons for this is to make the interface faster. The main page with performance issues is the list of machines. This list needs to be fast at displaying a few hundred machines at a bare minimum. So what happens ...
There are many ways one can go about building snaps. You can do it on your local system, by manually running commands in a terminal window. If you have a developer account in the Snap Store, you can use the integrated build functionality to create snaps. You can also use Launchpad, Electron Builder or a ...
In the past, we have discussed various ways on how to debug and troubleshoot potential issues during snap development. The ability to quickly iterate, resolve build process hurdles and publish the application in a timely manner is essential to a robust, positive development experience. Today, we would like to outline a few basic tips and ...
“No plan survives contact with the enemy.” This is a quote famously attributed to the Prussian field marshal Helmuth von Moltke. It is also quite applicable to software development: “No code survives contact with the user.” In mission-critical environments, staggered deployments of software are a crucial part of controlled updates, design ...
We constantly strive to empower developers. Part of that aim extends to making development easier, for example improving build tools and documentation. As an element of this continued effort, we would like to introduce the new gnome-3-34 snapcraft extension! What is the GNOME snapcraft extension? The gnome-3-34 snapcraft extension is a co ...
Whenever you write any code that is to be consumed by another, whether it be a library or some UI element, that consumer expects it to work in a certain way every time they interact with it. All good developers would agree and that’s why we also write tests that either break our code up ...
Every craft needs craftsmen, every craftsman needs tools. If you make a living developing code, you want a friendly ecosystem to help you achieve best results from your work. Good development software will allow you to achieve higher productivity and precision, leading to a product that is more effective and with fewer bugs. Finding the ...
Canonical is announcing today it will be a featured sponsor of WSLConf, the first conference dedicated to the Windows Subsystem for Linux (WSL) platform. WSLConf is scheduled for March 10th-11th, 2020 and is being held on the campus of Microsoft’s headquarters in Redmond, Washington. The conference brings together developers, start-up fou ...
Here at Canonical, we use Dockerfiles on a daily basis for all our web projects. Something that caught our attention recently was the amount of space that we were using for each Docker image, and we realized that we were installing more dependencies than we needed. In this article, I’ll explain how we improved our ...
Slow applications are never fun. But not knowing why an application is not behaving correctly can be even more frustrating. A well-designed system that can diagnose performance or startup issues and inform the user about the problem goes a long way toward mitigating the frustration, and may even help resolve the root cause altogether. Bac ...
I often need to implement tests for new ACPI tables before they become available on real hardware. Fortunately, FWTS provides a framework to read ACPI tables’ binary. The below technique is especially convenient for ACPI firmware and OS kernel developers. It provides a simple approach to verifying ACPI tables without compiling firmware an ...