Wayland and LVGL on PinePhone with Ubuntu Touch
Learn about Wayland and Ubuntu Touch on PinePhone... And how we build PinePhone Apps with LVGL
Learn about Wayland and Ubuntu Touch on PinePhone... And how we build PinePhone Apps with LVGL
Yesterday, I read a phenomenal paper on how disruption free release at Facebook.
As discussed in the January blog roadmap , I want to concretely describe a reduced Oil language , and see if we can get it "done" in 2020.
Spiral journey over kubernetes, cloud and devops world.
Notes on Interval Tree Clocks
Continuing this week’s “making an article so I don’t have to keep typing it” ZFS series… here’s why you should stop using RAIDZ, and start using mirror vdevs instead.
I have taught operating systems at my university, so I will link my notes from that course here regarding processes.
From the highly eclectic blog of Mark Dominus
The Strangler is an extremely effective technique for phasing out legacy systems over time. Instead of spending months getting a new system up to parity with the current system so that clients can…
A few years ago I wrote [_The World in Which IPv6 was a Good Design_](https://apenwarr.ca/log/20170810). I'm still proud of that article, bu...
thoughts
For latency, anyway. A common architecture pattern is the “task queue”: tasks enter an ordered queue, workers pop tasks and process them. This pattern is used everywhere from distributed systems to thread pools. It applies just as well to human systems, like waiting in line at a supermarket or a bank. Task queues are…
The first computer I owned was a Sinclair ZX Spectrum, and I retain a lot of fondness for these tiny, cheap, severely-compromised machines. I just backed the ZX Spectrum Next kickstarter, for instance. But after I left university and got a job, I bought myself my first proper computer:…
NOTE: Currently this guide only deals with IPv4 as most people still don't use IPv6 and many ISPs also still only use IPv4, but IPv6 is planned for a future update of the guide.
A lot of people seem to think that distributed tracing isn't useful, or at least not without extreme effort that isn't worth it for companies smaller than FB. For example, here are a couple of public conversations that sound like a number of private conversations I've had. Sure, there's value somewhere, but it costs…
Robert O'Callahan. Christian. Kiwi. Software guy. All content human-authored unless otherwise noted.
I got into some interesting discussions about IPv6 on Twitter. Then someone asked if Android is getting DHCPv6 support in version 11 of the OS.
I wanted to install the latest version of zsh on my MacBook Pro. This is usually the first thing I install when setting up a new machine. A brew install zsh and a chsh later and I'm good to go (well, technically I had to add the homebrew location of zsh to /etc/shells as well). Close out Terminal.app and reopen to…
This post is the first in a three-part series about my recent work on Cranelift as part of my day job at Mozilla. In this first post, I will set some context and describe the instruction selection problem. In particular, I'll talk about a revamp to the instruction selector and backend framework in general that we've…
Last year, I wrote a blog post titled The Raspberry Pi 4 needs a fan. And in a video to go along with that post, I detailed the process of drilling out a hole in the top of the official Pi 4 case and installing a 5v fan inside. But that solution wasn't great. The fan was a little loud and annoying, and would stay on…
In the last post of this series , I set up NeXTstep on an HP PA-RISC workstation . Today, I’m going to get down to business: configure networking, install system patches, outfit it with developer tools, and install some useful software!
I was looking at one of my classic Macs a few weeks ago, and noticed that my Ubuntu 18.04 netatalk server wasn’t showing up in the Chooser anymore. If you’re not familiar with netatalk , it’s an implementation of Apple Filing Protocol (AFP) that runs on Unix-like operating systems such as Linux and NetBSD. It allows…
We have created the seL4 Foundation! But what is the seL4 Foundation, and why did we create it? In a nutshell, these are the reasons (I’ll expand on them below): Provide for the longevity of …
A common situation in asyncio Python programs is asynchronous initialization. Some resource must be initialized exactly once before it can be used, but the initialization itself is asynchronous — such as an asyncpg database. Let’s talk about a couple of solutions.
Integers in programming languages have a valid range but arithmetic operations can result in values that exceed such ranges. For example, adding two large integers can result in an integer that cannot be represented in the integer type. We often refer to such error conditions as overflows. In a programming languages…
My last post was about either The SSH protocol or The reason you need to install a karaoke captioning library if you want to change your desktop wallpaper . Find out which .