RSSAmplifier

Blog

Motiejus Jakštys Public Record

Recent content on Motiejus Jakštys Public Record

m.jakstys.ltRSS feed ↗31 posts

Latest posts

Announcing stagit-ng

This is a continuation of the previous blog post of my adventures removing gitea with a static
git repository browser. Soon after I had my repositories statically hosted in
stagit, I 1 started implementing features. 
 
 Add full history . Create a HTML page for every ref, every (unique) tree,
extract the blobs for download, and more. 
 Speed up stagit by using multiple…

Removing gitea from public internet due to bots

Rationale 
 I was in a forest and barely reachable for the last few days cooking: 





















 
 
 
 
 
 
 
 
 


 When a message came through from my wife: 
 
 The server in the closet has fans turned on all the time. Is there anything
that…

Protected 18650 batteries for XHDATA D-368

I bought a couple of XHDATA D-368 handheld radios for extended family, in case
we need to go to hide in a shelter again. Turns out, old-style radios are fun
to play not in an emergency, especially for kids! 
 Out of the box it comes with a 3.8V 2Ah unprotected li-on cell: 





















…

Scaling Btrfs in an Enterprise

This first been published in The New Stack: Scaling Btrfs to petabytes in
production: a 74% cost reduction story . I am replicating a late
draft of this post here for archival reasons. 
 We saved 74% of our storage costs by moving petabytes of time-series data from
ext4 to Btrfs. We are partnering with Google to bring Btrfs to all GCP
customers, you can experimentally run Btrfs…

Testing LiFePo4 15Ah with Gyrfalcon s8000

I recently went into a rabbit hole of finding the best battery pack for an
electronic candle that will be installed in a large Christmas Wreath. The pair
of alkaline batteries holds the charge for 2-3 days; my goal is 7 more. Ideally
— 30. The light draws 39mAh: 





















 
…

Construction site surveillance

I am building a house, for which I decided I need a surveilance cameras. I have
never set up a security camera, so have zero knowledge before starting. Here
are the prelminary requirements before I started : 
 
 24/7 on-demand live view, plus some recording: 7 days 24/7, plus some time
for when and around “motion” is detected. 
 Nothing that has a subscription…

Family Single Sign On Was a Bad Idea

When my eldest son became of an email-qualified age, I set him up a
 Bitwarden instance, so he can keep his password there. He loved it . 
 My password manager instance is not open to the public internet, necessitating
use of VPN software , which needed a method to authenticate (a.k.a. login
method). 
 As someone inundated into “best practice” security policies of a…

Zig Reproduced Without Binaries

I decided to bootstrap Zig without using binaries that are checked in the
repository and
answer if the resulting zig1.wasm in the latest Zig release (0.13.0) is the
same the one bootstrapped without using those binaries. 
 TLDR: yes, they are the same: 
 $ sha256sum code/zig{,2}/stage1/zig1.wasm
127909fb8c9610ce3f296d8a48014546c0f85055115002fb3aba4d865dcdbb27…

I have successfully re-googled myself

It is quite common across tech folk (at least the ones that I speak of) to
“de-google”. I.e. get rid of Google (or, in general, big-corp) services. As you
can imagine, after running, say, e-mail for 15+ years, the process (and the
result) isn’t fun. 
 I got rid of my Gmail account in the Christmas of 2023, so about 10 months ago.
The result was rewarding, but…

Web Compression

I wrote this comment about pre-compressing web artifacts with zstd: 
 
 I have read somewhere (can’t find links handy) that for web server case, zstd
may not be as useful as brotli due to longer decompression speed, but I may
be wrong here. 
 
 That felt wrong — someone suggesting a cool change in a module, and I am just
FUDing it. If I were the PR submitter, I…

11sync shutdown

As you may have read , I have created a
“hosted syncthing” pre-registration page in 11sync.net . The
1-sentence pitch for the service is: 
 
 11sync.net is a Hosted Syncthing peer. Designed for Syncthing users seeking
reliable backups and resilience. 
 
 Over the ~6 months sign-up page was live, 46 people 1 signed up. This
sign-up activity signals this…

New Job

At 2024-03-12 I started at chronosphere.io , the M3DB team. The team is
focusing on efficiency of M3DB storage engine , and it so happens that the
team I joined are performance nerds. I have never seen so many flamegraphs and
profiler visualizations during a such short time span, which, given the team’s
position in the company, shouldn’t come as a surprise. 
 To…

11sync.net Signup

As some of you may have already noticed, I have launched a pre-registration
page for 11sync.net . Here is it’s headline: 
 
 11sync.net is a Hosted Syncthing peer. Designed for Syncthing users seeking
reliable backups and resilience. 
 
 I came up with the idea after running syncthing semi-manually for a few years
now. At certain times I want to have a…

Thank You Drew DeVault

This is a long-overdue public thank-you letter to Drew
DeVault . 
 He has been an ethical FOSS steward for as long as I remember. There is a
number of examples where he stands for what’s right and upholds his values.
Sometimes, perhaps unfortunately, pretty damn often, getting shit for it .
Negativity on the internet doesn’t seem to stop him: it obviously makes…

This conversation totally didn't happen at Microsoft

Similarity to real–world events and character names is coincidental. 
 Characters, Microsoft employees: 
 
 Amy: a high-level executive. Ex-JPMorgan. Pragmatic. 
 Harry: an engineer in Developer Services team. His organization
owns code hosting, developer tools and CI infrastructure. A good listener. 
 
 2015 — the beginning of Git at Microsoft 
 Exchange between…

My Declining Matrix usage

This post explains my journey with Matrix/Element . Here is a short
timeline: 
 
 2020 November: read A Matrix overview on LWN and installed on my home
server. Added Messenger, Hangouts and WhatsApp bridges. “Bridges” meant that
I could read and write messages from FB Messenger, Google Hangouts and
WhatsApp using a single application — Element (the…

Nixos Subjectively

Previously I bloggged about the cool
things I did with NixOS. After publishing the post, my friend Anton 
promptly asked: 
 
 Wondering what’s your professional take on NixOS. Would you give it a short
for a small-to-medium size server fleet provisioning? It felt rather involved
and not very mature when I looked at it. Kind of a commitment, too. 
 
 Here is my…

End of Summer 2023

Just before this summer I laid out my roadmap for, well, the summer. Here is a quick
retrospective. Weird order, because it is somewhat chronological. This
post does not offer background for the project, so the previous post is a
prerequisite reading. 
 Project 2: my take on universal headers 
 During SYCL 2023 I was told that Johny Marler expressed
explicit interest in the…

Summer Roadmap 2023

Now that I have 6 weeks of employment remaining, my wife encouraged me to come
up with something to do for the summer, and possibly after it. This post will
list a few ideas I’ve been thinking about. 
 Next 6 weeks of employment 
 The roadmap described 6 weeks ago is still mostly
applicable. Quick update: 
 
 The blog post I have mentioned has been published…

My Zig and Go work for the next 3 months

Now that Uber uses “zig cc” to compile it’s Go Monorepo , here is a sneak
preview of what I have planned for the next 3 months on the Zig/Go side: 
 
 Finish an “official” Uber’s blog post about how Uber uses zig and why. The
content will be similar to my post a year ago , but with the milestones closed. Since the
previous post we have…

7 Years at Uber

This month turned 7 years since I joined Uber. Since it will be the last (a bit
more on it in the next paragraph), I though it’s good to write a retrospective
on how it looked like. 
 On 2022-09-07 it was announced that Uber engineering site will be shut down on
2023-06-30. Whoever is willing to relocate are welcome to do so. The rest will
be laid off. The…

My Favorite Podcast

The only podcast I was able to listen for more than 3 series was BBC :
mostly “history” and “life stories”. Over the last ~10 years I tried many
others, but nothing clicked for a longer engagement. 
 A few months ago I stumbled across Adam Gordon Bell’s
 corecursive . My first episode was with Richard Hipp , the
creator of SQLite. It was great. The…

Side project retrospective

I spent 7 months building a project (hosted here ). Goal: make a
fastest known user/group NSS database. I succeeded, kinda. Here is an excerpt
from a conclusion I wrote this morning: 
 This is the fastest known NSS passwd/group implementation for *reads*. On a
corpus with 10k users, 10k groups and 500 average members per group, `id`
takes 17 seconds with the glibc default…

Uber Mock Interview Retrospective

Like mentioned in the previous post ,
I did a public mock coding interview. A reminder what that was: 
 
 The goal was to explain how some bits of Uber’s tech recruiting works. 
 The meetup page had 602 attendees as of writing. We expected
quite a few participants in the event. 
 
 The mock interview consisted of: 
 
 Introduction by Uber’s EMEA…

In Defense Of Big Tech Hiring

There is quite a lot of negative sentiment about broken BigTech hiring
processes. If you have not heard, these are good introductory posts: 
 
 Dan Luu — Misidentifying Talent (2022) . 
 Dan Luu — Hiring Lemons (2016) . 
 Dan Luu — We only hire the trendiest (2016) . 
 Thomas Ptacek — The Hiring Post (2015) . 
 
 The gist of the posts above is: 
 
 BigTech…

How Uber Uses Zig

Disclaimer: I work at Uber and am partially responsible for bringing zig cc 
to serious internal use. Opinions are mine, this blog post is not affiliated
with Uber. 
 I talked at the Zig Milan meetup about “Onboarding Zig at Uber”.
This post is a little about “how Uber uses Zig”, and more about “my experience
of bringing Zig to Uber”, from…

Smart Bundling

TLDR 
 Could our package managers bundle our dependencies in git so it’s robust and
frictionless? What about this: 
 
 “smart” vendoring to protect ourselves from things disappearing off the
internet, and 
 write/have tools that make this vendoring easy for us. 
 
 Update 2022-02 
 Zig’s upcoming package manager 
will have ability to…

First Post Here

This is the first post of the third iteration of jakstys.lt. The me-human is
still changing, so do my public platforms.

Contact


 Email : motiejus@jakstys.lt 
 Matrix : @motiejus:jakstys.lt 
 Phone / Signal : +37062951392 
 Libera.chat : motiejus 
 PGP : 6F133A0C1C2848D7 
 
 Unless otherwise stated, ©Motiejus Jakštys. CC-BY-4.0 . 
 Large Language Model disclaimer 
 All of the text in this blog is written by myself only without any help of
LLMs. Some of my code I publish here was…

Motiejus Jakštys Resume

Moved to jakstys.lt/resume.pdf .

Talks

I have done a handful of conference/workshop/meetup talks over the years. Here
are a few. 
 
 2026-02-01 FOSDEM (Main Track) 
 The Filesystem Diaries: Scaling Btrfs in an Enterprise 
 Btrfs was merged into the Linux kernel in 2009, arriving with bold
promises—and, let’s be honest, a reputation for instability. I first tried it
on my laptop in 2011. It wiped my…