Site uses cookies to provide basic functionality.
Javascript rendering is set to off by default when visiting the site via .onion and .i2p domains. It can be enabled back again in user's settings section. Javascript rendering set to off means, that you can disable javascript in your browser now and the site will remain functional.
There is also IRC server now available via native IRC clients or non javascript web based one.
Fonts can be adjusted in user's settings section as well.
Check FAQ for more.

OK

The visitor pattern is an esoteric programming pattern that has never been widely popular. No one seems to be totally certain on what it’s good for, as demonstrated by the diversity of opinions found on StackOverflow . One notable quote from the software engineering StackExchange sums up the vibe: Visitor pattern has the most narrow use and almost never will the added complexity be justified My brother’s as..

We consider the following dynamical system: $$ \begin{cases} \dot{x}_1 = L(a_1, k_1, x_3) - k_1 x_1,\\ \dot{x}_2 = L(a_2, k_2, x_1) - k_2 x_2,\\ \dot{x}_3 = L(a_3, k_3, x_2) - k_3 x_3, \end{cases} $$ where $L$ is a piecewise linear function: $$ L(a, k, x) = \begin{cases} ak & \quad \textrm{for}\; 0 \leq x \leq 1,\\ 0 & \quad \textrm{for}\; 1 < x. \end{cases} $$ In this case study, we build a Shiny application that draws 3D phase port..

Some time ago I wrote about building an Australian search engine by abusing how AWS Lambdas work. You can view it at bonzamate.com.au , and read the post about it here . Recently I noticed that Bonzamate.com.au was in turn being abused by a series of bots repeatedly making queries against it. Now normally I don’t worry about bots. There is little you can do to stamp them out entirely, and its always nice to see someone trying to explo..

We consider the following dynamical system: $$ \begin{cases} \dot{x}_1 = L(a_1, k_1, x_3) - k_1 x_1,\\ \dot{x}_2 = L(a_2, k_2, x_1) - k_2 x_2,\\ \dot{x}_3 = L(a_3, k_3, x_2) - k_3 x_3, \end{cases} $$ where $L$ is a piecewise linear function: $$ L(a, k, x) = \begin{cases} ak & \quad \textrm{for}\; 0 \leq x \leq 1,\\ 0 & \quad \textrm{for}\; 1 < x. \end{cases} $$ In this case study, we build a Shiny application that draws 3D phase port..

I’m not on many social media platforms these days. I like it like that. I mostly follow some academics and people who post interesting stuff. I post only occasionally, usually to show off my recent hiking exploits. I’ve come up with some rules for myself (all subject to change) about what I post. A post must meet all the following criteria: It must be positive and uplifting. There’s enough that’s negative on the internet. Don’t add ....


I wrote a simple introduction to algorithms and why they're important and a short guide to my current logseq-projects template.

When you use GitLab to host your web software development project source code, you can deploy your website to Cloudflare Pages. Normally, you would use the GitLab CI pipeline to build your website project. So in this article, I show you how to configure your GitLab CI to deploy to Cloudflare Pages.


I wrote a simple introduction to algorithms and why they're important and a short guide to my current logseq-projects template.

I’m not on many social media platforms these days. I like it like that. I mostly follow some academics and people who post interesting stuff. I post only occasionally, usually to show off my recent hiking exploits. I’ve come up with some rules for myself (all subject to change) about what I post. A post must meet all the following criteria: It must be positive and uplifting. There’s enough that’s negative on the internet. Don’t add ....

COVID necessitated WFH when I was still at EA. EA quickly took measures and closed the office. They issued an allowance for people to buy equipment to work from home. I opted to work from a work-issued laptop and ordered a Varier Variable Balans kneeling chair with my allowance.

Our last post was a pretty gloomy one overall (or t'least, twas for us, n we're still looking for flatmates), but I promise this one's just good vibes ^^ So, we were at Christopher Street Day in Rostock today, n twas a lotta fun. (As for what that's, several cities here in Germany call their pride parades "Christopher Street Day", or shortly "CSD", in remembrancea the Stonewall riots happening in Christopher Street back in 1969, note it's n....


As a 13 year old, my dad’s advice on internet presence was: “Everything you post will be used against you in the future. So you should never associate your name with anything on the internet”. As a rebellious teenager my view was the opposite: “Everything you post on the internet will get lost. You should associate your real name with everything you find interesting” I think looking back, this might be the most useful lesson I..

The Elements of Style urges us to "omit needless words": Vigorous writing is concise. A sentence should contain no unnecessary words, a paragraph no unnecessary sentences, for the same reason that a drawing should have no unnecessary lines and a machine no unnecessary parts. This requires not that the writer make all their sentences short, or that they avoid all detail and treat their subjects only in outline, but that they make every ....

The Learning With Errors problem is the basis of a few cryptosystems, and a foundation for many fully homomorphic encryption (FHE) schemes. In this article I’ll describe a technique used in some of these schemes called modulus switching. In brief, an LWE sample is a vector of values in $\mathbb{Z}/q\mathbb{Z}$ for some $q$, and in LWE cryptosystems an LWE sample can be modified so that it hides a secret message $m$.

The Learning With Errors problem is the basis of a few cryptosystems, and a foundation for many fully homomorphic encryption (FHE) schemes. In this article I’ll describe a technique used in some of these schemes called modulus switching. In brief, an LWE sample is a vector of values in $\mathbb{Z}/q\mathbb{Z}$ for some $q$, and in LWE cryptosystems an LWE sample can be modified so that it hides a secret message $m$.

The Learning With Errors problem is the basis of a few cryptosystems, and a foundation for many fully homomorphic encryption (FHE) schemes. In this article I’ll describe a technique used in some of these schemes called modulus switching. In brief, an LWE sample is a vector of values in $\mathbb{Z}/q\mathbb{Z}$ for some $q$, and in LWE cryptosystems an LWE sample can be modified so that it hides a secret message $m$.

Burnout - lainchan.org - 3 years ago - eng
Did you ever experience programming burnout? What I mean is inability to write any code. I quit my last job, which I liked very much, because I found myself unable to perform the simplest task. I wrote one driver for microcontroller, then I spent about month on writing much simpler and easier driver, because I procrastinated and didn't actually focus and write anything. This problem only becomes worse over time. In the past I was able to fi..

So, there was a post by Justine Tunney about her port of OpenBSD’s pledge() to her own libc, the Cosmopolitan libc . She is also calling out that previous attempts at this were flawed: There’s been a few devs in the past who’ve tried this. I’m not going to name names, because most of these projects were never completed. […] The projects that got further along also had oversights like allowing the changing of setuid/setgid/sticky ....

So, there was a post by Justine Tunney about her port of OpenBSD’s pledge() to her own libc, the Cosmopolitan libc . She is also calling out that previous attempts at this were flawed: There’s been a few devs in the past who’ve tried this. I’m not going to name names, because most of these projects were never completed. […] The projects that got further along also had oversights like allowing the changing of setuid/setgid/sticky ....

So, there was a post by Justine Tunney about her port of OpenBSD’s pledge() to her own libc, the Cosmopolitan libc . She is also calling out that previous attempts at this were flawed: There’s been a few devs in the past who’ve tried this. I’m not going to name names, because most of these projects were never completed. […] The projects that got further along also had oversights like allowing the changing of setuid/setgid/sticky ....

Hummocks Trail - sam.hooke.me - 3 years ago - eng
We arrived at 2:40pm on a Saturday, and there were only a dozen cars in the parking lot, with spaces for a few dozen more. There are no facilities at the trailhead, but the Coldwater Ridge Visitor Center and Johnston Ridge Observatory are both just a short drive away. We hiked clockwise around the Hummocks Trail loop. (As an aside, confusingly there is another WTA hike named Hummocks Loop, but as far as I can tell, it’s actually the same ..

Hummocks Trail - sam.hooke.me - 3 years ago - eng
We arrived at 2:40pm on a Saturday, and there were only a dozen cars in the parking lot, with spaces for a few dozen more. There are no facilities at the trailhead, but the Coldwater Ridge Visitor Center and Johnston Ridge Observatory are both just a short drive away. We hiked clockwise around the Hummocks Trail loop. (As an aside, confusingly there is another WTA hike named Hummocks Loop, but as far as I can tell, it’s actually the same ..

Eruption Trail - sam.hooke.me - 3 years ago - eng
The fee is $8 per adult, but federal interagency recreation passes get you free entry (e.g. America the Beautiful Pass). Unlike at other trailheads, do not leave the pass in your car. Take it with you into the Johnston Ridge Observatory and claim your free entry (a wristband). We arrived at the Johnston Ridge Observatory around 11am on a Saturday. The parking lot was about half full, but it is massive, so finding a space was not an issue.

Eruption Trail - sam.hooke.me - 3 years ago - eng
The fee is $8 per adult, but federal interagency recreation passes get you free entry (e.g. America the Beautiful Pass). Unlike at other trailheads, do not leave the pass in your car. Take it with you into the Johnston Ridge Observatory and claim your free entry (a wristband). We arrived at the Johnston Ridge Observatory around 11am on a Saturday. The parking lot was about half full, but it is massive, so finding a space was not an issue.

Chaosnet - lagomor.ph - 3 years ago - eng


I'm a fan of the unzip command line utility that ships with macOS. I give it a .zip file and it unzips it for me. No flags or arguments to remember (for my typical usages anyway). Most importantly, I've fully internalized the unzip command into muscle memory, probably because of its perfect mnemonic . But then there's .tar, .tar.gz, .tar.xz, .rar, and a whole world of compression archives, often requiring different tools, flags, etc. a....

The purpose of this article is to help you setup a personal blog as quickly as possible using hugo and docker . These are the instructions and notes I’ve written down when setting up my site that I’d like to share.

We write a lot of code at Doximity, and every line that we ship to production gets reviewed. We spend a lot of time on code reviews, therefore it's wise to reflect on our process. Everyone has their review process, but it all boils down to the three buckets that GitHub provides: Approve Comment Request Changes But when should we choose "Request Changes"? That's often a tough line to draw. Sometimes, it even results in difficult ....

Yearly software development plans are my favourite genre of fiction. In the fabulous world of yearly plans, product developers assume they know exactly what product they must build and how long each ...

Yearly software development plans are my favourite genre of fiction. In the fabulous world of yearly plans, product developers assume they know exactly what product they must build and how long each ...

How maintainable is your Python code? Is it possible to hold the code for your functions in your head? When is it appropriate to use measurements in a code review? This week on the show, Reka Horvath and Ben Martineau from Sourcery are here to discuss their recent PyCon talk, "Actionable insights vs ranking: How to use and how NOT to use code quality metrics."

Welp, it looks like I'm starting a new company after all. Here are the values that I drafted for it. Values These things we believe: Ethics . We will behave ethically in all situations. Writing Things Down . We will work from home and be a distributed culture. And in a distributed culture, things have to be written down. Good writing is a skill for everyone not something reserved for writing. Having the Hard Conversations Resp....


Last year I hiked the Translagorai route while accompanying my nephew and his friend on their first hiking and wild camping experience. To go full circle, I soloed the Alta Via del Granito last weekend, which covers the parts of the Lagorai mountain range not included in the Translagorai. The AVG is supposed to be a three days effort, with overnights to be spent in managed huts (“Rifugio”), but I wanted to make it in two days while cam..

Update: Just as I started blogging about the Optane technology, it turns out that Intel is shutting down the Optane business (after bringing the latest-gen “Crow Pass” Optane memory to market - probably just for satisfying existing commitments). While not exactly the same thing, keep an eye on the new CXL standard developments to see where the data center/cloud infrastructure world is going (CXL is basically cache-coherent disaggregated..

Update: Just as I started blogging about the Optane technology, it turns out that Intel is shutting down the Optane business (after bringing the latest-gen “Crow Pass” Optane memory to market - probably just for satisfying existing commitments). While not exactly the same thing, keep an eye on the new CXL standard developments to see where the data center/cloud infrastructure world is going (CXL is basically cache-coherent disaggregated..

Always work at a place where you and your colleagues give a shit about the product(s), the work, and the people around them.

Use Plaintext Email - lagomor.ph - 3 years ago - eng

A/B tests run faster with CUPED. Here I explain the underlying math, and use it to invent an even better variance-reduction technique for online experiments: You Can’t Spell CUPED Without Frisch-Waugh-Lovell

Simon Maple from Snyk and Kalpesh Dharwadkar from Pinterest discuss using Snyk’s developer-friendly tools to integrate good security practices into the software development workflow.

85 visitors online