Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]
13
Discussion on HackerNews and Lobsters. A while ago I was thinking about making something nice for my wife as a present for the Valentine’s Day. My eye caught a rather cool-looking 7-color eInk display with Raspberry Pico W on board - Pimoroni Inky Frame. From the first glance it looked quite polished with ready-to-use SDKs in Python and C++. I thought it would be interesting to make a dynamic family photo frame out of it, something that my wife could have on her table, with ability to switch photos from time to time with a press of a button.
a year ago

Improve your reading experience

Logged in users get linked directly to articles resulting in a better reading experience. Please login for free, it takes less than 1 minute.

More from Posts on Nikita Lapkov

RustLab 2024

I had the chance to speak at RustLab 2024! I will be honest, this was the point I realised that 4 conferences in one year was a bad idea. I was exhausted and overwhelmed, but I still had a blast meeting new people and answering the questions after the talk. It had the following abstract: Rhino: Low-latency Key-value Database in Rust Rhino is a key-value database optimised for low-latency edge workloads.

2 months ago 57 votes
EuroRust 2024

I had the pleasure to speak at EuroRust this year! This was my third and final talk about elfo, an actor system written in Rust. As I’m no longer an active contributor to elfo, it feels a bit bittersweet to finish last thing related to the project. I wish maintainers of elfo well as they continue to push one of the most hard-core Rust code I’ve ever seen :) The talk had the following abstract:

2 months ago 44 votes
P99 Conf 2024

This year, I was invited to speak at P99 Conf. The format of a virtual conference was new to me, but hats off to the organisers as it went very smooth for me. I presented a talk with the following abstract: Low-Latency Mesh Services Using Actors We’re transforming elfo, our Rust actor system, into a distributed mesh of services. Learn how we tackled message serialization, compression, and back-pressure to optimize for high-frequency trading.

2 months ago 57 votes
2024 Reflection

Holy shit, what a year that was. It was absolutely bonkers overwhelming. A lot of interesting stuff happened, but at the same time I took on so much more than I could handle. Conferences Speaking at RustLab 2024 During late 2023 and early 2024 I applied to a bunch of conferences. Previously, I didn’t have any luck of becoming a speaker at non-Russian conferences - all of my talk proposals were rejected (with a notable exception of Handmade Seattle, which happened late 2023).

3 months ago 60 votes
Rust Nation UK 2024

A month ago I received an email from the organisers of Rust Nation UK 2024 inviting me to speak at the conference. One of the speakers got COVID and I was chosen to be their replacement. I had less than 48 hours to prepare the slides, which was a fun challenge, but very stressful! The final result was a talk about my work on elfo with the following abstract: Type-safe and fault-tolerant mesh services with Rust

10 months ago 34 votes

More in programming

New Blog Post: "A Perplexing Javascript Parsing Puzzle"

I know I said we'd be back to normal newsletters this week and in fact had 80% of one already written. Then I unearthed something that was better left buried. Blog post here, Patreon notes here (Mostly an explanation of how I found this horror in the first place). Next week I'll send what was supposed to be this week's piece. (PS: April Cools in three weeks!)

13 hours ago 3 votes
Notes on Improving Churn

Ask any B2C SaaS founder what metric they’d like to improve and most will say reducing churn. However, proactively reducing churn is a difficult task. I’ll outline the approach we’ve taken at Jenni AI to go from ~17% to 9% churn over the past year. We are still a work in progress but hopefully you’ll […] The post Notes on Improving Churn appeared first on Marc Astbury.

15 hours ago 3 votes
Catching grace

Meditation is easy when you know what to do: absolutely nothing! It's hard at first, like trying to look at the back of your own head, but there's a knack to it.

13 hours ago 2 votes
Python Performance: Why 'if not list' is 2x Faster Than Using len()

Discover why 'if not mylist' is twice as fast as 'len(mylist) == 0' by examining CPython's VM instructions and object memory access patterns.

8 hours ago 2 votes
Our switch to Kamal is complete

In a fit of frustration, I wrote the first version of Kamal in six weeks at the start of 2023. Our plan to get out of the cloud was getting bogged down in enterprisey pricing and Kubernetes complexity. And I refused to accept that running our own hardware had to be that expensive or that convoluted. So I got busy building a cheap and simple alternative.  Now, just two years later, Kamal is deploying every single application in our entire heritage fleet, and everything in active development. Finalizing a perfectly uniform mode of deployment for every web app we've built over the past two decades and still maintain. See, we have this obsession at 37signals: That the modern build-boost-discard cycle of internet applications is a scourge. That users ought to be able to trust that when they adopt a system like Basecamp or HEY, they don't have to fear eviction from the next executive re-org. We call this obsession Until The End Of The Internet. That obsession isn't free, but it's worth it. It means we're still operating the very first version of Basecamp for thousands of paying customers. That's the OG code base from 2003! Which hasn't seen any updates since 2010, beyond security patches, bug fixes, and performance improvements. But we're still operating it, and, along with every other app in our heritage collection, deploying it with Kamal. That just makes me smile, knowing that we have customers who adopted Basecamp in 2004, and are still able to use the same system some twenty years later. In the meantime, we've relaunched and dramatically improved Basecamp many times since. But for customers happy with what they have, there's no forced migration to the latest version. I very much had all of this in mind when designing Kamal. That's one of the reasons I really love Docker. It allows you to encapsulate an entire system, with all of its dependencies, and run it until the end of time. Kind of how modern gaming emulators can run the original ROM of Pac-Man or Pong to perfection and eternity. Kamal seeks to be but a simple wrapper and workflow around this wondrous simplicity. Complexity is but a bridge — and a fragile one at that. To build something durable, you have to make it simple.

19 hours ago 2 votes