Home on Erik...
Vote for our SXSW panel!
If you have a few minutes, you should check out mine and Chris Johnson‘s panel proposal. Go here and...
over a year ago
If you have a few minutes, you should check out mine and Chris Johnson‘s panel proposal. Go here and vote: http://panelpicker.sxsw.com/vote/24504
Algorithmic Music Discovery at Spotify
****Spotify crunches hundreds of billions of streams to analyze user's music taste and provide...
Applied Cartography
Notes on Zed
I was late to the VS Code zeitgeist, and as penitence I try to go out of my way to try new editors...
9 months ago
I was late to the VS Code zeitgeist, and as penitence I try to go out of my way to try new editors whenever I see them — which is why this morning I installed Zed, which makes its bones on performance (yay!) and teams functionality (irrelevant for my use cases, but seems...
Louwrentius
Why I believe the new Mac Pro won't be a great machine for gaming
In Accidental Tech Podcast episode 18 (love the show), I learned that John Siracusa was thinking...
over a year ago
In Accidental Tech Podcast episode 18 (love the show), I learned that John Siracusa was thinking about buying a new Mac Pro for gaming.
I believe that gaming on the new Mac Pro will be a mediocre experience.
Driver support: as John mentioned himself, the video cards are...
Willem's Blog
Improve your sleep by blocking light
I have been wearing a sleep mask in bed, blocking all light. It has been amazing for my sleep's...
over a year ago
I have been wearing a sleep mask in bed, blocking all light. It has been amazing for my sleep's quality. Read along for my findings!
computers are bad
2023-07-29 Free Public WiFi
Remember Free Public WiFi?
Once, many years ago, I stayed on the 62nd floor of the Westin Peachtree...
a year ago
Remember Free Public WiFi?
Once, many years ago, I stayed on the 62nd floor of the Westin Peachtree Plaza
in Atlanta, Georgia. This was in the age when the price of a hotel room was
directly correlated with the price of the WiFi service, and as a high school
student I was not...
Arduino Blog
This machine automatically creates chain art
Art is very personal and we often consider the process of creation itself when evaluating the...
5 months ago
Art is very personal and we often consider the process of creation itself when evaluating the resulting piece. Does a sculpture have more artistic value when molded by human hands rather than a 3D printer? Most would say that it does. But what if the automation was, itself, part...
GitButler
GitButler is joining the Open Source Pledge
GitButler is joining the Open Source Pledge to help move towards a more sustainable open source...
3 months ago
GitButler is joining the Open Source Pledge to help move towards a more sustainable open source ecosystem.
Jonas Hietala
Competition Feedback
The voting is over and I got a few ratings I want to comment on. You can view all ratings and...
over a year ago
The voting is over and I got a few ratings I want to comment on. You can view all ratings and comments here.
They’re all from 1 to 5.
Innovation: 3.75
Fun: 3.29
Theme: 3.17
Graphics: 2.54
Audio: 2.14
Humor: 2.54
that ugly.
Overall: 3.13
something playable out of this.
Community:...
Jonas Hietala
On The Decline of FPS Games
Mr. Eriksson just sent me this link as a fitting video on my post on The Decline of FPS...
over a year ago
Mr. Eriksson just sent me this link as a fitting video on my post on The Decline of FPS Games.
https://www.youtube.com/watch?v=W1ZtBCpo0eU
Oh How true!
somenice
Matter as a Smart home standard
Matter is the name of the smart home standard that promises to bridge IOT devices and different home...
8 months ago
Matter is the name of the smart home standard that promises to bridge IOT devices and different home eco-systems. Amazon Alexa, Google Home, Apple Homekit, Samsung SmartThings, etc. To prevent 6+ flavours of smart lightbulbs working with 6+ different apps, a standard needed to be...
Jonas Hietala
Minor site updates
As it happens I got a little tired of the syntax highlighter Pandoc uses so on a whim I started...
over a year ago
As it happens I got a little tired of the syntax highlighter Pandoc uses so on a whim I started looking at moving to Pygments as my highlighter. With some searching around I found a blog post about just that! That’s lucky because while I like Haskell, I’ve never really grocked it...
csvbase blog
DuckDB isn't just fast
A whistlestop tour of the cool bits of DuckDB
6 months ago
A whistlestop tour of the cool bits of DuckDB
Jonas Hietala
Top ten activities that make me happy
Recently we finally moved out of our old apartment and into a new larger apartment and it’s awesome....
over a year ago
Recently we finally moved out of our old apartment and into a new larger apartment and it’s awesome. It’s no more than a year old and feels very fresh compared to the old one. It’s also larger with an extra room, dishwasher (!) and closer to the city centrum and everything is...
Vitalik Buterin's...
Sidechains vs Plasma vs Sharding
over a year ago
Home on Erik...
Norvig's claim that programming competitions correlate negatively with being good on the job
I saw a bunch of tweets over the weekend about Peter Norvig claiming there's a negative correlation...
over a year ago
I saw a bunch of tweets over the weekend about Peter Norvig claiming there's a negative correlation between being good at programming competitions and being good at the job. There were some decent Hacker News comments on it.
Christian Selig
More Efficient/Faster Average Color of Image
Skip to the ‘Juicy Code 🧃’ section if you just want the code and don’t care about the preamble of...
over a year ago
Skip to the ‘Juicy Code 🧃’ section if you just want the code and don’t care about the preamble of why you might want this!
Finding the average color of an image is a nice trick to have in your toolbelt for spicing up views. For instance on iOS, it’s used by Apple to make their...
Notes on software...
Exploring PL/pgSQL: Strings, arrays, recursion, and parsing JSON
Next in exploring PL/pgSQL:
Implementing a Forth-like interpreter
PostgreSQL comes with a...
over a year ago
Next in exploring PL/pgSQL:
Implementing a Forth-like interpreter
PostgreSQL comes with a builtin imperative programming language called
PL/pgSQL. I used to think this language was scary because it has a bit
more adornment than your usual language does. But looking deeper,...
Push to Prod
When Overwhelmed, Make a List of Questions
In my first big project at Netflix, I learned this disturbingly simple problem-solving technique.
4 months ago
In my first big project at Netflix, I learned this disturbingly simple problem-solving technique.
Jonas Hietala
Undo git reset --hard
I purposefully and more or less idiotically executed git reset --hard <hash> in hopes of going back...
over a year ago
I purposefully and more or less idiotically executed git reset --hard <hash> in hopes of going back a bit. What I didn’t realize then is that you throw away all the commits between now until <hash>. Not quite what was planned.
After a bit of panic I found the answer:
Find your...
latest projects -...
Hand-cranked Flux Capacitor
[Concept] Control the flow of time
a year ago
[Concept] Control the flow of time
Azad's Blog
Traveling with Apple Vision Pro
The Vision Pro has quickly become an essential item that I take onto every flight. It’s a fantastic...
2 months ago
The Vision Pro has quickly become an essential item that I take onto every flight. It’s a fantastic device to travel with—Be it by train or by plane, it offers an unparalleled opportunity to selectively tune out your environment and sink into an engaging activity like watching a...
Arduino Blog
A stroopwafel doneness detection device
If you’re lucky enough to visit the Netherlands and you order a hot drink, you’ll likely be given a...
5 months ago
If you’re lucky enough to visit the Netherlands and you order a hot drink, you’ll likely be given a sweet treat as well. That is a stroopwafel, a crispy little waffle-syrup sandwich that the Dutch like to rest on top of their drink so that the rising heat will soften the pastry....
Home on Erik...
Tumblr's awesome project names
Not sure how I managed to miss this, but I'm watching this Tumblr presentation and they talk about...
over a year ago
Not sure how I managed to miss this, but I'm watching this Tumblr presentation and they talk about their projects named after Arrested Development topics: Gob, Parmesan, Buster, Jetpants, Oscar, George and Motherboy.
Still, the best software project name is probably still Apple's...
Louwrentius
Google DNS - what to think of it?
Google now provide an open DNS service. At first I was scared that they use
their service to get...
over a year ago
Google now provide an open DNS service. At first I was scared that they use
their service to get information about users.
However, their privacy statement tells us that no personal identifiable
information is stored for longer than 48 hours. The permanent logs do not
contain such...
Jonas Hietala
Fixing Problems
Today I have fixed two large annoyances I’ve had!
I fixed the blue people on youtube bug
I found a...
over a year ago
Today I have fixed two large annoyances I’ve had!
I fixed the blue people on youtube bug
I found a nice thread with a great answer. I solved it by forcefully patching libflashplayer.so
perl -pi.bak -e 's/libvdpau/lixvdpau/g' libflashplayer.so
Worked perfectly!
I fixed the...
Posts on Made of...
New reptyr feature: TTY-stealing
Ever since I wrote reptyr, I’ve been frustrated by a number of issues in reptyr that I fundamentally...
over a year ago
Ever since I wrote reptyr, I’ve been frustrated by a number of issues in reptyr that I fundamentally didn’t know how to solve within the reptyr model. Most annoyingly, reptyr fundamentally only worked on single processes, and could not attach processes with children, making it...
Home on Erik...
NYC subway math
Apparently MTA (the company running the NYC subway) has a real-time API. My fascination for the...
over a year ago
Apparently MTA (the company running the NYC subway) has a real-time API. My fascination for the subway takes autistic proportions and so obviously I had to analyze some of the data. The documentation is somewhat terrible, but here's some relevant code for how to use the API:
Old Vintage...
Pretty pictures, bootable floppy disks, and the first Canon Cat demo?
Now that our 1987 Canon Cat is refurbished and ready to go another nine innings or so, it's time to...
5 months ago
Now that our 1987 Canon Cat is refurbished and ready to go another nine innings or so, it's time to get into the operating system and pull some tricks.
from our historical discussion of the Canon Cat, the Cat was designed by Jef Raskin as a sophisticated user-centric computer...
Matt Blewitt
Long Distance Relationships
I’ve been managing a fully remote, fully distributed team, covering timezones from UTC-8 through...
2 months ago
I’ve been managing a fully remote, fully distributed team, covering timezones from UTC-8 through UTC+10, for the last couple of years. Through that time, I’ve learned a lot on organising work, interpersonal relationships, and ultimately how to overcome a lack of promximity to my...
Old Vintage...
One-parting some Commodore 64 utilities for fun and profit
I've got a few retrocomputing bucket list items I'm slowly working down, and a couple of them...
a month ago
I've got a few retrocomputing bucket list items I'm slowly working down, and a couple of them involve some little Commodore 64 games I've had kicking around on the backburner. However, every game needs media assets, and while there are many great tools for doing art on your...
Home on Erik...
The power of ensembles
From my presentation at MLConf, one of the points I think is worth stressing again is how extremely...
over a year ago
From my presentation at MLConf, one of the points I think is worth stressing again is how extremely well combining different algorithms works.
In this case, we're training machine learning algorithms on different data sets (playlists, play counts, sessions) and different...
./techtipsy
Monitoring energy usage with smart plugs, Prometheus and Grafana
This post isn’t a detailed line-by-line tutorial on how to set up each individual piece of the setup...
7 months ago
This post isn’t a detailed line-by-line tutorial on how to set up each individual piece of the setup as those types of
guides tend to get out of date really easily, but if you know your way around Linux and the command line, then you can
definitely replicate this setup on your...
Old Vintage...
So thieves broke into your storage unit - again
If you've been wondering why entries have been a little slow lately, let me tell you a story.
All...
2 months ago
If you've been wondering why entries have been a little slow lately, let me tell you a story.
All collectors tend to be a bit obsessive by nature, and us classic computer nerds probably pick up more hardware than we can (or should) store in our residence — especially if the...
computers are bad
2024-07-13 the contemporary carphone
Cathode Ray Dude, in one of his
many excellent "Quick Start" videos, made an interesting observation...
5 months ago
Cathode Ray Dude, in one of his
many excellent "Quick Start" videos, made an interesting observation that
has stuck in my brain: sophisticated computer users, nerds if you will, have
a tendency to completely ignore things that they know are worthless. He was
referring to the...
Neil Madden
Multiple input MACs
When working with Message Authentication Codes (MACs), you often need to authenticate not just a...
over a year ago
When working with Message Authentication Codes (MACs), you often need to authenticate not just a single string, but multiple fields of data. For example, when creating an authenticated encryption mode by composing a cipher and a MAC (like AES-CBC and HMAC), you need to ensure the...
Home on Erik...
My issue with GPU-accelerated deep learning
I've been spending several hundred bucks renting GPU instances on AWS over the last year. The...
over a year ago
I've been spending several hundred bucks renting GPU instances on AWS over the last year. The speedup from a GPU is awesome and hard to deny. GPUs have taken over the field. Maybe following the footsteps of Bitcoin mining there's some research on using FPGA (I know very little...
latest projects -...
Portable Probability Panel
[Misc] Laser-cut Galton board
5 months ago
[Misc] Laser-cut Galton board
Willem's Blog
Escaping the flat tires
Finding the answer to the question how resilient a puncture-proof tire really is took me quite some...
over a year ago
Finding the answer to the question how resilient a puncture-proof tire really is took me quite some time, but alas - here it is!
Jonas Hietala
Jonas IceCream Stand
Ahoy there! This time I’ll take you along for a ride with an arty Tycoon game.
Jonas IceCream...
over a year ago
Ahoy there! This time I’ll take you along for a ride with an arty Tycoon game.
Jonas IceCream Stand
Instructions
It should be pretty self-explanatory, it’s a very simply tycoon game.
Credits
Music:
Eric Maskol
Steve Chatterton
Sound effects:
freesound
Rest:
Me
Jonas Hietala
Recent experiences with Netrunner tournaments
After a bit of a hiatus after the Winter Kit Tournament the 16th January I participated in three...
over a year ago
After a bit of a hiatus after the Winter Kit Tournament the 16th January I participated in three tournaments during February - March. After each of these tournaments I started a writeup of them but they fell off my mind a bit but consider this my break with my blogging...
Home on Erik...
A brief history of Hadoop at Spotify
I was talking with some data engineers at Spotify and had a moment of nostalgia.
2008
I was writing...
over a year ago
I was talking with some data engineers at Spotify and had a moment of nostalgia.
2008
I was writing my master's thesis at Spotify and had to run a Hadoop job to extract some data from the logs.
Vitalik Buterin's...
The promise and challenges of crypto + AI applications
10 months ago
Applied Cartography
November, 2024
Not a lot to share this month; it was a particularly busy time, between a mystery (and now solved,...
2 weeks ago
Not a lot to share this month; it was a particularly busy time, between a mystery (and now solved, without fanfare or closure) cough and a dearth of time to write as I started to explore easing back into full-time work.
Still, some writing (and selfishly, I'm excited to end the...
Louwrentius
The iPhone, iPad and iOS are powering a revolution
Most people just don't understand computers. Are these people dumb? Some may
be dumb, but the people...
over a year ago
Most people just don't understand computers. Are these people dumb? Some may
be dumb, but the people who make them are maybe even dumber. Because they
can't seem to figure out how to create a computer that the majority of people
understand.
When the original macintosh arrived at...
Style over Substance
My Home Assistant setup (2023 edition)
For the past few years, I have been running Home Assistant to make my apartment a smart home. It’s...
a year ago
For the past few years, I have been running Home Assistant to make my apartment a smart home. It’s become such a hobby of mine that I’ve even started coding add-ons for it. While there are other popular automation platforms, Home Assistant’s versatility blows the rest out of the...
Home on Erik...
Building a data team at a mid-stage startup: a short story
I guess I should really call this a parable.
The backdrop is: you have been brought in to grow a...
over a year ago
I guess I should really call this a parable.
The backdrop is: you have been brought in to grow a tiny data team (~4 people) at a mid-stage startup (~$10M annual revenue), although this story could take place at many different types of companies.
Lighthouse Blog
Deep dive into finding RSS feeds
2 weeks ago
Posts on Made of...
Test suites as classifiers
Suppose we have some codebase we’re considering applying some patch to, and which has a robust and...
over a year ago
Suppose we have some codebase we’re considering applying some patch to, and which has a robust and maintained test suite.
Considering the patch, we may ask, is this patch acceptable to apply and deploy. By this we mean to ask if the patch breaks any important functionality,...
Arduino Blog
Arduino CLI 1.0 is out!
We are excited to share some incredible news with you all! We recently released the Arduino CLI...
3 months ago
We are excited to share some incredible news with you all! We recently released the Arduino CLI version 1.0.0, marking a significant milestone for our software. This release is a big deal because it signifies the stabilization of the software API, bringing greater reliability and...
Good Enough
How We Made A Good Enough Zine
We made a zine!
The first issue was released in August, and I finished the second issue just last...
a year ago
We made a zine!
The first issue was released in August, and I finished the second issue just last week. Right now, a hundred copies are on their way from the printer to me (update: they've just arrived!). Today I'd like to share the story of how this zine came about.
(Sorry for...
Jonas Hietala
Let's build a VORON: Filters
I can print, but the printer is missing a very important thing that I alluded to in the previous...
a year ago
I can print, but the printer is missing a very important thing that I alluded to in the previous post: filtering dangerous particles and fumes.
This is mostly covered by the kit, but I was missing some parts from the print it forward and the kit didn’t include a HEPA...
Notes on software...
Notes on running Electron
This is an external post of mine. Click
here
if you are not redirected.
over a year ago
This is an external post of mine. Click
here
if you are not redirected.
Neil Madden
API Security in Action handed over to production
After a flurry of last-minute corrections and updates in response to review feedback, my book has...
over a year ago
After a flurry of last-minute corrections and updates in response to review feedback, my book has now been handed over to Manning’s production team. That means a few weeks of copy editing and graphics polish, then indexing and typesetting to produce the final version around...
Applied Cartography
Git one-liner: get the earliest commit from X hours ago
I wanted to get a commit that was temporally some distance back as part of my experimentation with...
7 months ago
I wanted to get a commit that was temporally some distance back as part of my experimentation with git cliff. This took some time to do, but here's what I ended up with:
git log --since="72 hours ago" --until="now" --reverse --pretty=format:"%h" | head -1
Nothing particularly...
Birchtree
The future simply has more computers (members post)
Glasses and headsets and computers, oh my! Why the future continues to be all about adding computers...
5 days ago
Glasses and headsets and computers, oh my! Why the future continues to be all about adding computers to our lives, not replacing anything.
Arduino Blog
Explore two ways to white label with Arduino Cloud
We’re excited to announce a brand-new feature called “Custom Branding,” which allows Enterprise plan...
7 months ago
We’re excited to announce a brand-new feature called “Custom Branding,” which allows Enterprise plan users to white label their workspace and enhance the overall user experience. This announcement is exciting because it empowers businesses to create a truly tailored environment...
Home on Erik...
MLConf 2014
Just spent a day at MLConf where I was talking about how we do music recommendations. There was a...
over a year ago
Just spent a day at MLConf where I was talking about how we do music recommendations. There was a whole range of great speakers (actually almost 2/3 women which was pretty cool in itself).
Here are my slides:
Home on Erik...
I'm looking for data engineers
I'm interrupting the regular programming for a quick announcement: we're looking for data engineers...
over a year ago
I'm interrupting the regular programming for a quick announcement: we're looking for data engineers at Better. You would be the first one to join and would work a lot directly with me.
Some fun things you could work on (these are all projects I'm working on right now):
Jonas Hietala
(Fake) Bittman Chinese Chicken
Lesson 6! I went to Cervera and bought a holder to allow me to steam chicken.
I broke the recipe on...
over a year ago
Lesson 6! I went to Cervera and bought a holder to allow me to steam chicken.
I broke the recipe on multiple fronts: chicken wings instead of chicken breasts, mushroom soy instead of tamarin, roman salad instead of baby bok choi (where the heck do you find that…) and I even...
Willem's Blog
Removing paint from a bike frame
Using dichloromethane and sanding paper I removed the paint from my bike frame to create a minimal,...
over a year ago
Using dichloromethane and sanding paper I removed the paint from my bike frame to create a minimal, raw aluminium look.
Jonas Hietala
Settled on an unoriginal idea
I think I’ve decided what to do. Some very slight progress has been made.
over a year ago
I think I’ve decided what to do. Some very slight progress has been made.
Old Vintage...
xa (xa65) 2.4.0 - finally
xa (xa65) 2.4.0 is the newest release of André Fachat's fast and portable two-pass 6502/65816...
a year ago
xa (xa65) 2.4.0 is the newest release of André Fachat's fast and portable two-pass 6502/65816 crossassembler; yours truly is the current maintainer and I just punched "live" on it tonight. It runs on Un*xy things and Windows (with Cygwin or msys2 or similar), and probably other...
Arduino Blog
This device prevents garage door security breaches
Your automatic garage door is almost certainly the most vulnerable access point in your house....
2 months ago
Your automatic garage door is almost certainly the most vulnerable access point in your house. Traditional systems are notorious for their susceptibility to replay attacks, but even more sophisticated modern garage door openers and those that lack remote functionality entirely...
./techtipsy
You can use almost anything as a key file for your encrypted storage device
Imagine that you have an unencrypted drive containing your private data and one day it starts...
a month ago
Imagine that you have an unencrypted drive containing your private data and one day it starts throwing a bunch of
errors. You have backups of the data so you’ve got that part covered, but would you feel comfortable sending the drive
in to be warrantied? You have no control over...
Jonas Hietala
Dijkstra's Algorithm
For rust, I’m updating the documentation for the standard library and specifically with the...
over a year ago
For rust, I’m updating the documentation for the standard library and specifically with the collections. For the priority queue I had the idea to use Dijkstra’s algorithm as a fun example. That idea was well received and that example is now live.
At first I wanted to use A* to...
Vitalik Buterin's...
Epochs and slots all the way down: ways to give Ethereum users faster transaction confirmation times
5 months ago
Jonas Hietala
We moved away from the city
When me and my girlfriend Veronica moved to Linköping to study at the University the plan was never...
over a year ago
When me and my girlfriend Veronica moved to Linköping to study at the University the plan was never to stay there permanently. We just moved there to study but the longterm plan, if you can have one at that stage, was always to move back to the north of Sweden where we came...
Jonas Hietala
Postmortem: The Chronicles of Bim: The 100 Fake Afros
My first shooter! It’s working (although a friend got a null pointer error) so I’m a little...
over a year ago
My first shooter! It’s working (although a friend got a null pointer error) so I’m a little happy.
The Time
I spent about 24 hours on this game. A whopping 30% was break time, mostly me eating, reading manga or playing games… This is proof of me being really lazy this month I...
./techtipsy
Accidentally turning the ASRock DeskMini X300 into a semi-passively cooled PC
After playing around with fan curves on my ASRock DeskMini X300
based home server, I noticed one...
over a year ago
After playing around with fan curves on my ASRock DeskMini X300
based home server, I noticed one interesting thing. At least it was
interesting to me.
Background
I had one goal: to try to see if I could turn it into a semi-passive PC by only
turning the fan on when the PC was...
Lighthouse Blog
Updates November 24: Content parsing improvements
a year ago
./techtipsy
The minimum viable fan control script
I’ve always been a fan of tinkering with cooling setups on my computers.
I’ve even went as far as...
over a year ago
I’ve always been a fan of tinkering with cooling setups on my computers.
I’ve even went as far as writing crappy
solutions to make up for
deficiencies on the hardware level. After years of dumb experiments I’ve seen
how little you can get away with in cooling and how to run your...
Vitalik Buterin's...
[Mirror] A Proof of Stake Design Philosophy
over a year ago
./techtipsy
Steam local network game transfers are a game-changer
Steam recently launched a new feature: local network game transfers.
The idea is simple: if you have...
a year ago
Steam recently launched a new feature: local network game transfers.
The idea is simple: if you have a game downloaded on another PC and you’re both on the same local network, then Steam can download game data
from that PC, avoiding the need to download the game over public...
Yazin Alirhayim
The Trouble With Optionality
Optionality’s one of those things you don’t really think about. People don’t generally wake up one...
over a year ago
Optionality’s one of those things you don’t really think about. People don’t generally wake up one morning thinking “Why, it appears I’ve spent the past several decades of my life optimizing for optionality. Perhaps I should figure out why?”.
Most don’t even recognize the term –...
Neil Madden
SipHash-based encryption for constrained devices
I see a lot of attempts to define encryption schemes for constrained devices with short...
7 months ago
I see a lot of attempts to define encryption schemes for constrained devices with short authentication tags (e.g., 64 bits) using universal hashing. For example, there’s a proposal in CFRG at the moment for a version of AES-GCM with short tags for this kind of use-case. In my...
Jonas Hietala
10 Games in 10 Languages
For school we have this programming course for Java. It isn’t anything special really and it would...
over a year ago
For school we have this programming course for Java. It isn’t anything special really and it would be really boring if I don’t like to program, it almost is anyway, if it weren’t for the fact that we’re to create a game! Just any game will do and we’re in a group of two and we...
Buck on Software
Winds of Change
Software is maybe, just maybe about to get exciting
6 months ago
Software is maybe, just maybe about to get exciting
Jonas Hietala
Breaking the rule of three
It’s pretty darn stressful making a game in a week, especially when you have this big great vision...
over a year ago
It’s pretty darn stressful making a game in a week, especially when you have this big great vision on how your game should be (which is always grand). For me making Balls, Black and White and Jonas IceCream Stand where truly stressful, MenuCity and Bugger not so much but...
Home on Erik...
Ratio metrics
We run a ton of A/B tests at Spotify and we look at a ton of metrics. Defining metrics is a little...
over a year ago
We run a ton of A/B tests at Spotify and we look at a ton of metrics. Defining metrics is a little bit of an art form. Ideally you want to define success metrics before you run a test to avoid cherry picking metrics.
seangoedecke.com RSS...
How I ship projects at big tech companies
I have shipped a lot of different projects over the last ~10 years in tech. I often get tapped to...
a month ago
I have shipped a lot of different projects over the last ~10 years in tech. I often get tapped to lead new ones when it’s important to get…
Notes on software...
Writing a lisp compiler from scratch in JavaScript: 3. LLVM
Previously in compiler basics:
1. lisp to assembly
2. user-defined functions and variables
...
over a year ago
Previously in compiler basics:
1. lisp to assembly
2. user-defined functions and variables
4. LLVM conditionals and compiling fibonacci
5. LLVM system calls
6. an x86 upgrade
In this post we'll extend the
compiler to emit LLVM
IR as an option instead of...
./techtipsy
Whacky setups: seedbox on a wall
The Orange Pi Zero is one hell of an SBC. It has served as
a Wi-Fi access point for months without...
over a year ago
The Orange Pi Zero is one hell of an SBC. It has served as
a Wi-Fi access point for months without issues
and as a testbed for playing around with MySQL.
I wanted it to be a useful device again, but had trouble finding an use case for it due to its hardware limitations.
After...
Odds and Ends of...
Nobody knows what the National Data Library is (not even the government)
A policy wrapped in a mystery inside an enigma
a month ago
A policy wrapped in a mystery inside an enigma
Applied Cartography
Content debt
There’s a nascent trend of releasing ostensibly-private material (changelogs, public wikis,...
5 months ago
There’s a nascent trend of releasing ostensibly-private material (changelogs, public wikis, handbooks, etc.) to the public as a bit of a marketing push. This is essentially a form of debt, to the extent that you’re taking a lump-sum payment now in exchange for the implicit cost...
Home on Erik...
What's Erik up to?
I joined Better in early 2015 because I thought the team was crazy enough to actually change one of...
over a year ago
I joined Better in early 2015 because I thought the team was crazy enough to actually change one of the largest industries in the US. For six years, I ran the tech team, hiring 300+ people, probably doing 2,000+ interviews, and according to GitHub I added 646,941 lines of code...
Jonas Hietala
Writing lessons learned after writing a book
A good writer isn’t born; a good writer is created
It may sound dumb, but one of my reasons for...
a year ago
A good writer isn’t born; a good writer is created
It may sound dumb, but one of my reasons for writing a book was to improve my writing ability.
Maybe I could’ve practiced on the blog instead, but putting things on paper gave it some added weight I don’t think I would’ve gotten...
Home on Erik...
The eigenvector of "Why we moved from language X to language Y"
I was reading yet another blog post titled “Why our team moved from <language X> to <language Y>” (I...
over a year ago
I was reading yet another blog post titled “Why our team moved from <language X> to <language Y>” (I forgot which one) and I started wondering if you can generalize it a bit. Is it possible to generate a N * N contingency table of moving from language X to language Y?
Posts on Made of...
todo.pl ratmenu
broder has been hacking on some better quicksilver integration for Hiveminder using todo.pl.
I don’t...
over a year ago
broder has been hacking on some better quicksilver integration for Hiveminder using todo.pl.
I don’t use a mac, but I don’t see why linux users shouldn’t get fun toys to. So I hacked up the following two-liner that uses todo.pl and ratmenu to pop up a list of tasks, and mark one...
Computer Ads from...
Comics from 1982/02 Creative Computing Mag
Time for some humor
6 months ago
Willem's Blog
Art of visualisation
You learn from experts if you have the privilege to work with them, this month I had a chance to...
over a year ago
You learn from experts if you have the privilege to work with them, this month I had a chance to help a professional food photographer.
Engineers Need Art
Same Stop
Marvelling at the full circle life seems to have taken after retirement.
a year ago
Marvelling at the full circle life seems to have taken after retirement.
Jonas Hietala
A Vacation Filled with Obsession
A nice thing about school are the nice long vacations. Directly after my last exam we went north to...
over a year ago
A nice thing about school are the nice long vacations. Directly after my last exam we went north to our dear home village Övertorneå and spent two weeks celebrating Christmas and New Years Eve. What did we do? I practiced some obsessive behavior with Power Grid and Minecraft (and...
Computer Ads from...
Two Interviews with Ken Kaplan, One of the Creators of OS-9
Two interview from two different time periods
4 months ago
Two interview from two different time periods
Louwrentius
Bash Shell Function Library (BSFL) released.
The Bash Shell Function Library (BSFL) is a small Bash script that acts as a
library for bash...
over a year ago
The Bash Shell Function Library (BSFL) is a small Bash script that acts as a
library for bash scripts. It provides a couple of functions that makes the
lives of most people using shell scripts a bit easier.
The purpose of this library is to provide pre-build functions for...
computers are bad
2024-04-05 the life of one earth station
Sometimes, when I am feeling down, I read about failed satellite TV (STV)
services. Don't we all?...
8 months ago
Sometimes, when I am feeling down, I read about failed satellite TV (STV)
services. Don't we all? As a result, I've periodically come across a company
called AlphaStar Television Network. PrimeStar may have had a rough life, but
AlphaStar barely had one at all: it launched in...
Good Enough
TIL: Blocking Password App Autocomplete on Form Fields
I wanted to disable password managers, particularly 1Password, from interacting with a username...
a year ago
I wanted to disable password managers, particularly 1Password, from interacting with a username field in Contact Me. It was pretty simple in the end:
<%= form.text_field :username, "data-lpignore": true, "data-1p-ignore": true %>
Reference: 1Password, Lastpass.
lcamtuf’s thing
A 15-minute intro to hobby CNC
In which the author tilts at windmills for a brief while.
3 months ago
In which the author tilts at windmills for a brief while.
Notes on software...
Writing a SQL database from scratch in Go: 3. indexes
Previously in database basics:
1. SELECT, INSERT, CREATE and a REPL
2. binary expressions...
over a year ago
Previously in database basics:
1. SELECT, INSERT, CREATE and a REPL
2. binary expressions and WHERE filters
4. a database/sql driver
In this post, we extend gosql
to support indexes. We focus on the addition of PRIMARY
KEY constraints on table creation and some easy...
Arduino Blog
Hey Google! Meet Arduino Cloud
We’re excited to announce that the Arduino Cloud now supports Google Home™! This means you can now...
7 months ago
We’re excited to announce that the Arduino Cloud now supports Google Home™! This means you can now interact with your devices, simply through your Google Home Assistant: use voice commands, the Google Home app, or create new routines integrating Arduino solutions. This new...
Applied Cartography
Meta's two assets
(Epistemic disclaimer: there are few Extremely Big Tech Companies to whom I feel apathy more vividly...
a month ago
(Epistemic disclaimer: there are few Extremely Big Tech Companies to whom I feel apathy more vividly than Meta. I had a Facebook account in high school and college and got rid of it at some point post-graduation, though I'd be hard-pressed to tell you when exactly that was.)
It...
Arduino Blog
An ultra-affordable DIY underwater ROV
ROVs (remotely operated vehicles) let us explore bodies of water and it is hard not to be excited by...
7 months ago
ROVs (remotely operated vehicles) let us explore bodies of water and it is hard not to be excited by the possibilities. But traditional ROVs cost a lot of money and often require serious expertise to operate and maintain. Luckily there are affordable alternatives, such as this...
Notes on software...
Writing an x86 emulator from scratch in JavaScript: 2. system calls
Previously in emulator basics:
1. a stack and register machine
In this post we'll extend x86e...
over a year ago
Previously in emulator basics:
1. a stack and register machine
In this post we'll extend x86e to
support the exit and write Linux system calls, or syscalls. A syscall
is a function handled by the kernel that allows the process to
interact with data outside of its memory....
latest projects -...
POV Candle
[Hardware] Tiny volumetric display
a year ago
[Hardware] Tiny volumetric display
Posts on Made of...
Measuring Capacity Through Utilization
(This post is cross-posted from Honeycomb’s instrumentation series).
One of my favorite concepts...
over a year ago
(This post is cross-posted from Honeycomb’s instrumentation series).
One of my favorite concepts when thinking about instrumenting a system to understand its overall performance and capacity is what I call “time utilization”.
By this I mean: If you look at the behavior of a...
./techtipsy
Lenovo ThinkPad P14s gen 4 (AMD): it doesn't suck under Linux
I’ve had the opportunity to try out another new laptop at work. I’ve used a brand new laptop...
8 months ago
I’ve had the opportunity to try out another new laptop at work. I’ve used a brand new laptop recently, and it was horrible.
But this time I’m pleasantly surprised.
The Lenovo ThinkPad P14s gen 4 has great specs:
CPU: AMD Ryzen 7 PRO 7840U (8 cores, 16 threads, up to 5.1 GHz)
GPU:...
Vitalik Buterin's...
El recurso escaso más importante es la legitimidad
over a year ago
Posts on Made of...
Some opinionated thoughts on SQL databases
People who work with me tend to realize that I have Opinions about databases, and SQL databases in...
over a year ago
People who work with me tend to realize that I have Opinions about databases, and SQL databases in particular. Last week, I wrote about a Postgres debugging story and tweeted about AWS’ policy ban on internal use of SQL databases, and had occasion to discuss and debate some of...
Jonas Hietala
A Week of Headache
This was supposed to be a productive week with lots and lots of Perl and Ada but instead I’ve had...
over a year ago
This was supposed to be a productive week with lots and lots of Perl and Ada but instead I’ve had this big headache all week, and some the week before and it’s gotten pretty bad so I can’t really concentrate on anything really. The electronics assignment was a bitch and it took a...
Arduino Blog
Is there an online Arduino IDE?
Since the inception of Arduino, the Arduino IDE has been a go-to tool for people learning to code...
2 months ago
Since the inception of Arduino, the Arduino IDE has been a go-to tool for people learning to code and creating projects ranging from remote-controlled cars to soil moisture monitoring. No wonder it’s been downloaded over 24 million times this year, so far! Now if you’ve ever...
Arduino Blog
KiPneu makes soft robotic biomimetics accessible to STEAM students
Biomimicry, which is a method for developing new technology inspired by nature, has been one of...
5 months ago
Biomimicry, which is a method for developing new technology inspired by nature, has been one of humanity’s greatest assets. But systems reliant on soft tissue, such as an octopus’s tentacles, have been notoriously difficult to reproduce in the robotics world. To give STEAM...
Jonas Hietala
Let's build a VORON: Wrap-up
It’s finally done™.
I’ve built a VORON that prints reliably and I’ve modded it enough to be able to...
9 months ago
It’s finally done™.
I’ve built a VORON that prints reliably and I’ve modded it enough to be able to leave it alone for a while, so I think it’s time to wrap up this build series with a little retrospective.
Building the printer was really fun and rewarding
I’ve always seen...
Vitalik Buterin's...
STARKs, Part I: Proofs with Polynomials
over a year ago
Jonas Hietala
Customizing Neovim
Scripting is configuration. Configuration is scripting.
TJ DeVries A different take on editing...
7 months ago
Scripting is configuration. Configuration is scripting.
TJ DeVries A different take on editing code
I’ve been using Neovim since it forked from Vim almost 8 years ago, and I used Vim many years before that.
I feel quite comfortable with Neovim, and I’ve gone down the...
Posts on Made of...
BlackHat/DEFCON 2011 talk: Breaking out of KVM
I’ve posted the final slides from my talk this year at DEFCON and Black Hat, on breaking out of the...
over a year ago
I’ve posted the final slides from my talk this year at DEFCON and Black Hat, on breaking out of the KVM Kernel Virtual Machine on Linux.
Virtunoid: Breaking out of KVM from Nelson Elhage [Edited 2011-08-11] The code is now available. It should be fairly well-commented, and...
Avestura's Blog
Using Tor outside of the Tor Browser
This post shows how to run Tor with a simple PowerShell script and use it in other apps like...
over a year ago
This post shows how to run Tor with a simple PowerShell script and use it in other apps like Telegram...
Avestura's Blog
An opinion on what's a good general-purpose programming language
What features should a programming language have to be ideal, in my opinion?
over a year ago
What features should a programming language have to be ideal, in my opinion?
Simply Explained
How WebP Images Reduced My Bandwidth Usage by 50%
Last year I migrated this website from Jekyll to Eleventy. This year, I’m finally implementing WebP...
over a year ago
Last year I migrated this website from Jekyll to Eleventy. This year, I’m finally implementing WebP images to save bandwidth and make this site even faster to load! This simple change reduced my bandwidth usage by 50% and is still backwards compatible with old devices and...
Louwrentius
Neato XV-15 / XV-11 Robotic Vacuum cleaner review
Update 18 February 2012
There is one problem. When the robot is not connected to the charger, the...
over a year ago
Update 18 February 2012
There is one problem. When the robot is not connected to the charger, the batteries are depleted very fast. Even if the batteries are not entirely depleted and the robot can still display the menu, the clock loses it's time. Every time the robot gets a too...
Louwrentius
PPSS version 2.30 now operates asynchronous
If you background a bash or shell process, how do you determine if it has
finished? Since inter...
over a year ago
If you background a bash or shell process, how do you determine if it has
finished? Since inter process communication is not possible using shell
scripts, people often refer to while loops or other polling mechanisms to
determine if some process has stopped.
However, the one...
Matt Mullenweg
Rhino Dehorning
Yesterday in the African bush was great, I saw giraffes, zebras, warthogs, leopard turtles,...
2 months ago
Yesterday in the African bush was great, I saw giraffes, zebras, warthogs, leopard turtles, elephants. Today wasn’t great: I witnessed a rhino shot with a tranquilizer from a helicopter, then it was held down, had its horns cut off, and then shaved down. I have some photos and...
Lars Lofgren
What Happened After I Outed a Reddit Mod for Affiliate Spam
I recently broke down how Reddit mods and users are abusing Google search rankings with affiliate...
3 months ago
I recently broke down how Reddit mods and users are abusing Google search rankings with affiliate spam. It’s reddit marketing gone awry. The post blew up and got a decent amount of attention. Then I got a front row seat to how deep of a spam filled porta-potty Reddit has become....
Matt Blewitt
Death, and Utsuge
This post discusses topics some may wish to avoid: terminal illness, hospice care, death, and...
a month ago
This post discusses topics some may wish to avoid: terminal illness, hospice care, death, and Japanese visual novels.
Jonas Hietala
The Top Idea
Recently I’ve been having a dozen ideas and projects I’ve been poking around with:
I wrote a simple...
over a year ago
Recently I’ve been having a dozen ideas and projects I’ve been poking around with:
I wrote a simple lua, later perl, which announced when a new day9 episode has come. Later I expanded it to search for new manga episodes, but now it’s broken and unfinished.
In an attempt to learn...
somenice
Russet Lake Early Summer
An early canvas of Fissile mountain reflected in Russet Lake. This time early summer when there was...
3 months ago
An early canvas of Fissile mountain reflected in Russet Lake. This time early summer when there was still a bit of ice on the lake and the mountain tops are covered with snow. The painting is framed in western red cedar. Russet Lake Early Summer by Andrew SmithAcrylic on canvas10...
Arduino Blog
Play rock-paper-scissors using a time-of-flight sensor and an Arduino UNO R4
Owing to its simplicity and fast-paced nature, rock-paper-scissors is a great game to play with...
5 months ago
Owing to its simplicity and fast-paced nature, rock-paper-scissors is a great game to play with friends, and when it comes to translating it into a digital format, many creative adaptations can be made. This version by madmcu forgoes the typical three-button input scheme in favor...
Posts on Made of...
Git in pictures
In my previous blog post, I discussed how git is distinctive among version control system in the way...
over a year ago
In my previous blog post, I discussed how git is distinctive among version control system in the way in which it makes the backend model that is being used to store data the most important element of the tool, and that experts use it by having the complete model in their head,...
./techtipsy
Testing GPU passthrough on AMD Ryzen 7 5700G APU
Introduction
Before we jump into all the nitty-gritty details, I’d like to go over what we are...
over a year ago
Introduction
Before we jump into all the nitty-gritty details, I’d like to go over what we are dealing with here since these topics
may be unfamiliar to you. VFIO is quite a niche topic and not everyone knows about it.
GPU passthrough: the process of allowing a VM...
Lighthouse Blog
How to rate content and find it again
6 months ago
Willem's Blog
Rescuing photos from a crashed iMac
This week I attempted to recover two decades of personal photo history from a crashed iMac.
over a year ago
This week I attempted to recover two decades of personal photo history from a crashed iMac.
Home on Erik...
Spotify's Discovery page
The Discovery page, the new start page in Spotify, is finally out to a fairly significant percentage...
over a year ago
The Discovery page, the new start page in Spotify, is finally out to a fairly significant percentage of all users. Really happy since we have worked on it for the past six months. Here's a screen shot:
Jonas Hietala
Food vacation in Japan
Me and my friend spent 2 weeks in Japan and had a great time. I wasn’t planning on taking a lot of...
over a year ago
Me and my friend spent 2 weeks in Japan and had a great time. I wasn’t planning on taking a lot of pictures, but I ended up sending a bunch back home as a ways of keeping my family up to date. When I look back most of them are about food… So I’ll turn this into a post about the...
Jonas Hietala
Design for Hackers
I get these.. urges sometimes. Not like Dexter no, but sometimes I just have to buy a specific...
over a year ago
I get these.. urges sometimes. Not like Dexter no, but sometimes I just have to buy a specific thing. It happened again yesterday (or was it the day before I don’t know) when I saw this post on hackernews.
It’s a book this time, again, but this is something a little different -...
Vitalik Buterin's...
Review of Gitcoin Quadratic Funding Round 4
over a year ago
Good Enough
Having Trouble Getting Started? Pair Up!
A body at rest tends to stay at rest, and a body in motion tends to stay in motion, unless acted on...
a year ago
A body at rest tends to stay at rest, and a body in motion tends to stay in motion, unless acted on by a net external force.
Sir Isaac Newton
I often find that just getting started is the hardest part of doing something. This is especially true when the project is large or...
Applied Cartography
Fathom
I'd been meaning to jot down some thoughts on Fathom for a while, and did not have a particularly...
2 weeks ago
I'd been meaning to jot down some thoughts on Fathom for a while, and did not have a particularly good reason to do so until the news broke that Paul Jarvis was selling his share of the company to Jack Ellis, the technical co-founder. [1]
Anyway, the two thoughts:
I think Fathom...
Vitalik Buterin's...
Gitcoin Grants Round 6 Retrospective
over a year ago
Willem's Blog
Tudor Black Bay 36 long-term review
For the past six months I have been wearing the same watch, every day and night. Read along to learn...
over a year ago
For the past six months I have been wearing the same watch, every day and night. Read along to learn what makes the Tudor Black Bay 36 the perfect every day watch.
computers are bad
2023-02-13 my homelab
I have always found the term "homelab" a little confusing. It's a bit like the
residential version...
a year ago
I have always found the term "homelab" a little confusing. It's a bit like the
residential version of "on-premises cloud," in that it seems to presuppose that
a lab is the normal place that you find computer equipment. Of course I get
that "homelab" is usually used by those who...
./techtipsy
OpenWRT, ISP modem and dynamic IP addresses: how to fix connectivity issues without rebooting your...
My current ISP provides an internet connection over a
copper wire. To use it,
I have a crappy modem...
7 months ago
My current ISP provides an internet connection over a
copper wire. To use it,
I have a crappy modem (Technicolor CGA2121, DOCSIS 3.0). It’s running in bridge
mode,
meaning that all it does is convert the signal running over the coax cable
into plain old Ethernet.
My main...
Applied Cartography
Notes from May
Lots of writing this month:
Why you should use Rails
A reminder that things take time
How...
6 months ago
Lots of writing this month:
Why you should use Rails
A reminder that things take time
How shadcn/ui's previews work
Why I hate that 1.01% meme
A lovely term, 'grace note'
Au revoir, invoke!
A quick check-in on 11ty
A rant/snippet for auth.js
The first edition of what will be a...
Home on Erik...
Fermat's principle
I was browsing around on the Internet and the physics geek in me started reading about Fermat's...
over a year ago
I was browsing around on the Internet and the physics geek in me started reading about Fermat's principle. And suddenly something came back to me that I've been trying to suppress for many years – how I never understood why there's anything fundamental about the principal of...
Notes on software...
Controlled HTML select element in React has weird default UX
This is an external post of mine. Click
here
if you are not redirected.
over a year ago
This is an external post of mine. Click
here
if you are not redirected.
Home on Erik...
Presentations about Spotify music recommendations
A couple of people in my old team have been around talking about how Spotify does music...
over a year ago
A couple of people in my old team have been around talking about how Spotify does music recommendations and put together some quite good presentations.
First one is Neville Li's presentation about Scala Data Pipelines @ Spotify:
Applied Cartography
11ty
.njk as the default templating language is an odd choice, and I find myself stubbing my toe on it a...
10 months ago
.njk as the default templating language is an odd choice, and I find myself stubbing my toe on it a good amount. Maybe that's a me thing!
It is extremely fast. This site has around 2300 pages; Eleventy is compiling it in around two seconds.
The extensibility ergonomics are...
Jonas Hietala
I beat FTL on Hard with all ships in the game
For 2023 I wanted to do something different than usual—I wanted to start playing computer games...
a year ago
For 2023 I wanted to do something different than usual—I wanted to start playing computer games again.
So I gave myself a late Christmas gift and bought a Steam Deck (and like any self-serving gentleman I took care to pitch it as being for my kids) and I started loading it up...
Home on Erik...
State drift
I generally haven't written much about software architecture. People make heuristics into religion....
over a year ago
I generally haven't written much about software architecture. People make heuristics into religion. But here is something I thought about: how to build in self-correction into systems. This has been something just vaguely sitting in my head lacking a clear conceptual definition...
Notes on software...
Generating a REST API from a database
I recently published an alpha version of a code generation tool,
DBCore, that reads a...
over a year ago
I recently published an alpha version of a code generation tool,
DBCore, that reads a database
schema from PostgreSQL or MySQL and generates an entire Go API with
CRUD operations, pagination, filtering, and authentication.
But more than just generating code like
xo/xo or...
Louwrentius
Migration from blogger to blogofile and disqus is complete
As stated in my previous post, I migrated all posts from blogger.com to my own host running...
over a year ago
As stated in my previous post, I migrated all posts from blogger.com to my own host running blogofile.
At the time of my previous post, I was not able to restore all comments made on my old blog. Thanks to some help
from disqcus I fixed an error on my behalf and all old comments...
Engineers Need Art
SystemSix
SystemSix is a desk calendar project that displays the weather forecast and phase of the moon on an...
over a year ago
SystemSix is a desk calendar project that displays the weather forecast and phase of the moon on an e-ink display.
Posts on Made of...
amd64 and va_arg
A while back, I was poking around LLVM bugs, and discovered, to my surprise, that LLVM doesn’t...
over a year ago
A while back, I was poking around LLVM bugs, and discovered, to my surprise, that LLVM doesn’t support the va_arg intrinsic, used by functions to accept multiple arguments, at all on amd64. It turns out that clang and llvm-gcc, the compilers that backend to LLVM, have their own...
Willem's Blog
Cleaning a vintage watch
This week I cleaned an automatic vintage watch and fitted it to with a new strap, rediscovering old...
over a year ago
This week I cleaned an automatic vintage watch and fitted it to with a new strap, rediscovering old beauty underneath layers of dirt!
Home on Erik...
Music recommendations using cover images (part 1)
Scrolling through the Discover page on Spotify the other day it occurred to me that the album is in...
over a year ago
Scrolling through the Discover page on Spotify the other day it occurred to me that the album is in fact a fairly strong visual proxy for what kind of content you can expect from it. I started wondering if the album cover can in fact be used for recommendations.
Home on Erik...
More Luigi!
Continuing in the same spirit of shameless self-promotion, here's some recent Luigi press:
Reddit...
over a year ago
Continuing in the same spirit of shameless self-promotion, here's some recent Luigi press:
Reddit thread A Guide to Python Frameworks for Hadoop (slides from the NYC Hadoop User Group) This presentation from the Open Analytics NYC meetup about how Foursquare uses Luigi Luigi...
Posts on Made of...
What's with ML software and pickles?
I have spent many years as an software engineer who was a total outsider to machine-learning, but...
a year ago
I have spent many years as an software engineer who was a total outsider to machine-learning, but with some curiosity and occasional peripheral interactions with it. During this time, a recurring theme for me was horror (and, to be honest, disdain) every time I encountered the...
Notes on software...
Writing a document database from scratch in Go: Lucene-like filters and indexes
In this post we'll write a rudimentary document database from scratch
in Go. In less than 500 lines...
over a year ago
In this post we'll write a rudimentary document database from scratch
in Go. In less than 500 lines of code we'll be able to support the
following interactions, inspired by Elasticsearch:
$ curl -X POST -H 'Content-Type: application/json' -d '{"name": "Kevin", "age": "45"}'...
Arduino Blog
Using Arduino with gaming
It’s not surprising that the Arduino community is packed to the brim with examples of gaming-related...
a month ago
It’s not surprising that the Arduino community is packed to the brim with examples of gaming-related projects. Both activities tend to attract people with a love for problem-solving, technology, and getting immersed in one challenging activity for hours at a time. The result is...
Home on Erik...
How to set compensation using commonsense principles
Compensation has always been one of the most confusing parts of management to me. Getting it right...
over a year ago
Compensation has always been one of the most confusing parts of management to me. Getting it right is obviously extremely important. Compensation is what drives our entire economy, and you could look at the market for labor as one gigantic resource-allocating machine in the same...
Jonas Hietala
Microfeatures in my blog
xkcd: Nerd sniping
A while I ago I encountered a blog post called Microfeatures I Love in Blogs and...
5 months ago
xkcd: Nerd sniping
A while I ago I encountered a blog post called Microfeatures I Love in Blogs and Personal Websites, and together with the related Hacker News discussion I got nerd sniped.
(I spent more time than I care to admit implementing new and exciting microfeatures for...
Arduino Blog
An Arduino-powered robotic ukulele that plays itself
The ukulele has a bit of a reputation for being quaint, but it is a legitimate instrument like any...
4 months ago
The ukulele has a bit of a reputation for being quaint, but it is a legitimate instrument like any other and that means it takes a lot of practice to play competently. Zeroshot is too busy building cool stuff to bother with all of that, so he put his skills to use constructing...
seangoedecke.com RSS...
Porting and hacking Llama2.c for fun and profit
Over the last few weeks I’ve been playing around with the excellent llama2.c repository, which is...
a year ago
Over the last few weeks I’ve been playing around with the excellent llama2.c repository, which is basically a simple one-file C…
Opsbros
Nokia 5110 - Back from the dead. Part 1: Nostalgia
I loved my Nokia 5110 and I wonder if it was possible to breathe new life into this long-shelved and...
over a year ago
I loved my Nokia 5110 and I wonder if it was possible to breathe new life into this long-shelved and still-memed mobile phone. As it turns out, not only is it possible, but it's going to be a lot easier than I anticipated.
Vitalik Buterin's...
Should Ethereum be okay with enshrining more things in the protocol?
a year ago
Louwrentius
'Linux: monitor a directory for files'
Inotify is a mechanism in the Linux kernel that reports when a file system
event occurs.
The...
over a year ago
Inotify is a mechanism in the Linux kernel that reports when a file system
event occurs.
The inotifywait comand line utility can be used in shell scripts to monitor
directories for new files. It can also be used to monitor files for changes.
Inotifywait must be installed and is...
Arduino Blog
Arduino and Truesense partner to bring UWB technology to millions
We are excited to announce our latest partnership with Truesense, a leader in ultra-wideband (UWB)...
a month ago
We are excited to announce our latest partnership with Truesense, a leader in ultra-wideband (UWB) technology, known for its innovative software and hardware solutions. This collaboration enhances our ecosystem of hardware products, software solutions, and cloud services,...
somenice
Gold and Ghosts
In the autumn of 1892, two miners, Earl and Edward, found themselves high in the Pacific Northwest...
a month ago
In the autumn of 1892, two miners, Earl and Edward, found themselves high in the Pacific Northwest mountains, searching for a legend as old as the hills: the lost crate of gold. The tale of “Shining Creek Gold” was whispered in every saloon from Seattle to San Francisco, a cache...
Good Enough
TIL: Fixing Broken Social Share Images in Twitter/X
I have an admission to make.
Social share images for Pika were broken on Twitter/X, LinkedIn, and...
a month ago
I have an admission to make.
Social share images for Pika were broken on Twitter/X, LinkedIn, and Apple Messages for months.
And it made me sad.
But in the past few months we got it fixed.
And that made me very happy!
We really love our Pika social share images.
They are...
Old Vintage...
The Hall SC-VGA-2 video processor, the Atari ST and NeXTSTEP: more tales of the unscreenshotable
A periodic fascination on this blog is figuring out better ways to get better screenshots of our...
3 weeks ago
A periodic fascination on this blog is figuring out better ways to get better screenshots of our classic systems, which often hail from the Wild Wild West/East in terms of video standards (read all entries in this series). Naturally the best way is a bitwise direct grab of the...
Jonas Hietala
My first rust Contribution
The problem with open-source for most people isn’t writing code, but it’s all the other things.
How...
over a year ago
The problem with open-source for most people isn’t writing code, but it’s all the other things.
How shall I push my changes? How do I handle git? What should I do?
I was the same and I actually dreaded my awesome summer job, just a little bit, because now I’m supposed to...
Arduino Blog
Galco goes Platinum! Welcome our newest SIPP
Founded in 1975 and headquartered in Madison Heights, Michigan, Galco is a leading e-commerce...
7 months ago
Founded in 1975 and headquartered in Madison Heights, Michigan, Galco is a leading e-commerce distributor that specializes in providing a wide range of industrial and commercial electrical and electronic products, focusing on maintenance, repair, and operations (MRO). Known for...
./techtipsy
How I blew up my backup server (Valve pls fix)
It all started with me getting a Steam Deck.
Background
After getting familiar with the Steam Deck...
a year ago
It all started with me getting a Steam Deck.
Background
After getting familiar with the Steam Deck and how the Proton compatibility layer works, I decided to write a
backup script that would back up everything in the home folder, excluding the Steam games themselves due to the...
./techtipsy
Turning leftover PC parts into a decent gaming PC
Introduction
About a year ago, I bought an used PC based off of
a Lenovo Erazer X510. It had a...
over a year ago
Introduction
About a year ago, I bought an used PC based off of
a Lenovo Erazer X510. It had a dual-core Intel Pentium
G3220 CPU, 4GB of DDR3 RAM, a crappy Codegen 400W power supply and a 60GB SSD. I added an Nvidia GTX 1050 and just like
that, a budget gaming PC was born. My...
Nabeel S. Qureshi
Notes on Puzzles
1. I mostly don’t play chess anymore — it’s too addictive, and tends to take over your brain in a...
a year ago
1. I mostly don’t play chess anymore — it’s too addictive, and tends to take over your brain in a way I don’t like — but one habit I’ve retained is solving puzzles.
Jonas Hietala
Geekhack Toxic
I came back to Linköping yesterday and I had a package waiting for me to pick it up. What could it...
over a year ago
I came back to Linköping yesterday and I had a package waiting for me to pick it up. What could it be?
With a crummy mobile phone photo I give you my TOXIC keycaps mounted on my trusty old das keyboard:
Woooo
If only my GH60 could arrive some time this decade…
Applied Cartography
Grace notes
I'm not loving Unreasonable Hospitality, but it did supply me with a phrase that I've been looking...
7 months ago
I'm not loving Unreasonable Hospitality, but it did supply me with a phrase that I've been looking for:
Eventually, that gesture became one of our steps of service. The host would ask guests, “How’d you get here tonight?” If they responded, “Oh, we drove,” he’d follow up with,...
Ken Shirriff's blog
Inside the Intel 386 processor die: the clock circuit
Processors are driven by a clock, which controls the timing of each step inside the chip.
In this...
a year ago
Processors are driven by a clock, which controls the timing of each step inside the chip.
In this blog post, I'll examine the clock-generation circuitry inside the Intel 386 processor.
Earlier processors such as the 8086 (1978) were simpler, using two clock phases internally.
The...
Notes on software...
Intercepting and modifying Linux system calls with ptrace
How software fails is interesting. But real-world errors can be
infrequent to manifest....
a year ago
How software fails is interesting. But real-world errors can be
infrequent to manifest. Fault
injection
is a formal-sounding term that just means: trying to explicitly
trigger errors in the hopes of discovering bad logic, typically
during automated tests.
Jepsen
and ChaosMonkey...
Electronics etc…
Measuring the HP 11720A Pulse Modulator and Coax Cables
Introduction
What is a pulse modulator and what are they used for?
The HP 11720A Pulse...
a year ago
Introduction
What is a pulse modulator and what are they used for?
The HP 11720A Pulse Modulator
Inside the HP 11720A
Measurement Setup for a Quick Testing Session
Pin Modulator Power Measurements with HP 432A
Cable Loss Measurements with HP 432A
Cable Power Measurements with...
On Life and Lisp
Vulkan 1.3 on the M1 in 1 month
u{text-decoration-thickness:0.09em;text-decoration-color:skyblue}
Finally, conformant Vulkan for the...
6 months ago
u{text-decoration-thickness:0.09em;text-decoration-color:skyblue}
Finally, conformant Vulkan for the M1! The new “Honeykrisp” driver is
the first conformant
Vulkan® for Apple hardware on any operating system, implementing the
full 1.3 spec without “portability”...
lcamtuf’s thing
The 8-bit (MCU) manifesto
Eight-bit microcontrollers aren't relics; they are a design philosophy. You might want to use them...
6 months ago
Eight-bit microcontrollers aren't relics; they are a design philosophy. You might want to use them more.
computers are bad
2023-03-24 docker
Lately I tend to stick to topics that are historic by at least twenty years,
and that does have a...
a year ago
Lately I tend to stick to topics that are historic by at least twenty years,
and that does have a lot of advantages. But I am supposedly a DevOps
professional, and so I will occasionally indulge in giving DevOps advice... or
at least opinions, which are sort of like advice but...
Notes on software...
Be someone who does things
I wrote last
month that
what you want to do is one of the most useful motivations in life. I
want to...
3 months ago
I wrote last
month that
what you want to do is one of the most useful motivations in life. I
want to follow that up by saying that the only thing more important
than wanting to do something is to actually do something.
The most valuable trait you can develop for yourself is to...
seangoedecke.com RSS...
Keep incidents boring
The internet is full of exciting incident war stories. Tough engineering problems, solved under...
over a year ago
The internet is full of exciting incident war stories. Tough engineering problems, solved under pressure by sleep-deprived developers. In an…
Matt Blewitt
A Love Letter to Giant Robots
Ah, giant robots. I grew up thinking they are the coolest things ever, and I still do. My first...
6 months ago
Ah, giant robots. I grew up thinking they are the coolest things ever, and I still do. My first exposure to them was probably through 1994’s BattleTech animated series, where Adam Steiner piloted an AXM-2N Axman, in its frankly ridiculous neon green and purple paint job. And from...
Louwrentius
An ode to the 10,000 RPM Western Digital (Veloci)Raptor
Introduction
Back in 2004, I visited a now bankrupt Dutch computer store called MyCom1, located at...
over a year ago
Introduction
Back in 2004, I visited a now bankrupt Dutch computer store called MyCom1, located at the Kinkerstraat in Amsterdam. I was there to buy a Western Digital Raptor model WD740, with 74 GB of capacity, running at 10,000 RPM.
When I bought this drive, we were still in...
Arduino Blog
This belt grinder uses an Arduino Opta micro PLC
A mainstay in most machine shops, the belt grinder assists in greatly increasing the speed at which...
2 months ago
A mainstay in most machine shops, the belt grinder assists in greatly increasing the speed at which parts can be ground down in a safer, more controlled manner compared to an angle grinder. As an effort to build a tool like this one for the first time, Julien Alexandre chose to...
Simply Explained
How I Use Alfred to Search My Obsidian Notes Faster (with Spotlight!)
In this post, I’ll show you how I integrated Obsidian into Alfred so I can search my vault from...
a year ago
In this post, I’ll show you how I integrated Obsidian into Alfred so I can search my vault from anywhere on my Mac. I just open Alfred, type “note” followed by my query, and see my search results. Hit enter and the correct note opens in Obsidian. Easy and quick!
Posts on Made of...
The Window Manager I Want
Since I first discovered ratpoison in 2005 or so, I've basically exclusively used tiling window...
over a year ago
Since I first discovered ratpoison in 2005 or so, I've basically exclusively used tiling window managers, going through, over the years, StumpWM, Ion 3, and finally XMonad. They've all had various strengths and weaknesses, but I've never been totally happy with any of them. This...
Louwrentius
Secure caching DNS server on Linux with DJBDNS
The most commonly used DNS server software is ISC BIND, the "Berkeley Internet
Name Daemon"....
over a year ago
The most commonly used DNS server software is ISC BIND, the "Berkeley Internet
Name Daemon". However, this software has a bad security track record and is in
my opinion a pain to configure.
Mr. D.J. Bernstein developed "djbdns", which comes with a guarantee: if anyone
finds a...
Home on Erik...
Interviewing is a noisy prediction problem
I have done roughly 2,000 interviews in my life. When I started recruiting, I had so much confidence...
over a year ago
I have done roughly 2,000 interviews in my life. When I started recruiting, I had so much confidence in my ability to assess people. Let me just throw a couple of algorithm questions at a candidate and then I'll tell you if they are good or not!
Lighthouse Blog
Rules improvement: filter based on content
a week ago
axio.ms
MicroMac, a Macintosh for under £5
A microcontroller Macintosh
This all started from a conversation about the RP2040 MCU, and building...
6 months ago
A microcontroller Macintosh
This all started from a conversation about the RP2040 MCU, and building a simple desktop/GUI for it. I’d made a comment along the lines of “or, just run some old OS”, and it got me thinking about the original Macintosh.
The original Macintosh was...
Arduino Blog
Adding proximity unlock to an old car with the Arduino Nano 33 BLE
A lot of newer cars have a really nifty feature called “proximity unlock,” which automatically...
5 months ago
A lot of newer cars have a really nifty feature called “proximity unlock,” which automatically unlocks the doors when the driver approaches while carrying their key fob. When paired with a push-to-start ignition switch, the driver never has to take their keys out of their pocket....
Home on Erik...
The hacker's guide to uncertainty estimates
It started with a tweet:
New years resolution: every plot I make during 2018 will contain...
over a year ago
It started with a tweet:
New years resolution: every plot I make during 2018 will contain uncertainty estimates
— Erik Bernhardsson (@bernhardsson) January 7, 2018 Why? Because I've been sitting in 100,000,000 meetings where people endlessly debate whether the monthly number of...
Computer Ads from...
Creative Computer Publishes Interview with the Guy Behind the Death Star Trench Run (1978)
An Interview With Star Wars Animator Larry Cuba
8 months ago
An Interview With Star Wars Animator Larry Cuba
Home on Erik...
ML at Twitter
I recently came across this paper describing how they do ML at Twitter.
TL;DR Their approach is...
over a year ago
I recently came across this paper describing how they do ML at Twitter.
TL;DR Their approach is pretty interesting. Everything is a Pig workflow and then they do everything as UDF's.
This approach seems pretty interesting.
Jonas Hietala
Habits to start
I haven’t been feeling quite as forward or as energetic lately. There are no set plans, habits or...
over a year ago
I haven’t been feeling quite as forward or as energetic lately. There are no set plans, habits or goals for this spring and I don’t have a clear vision of what to do currently but it also feels… fine? Maybe I will cruise in a lower gear for a while and rev up when my mood...
Arduino Blog
GLEWBOT scales buildings like a gecko to inspect wall tiles
A great deal of building maintenance expenses are the result of simple inaccessibility. Cleaning the...
7 months ago
A great deal of building maintenance expenses are the result of simple inaccessibility. Cleaning the windows are your house is a trivial chore, but cleaning the windows on a skyscraper is serious undertaking that needs specialized equipment and training. To make exterior wall...
Willem's Blog
Designing my own watch
Last month I received my custom made wristwatch from Switzerland, it is a minimalistic mechanical...
over a year ago
Last month I received my custom made wristwatch from Switzerland, it is a minimalistic mechanical annual calendar designed to be understated and true to the metal.
Arduino Blog
Meet the CapibaraZero, a multifunctional security and hacking tool based on the Nano ESP32
In recent years, tools such as the FlipperZero have become quite popular amongst hobbyists and...
a month ago
In recent years, tools such as the FlipperZero have become quite popular amongst hobbyists and security professionals alike for their small size and wide array of hacking tools. Inspired by the functionality of the FlipperZero, Project Hub user ‘andreockx’ created a similar...
computers are bad
2023-12-23 ITT Technical Institute
Programming note/shameless plug: I am finally on Mastodon.
The history of the telephone industry is...
a year ago
Programming note/shameless plug: I am finally on Mastodon.
The history of the telephone industry is a bit of an odd one. For the greatest
part of the 20th century, telephony in the United States was largely a monopoly
of AT&T and its many affiliates. This wasn't always the case,...
computers are bad
2024-03-01 listening in on the neighborhood
Last week, someone leaked a spreadsheet of SoundThinking sensors to
Wired.
You are probably asking...
9 months ago
Last week, someone leaked a spreadsheet of SoundThinking sensors to
Wired.
You are probably asking "What is SoundThinking," because the company rebranded
last year. They used to be called ShotSpotter, and their outdoor acoustic
gunfire detection system still goes by the...
Yazin Alirhayim
The best bank in Bahrain … is Meem
Yes, that’s right. The best bank in Bahrain is … Meem. This nomination will be especially shocking...
over a year ago
Yes, that’s right. The best bank in Bahrain is … Meem. This nomination will be especially shocking to those of you that read my last post that ripped the Meem app to shreds.
Criteria for ‘best bank’
My criteria for “best bank” isn’t the best user experience or customer support....
Home on Erik...
Presentation about Luigi
I like the editing!
over a year ago
Style over Substance
Peak Design quick-connect Leash and Cuff straps
My camera collection has been growing steadily over the years, but it’s been expanding even faster...
over a year ago
My camera collection has been growing steadily over the years, but it’s been expanding even faster during the COVID-19 lockdowns. Online shopping therapy keeps me sane while I’m cooped up at home, and with easy access to eBay and other auction sites my GAS – photographers...
Arduino Blog
How to customize your Arduino Cloud IoT dashboards on the go
The Arduino Cloud has long been a trusted platform for makers, engineers, and developers to manage...
2 months ago
The Arduino Cloud has long been a trusted platform for makers, engineers, and developers to manage their IoT projects with ease. From tracking sensor data to automating smart devices, the cloud enables seamless connectivity. Complementing this, the Arduino IoT Remote mobile app...
Willem's Blog
Go Viral on X
Learn how to go viral on X using simple logic in creating engaging posts.
a month ago
Learn how to go viral on X using simple logic in creating engaging posts.
Jonas Hietala
Plans for Summer of Code
My first summer job is now over, and after a weekend of rest, it is now time to plan for my second...
over a year ago
My first summer job is now over, and after a weekend of rest, it is now time to plan for my second summer job: IDA Summer of Code.
I will work a month, or 4 weeks, with contributing to rust! The only issue is, I have no idea where to start. I didn’t have a strict plan or a vision...
Jonas Hietala
Summer job at Configura
This is a wrap up of my 5 weeks at Configura as a summer internship. There were 6 interns and we had...
over a year ago
This is a wrap up of my 5 weeks at Configura as a summer internship. There were 6 interns and we had two teams doing different things. I worked with two other awesome guys and it was great!
The Premise
We had two assignments this summer. One was to create an optimized version of...
Louwrentius
Achieving 220 MB/s network file transfers using Linux Bonding
I wrote an article about the subject of getting beyond the limits of gigabit network file transfers....
over a year ago
I wrote an article about the subject of getting beyond the limits of gigabit network file transfers. My solution is to use multiple gigabit network cards and use Linux interface bonding to create virtual 2 gigabit network interfaces. The solution is to use mode 0 or round robin...
Computer Ads from...
American Heart Association
A PSA and an Ad
a month ago
Arduino Blog
Receive an alert when your device goes offline in Arduino Cloud
You’re managing a network of IoT sensors that monitor air quality across multiple locations....
a month ago
You’re managing a network of IoT sensors that monitor air quality across multiple locations. Suddenly, one of the sensors goes offline, but you don’t notice until hours later. The result? A gap in your data and a missed opportunity to take corrective action. This is a common...
Posts on Made of...
CVE-2010-4258: Turning denial-of-service into privilege escalation
Dan Rosenberg recently released a privilege escalation bug for Linux, based on three different...
over a year ago
Dan Rosenberg recently released a privilege escalation bug for Linux, based on three different kernel vulnerabilities I reported recently. This post is about CVE-2010-4258, the most interesting of them, and, as Dan writes, the reason he wrote the exploit in the first place. In...
latest projects -...
Analemmagraph
[Concept] Video of a day, one year in every frame
a year ago
[Concept] Video of a day, one year in every frame
Notes on software...
Benchmarking esbuild, swc, tsc, and babel for React/JSX projects
This is an external post of mine. Click
here
if you are not redirected.
over a year ago
This is an external post of mine. Click
here
if you are not redirected.
Vitalik Buterin's...
Don't overload Ethereum's consensus
a year ago
Abort Retry Fail
The History of Windows 2.0
Success and Litigation
a year ago
Avestura's Blog
Hiding a photo inside another photo
How to hide a small photo inside a larger photo?
over a year ago
How to hide a small photo inside a larger photo?
Willem's Blog
Is the Apple Watch the modern tool watch?
I tested the Apple Watch during my work in Frankfurt this week where I had to go inside an internet...
over a year ago
I tested the Apple Watch during my work in Frankfurt this week where I had to go inside an internet data centre.
Matt Blewitt
Riding the Risk Railway
When building and operating a user-facing system, especially one that is open to the public, it is...
over a year ago
When building and operating a user-facing system, especially one that is open to the public, it is important to consider the riskiness of a user, which can also be characterised as trustworthiness. These will typically be negatively correlated, with low trust indicating high risk...
Christian Selig
Qi2 is kinda underwhelming
Using MagSafe for portable battery packs has so many niceties versus Qi1:
Increased communication...
8 months ago
Using MagSafe for portable battery packs has so many niceties versus Qi1:
Increased communication with the device, allowing for better efficiency due to better thermal management and charging
Easily view the charge percentage of the external battery when first attaching it, and...
Lighthouse Blog
Updates December 01: UX improvements
a year ago
Posts on Made of...
CVE-2007-4573: The Anatomy of a Kernel Exploit
CVE-2007-4573 is two years old at this point, but it remains one of my favorite vulnerabilities. It...
over a year ago
CVE-2007-4573 is two years old at this point, but it remains one of my favorite vulnerabilities. It was a local privilege-escalation vulnerability on all x86_64 kernels prior to v2.6.22.7. It’s very simple to understand with a little bit of background, and the exploit is...
Good Enough
TIL: Rails has_one Nested Attributes Tweaking
In a project I'm working on right now I've been using a Rails nested form and a couple of things...
a year ago
In a project I'm working on right now I've been using a Rails nested form and a couple of things caught me off guard.
has_one Nested Form Sending id Attribute
In this case I have a nested form that is in a has_one relationship with the parent model.
I think this is a common thing...
computers are bad
2024-12-21 something over New Jersey
There were thousands of reports: strange aircraft, floating through the sky. A
retrospective sum of...
yesterday
There were thousands of reports: strange aircraft, floating through the sky. A
retrospective sum of press accounts finds that some 100,000 people were
reported to have witnessed aerial intruders. Despite the scant details
associated with most reports, an eager press repeated the...
Notes on software...
An intuition for distributed consensus in OLTP systems
Distributed consensus in transactional databases (e.g. etcd or
Cockroach) is a big deal these days....
10 months ago
Distributed consensus in transactional databases (e.g. etcd or
Cockroach) is a big deal these days. Most often under the hood are
variations of log-based Paxos-like algorithms such as MultiPaxos,
Viewstamped Replication, or Raft. While there are new variations that
come out each...
Construction Physics
The Influence of Bell Labs
We’ve talked previously about Bell Labs’ long, storied history as an innovation engine and a...
a month ago
We’ve talked previously about Bell Labs’ long, storied history as an innovation engine and a generator of new technology.
Louwrentius
Creating a basic ZFS file system on Linux
Here are some notes on creating a basic ZFS file system on Linux, using ZFS on Linux.
I'm...
over a year ago
Here are some notes on creating a basic ZFS file system on Linux, using ZFS on Linux.
I'm documenting the scenario where I just want to create a file system that can tollerate at least a single drive failure and can be shared over NFS.
Identify the drives you want to use for the...
Simply Explained
Building Air Quality Sensor: Luftdaten + Home Assistant
Luftdaten (now Sensor Community) is a global sensor network that measures air quality around the...
over a year ago
Luftdaten (now Sensor Community) is a global sensor network that measures air quality around the world. Best of all: it's open-source and anyone can build a sensor.I was very curious to see the air quality in my neighborhood, so I decided to build myself a sensor. And of course,...
Home on Erik...
More Luigi: Presentation from OSCON
I was in Portland, OR for a few days hanging out at OSCON. Was fun. I also talked a bit about...
over a year ago
I was in Portland, OR for a few days hanging out at OSCON. Was fun. I also talked a bit about Luigi:
Next week I'm presenting at the NYC Predictive Analytics meetup together with Blake Shaw from Foursquare.
Louwrentius
AI is critically important but not for you
Before Chat-GPT caused a sensation, big tech companies like Facebook and Apple were betting their...
7 months ago
Before Chat-GPT caused a sensation, big tech companies like Facebook and Apple were betting their future growth on virtual reality. But I'm convinced that virtual reality will never be a mainstream thing. If you ever used VR you know why:
A heavy thing on your head that messes up...
Posts on Made of...
Iron Blogger: Blogging for Beer
So, you may have noticed that I suddenly started updating this blog for the first time in a while....
over a year ago
So, you may have noticed that I suddenly started updating this blog for the first time in a while. The reason is that I’ve recently started an ongoing event with a whole bunch of friends around here to encourage us to blog more.
Like so many good ideas, it all started with a...
Abort Retry Fail
Housekeeping 20241208
Corrections, stats, and an update
2 weeks ago
Corrections, stats, and an update
Posts on Made of...
Automounting sshfs
For some time now, many of us around MIT have noticed just how awesome sshfs is. It gives a totally...
over a year ago
For some time now, many of us around MIT have noticed just how awesome sshfs is. It gives a totally lightweight way to access the remote filesystem of any machine you have ssh to, without requiring any extra setup on the host. I’ve been running for at least a year now with my...
Louwrentius
Mounting a file system or partition from a disk image
You cannot just make a disk copy with dd and then just mount it as a regular
disk. You must know...
over a year ago
You cannot just make a disk copy with dd and then just mount it as a regular
disk. You must know where the partition starts on the disk. So first, you need
to get the partition table with sfdisk:
sfdisk -l -uS image_file.dd
The output is something like:
Disk...
Posts on Made of...
Exploiting misuse of Python's "pickle"
If you program in Python, you’re probably familiar with the pickle serialization library, which...
over a year ago
If you program in Python, you’re probably familiar with the pickle serialization library, which provides for efficient binary serialization and loading of Python datatypes. Hopefully, you’re also familiar with the warning printed prominently near the start of pickle’s...
Notes on software...
Implementing MVCC and major SQL transaction isolation levels
In this post we'll build a database in 400 lines of code with basic
support for five standard SQL...
7 months ago
In this post we'll build a database in 400 lines of code with basic
support for five standard SQL transaction levels: Read Uncommitted,
Read Committed, Repeatable Read, Snapshot Isolation and
Serializable. We'll use multi-version concurrency control (MVCC) and
optimistic...
Louwrentius
Calculating EXT2 EXT3 EXT4 stride size when using RAID
When formatting a RAID device with an EXT filesystem, it is always advised to
specify a stride size....
over a year ago
When formatting a RAID device with an EXT filesystem, it is always advised to
specify a stride size. The format utility will take this stride size into
account when formatting a device. The stride size is the number you get when
you divide the 'chunck' size, as specified with...
Home on Erik...
Never attribute to stupidity that which is adequately explained by opportunity cost
Hanlon's razor is a classic aphorism I'm sure you have heard before: Never attribute to malice that...
over a year ago
Hanlon's razor is a classic aphorism I'm sure you have heard before: Never attribute to malice that which can be adequately explained by stupidity.
I've found that neither malice nor stupidity is the most common reason when you don't understand why something is in a certain way.
Notes on software...
Generating a full-stack application from a database
DBCore can now generate a TypeScript/React CRUD
UI that is automatically hooked up to the generated...
over a year ago
DBCore can now generate a TypeScript/React CRUD
UI that is automatically hooked up to the generated REST API (in Go).
The UI has full support for login, viewing (and filtering), editing,
and creating database entities.
PostgreSQL, SQLite and MySQL are supported.
How to use?
The...
Notes on software...
Writing an x86 emulator from scratch in JavaScript: 1. a stack and register machine
Better yet, take a look at this post walking through emulating x86 ELF binaries in Go:
Emulating...
over a year ago
Better yet, take a look at this post walking through emulating x86 ELF binaries in Go:
Emulating linux/AMD64 userland: interpreting an ELF binary
2. system calls
In this post we'll create a small virtual machine in JavaScript and
use it to run a simple C program compiled...
axio.ms
A small ode to the CRT
Built October 2018
I used to hate Cathode Ray Tubes. As a kid in Europe, everything flickered at...
over a year ago
Built October 2018
I used to hate Cathode Ray Tubes. As a kid in Europe, everything flickered at 50Hz, or made a loud whistle at 15.625KHz (back when I could still hear it). CRTs just seemed crude, “electro-brutalist” contraptions from the valve era. They were heavy, and...
Computer Ads from...
ProHance Technologies' Power Mouse
Even A Totally Souped up PC Is A Dog Without PowerMouse
3 months ago
Even A Totally Souped up PC Is A Dog Without PowerMouse
Arduino Blog
Create your own affordable Arduino-powered smart glasses
When Google Glass launched in 2013, the public opinion seemed to be “interesting technology, but the...
7 months ago
When Google Glass launched in 2013, the public opinion seemed to be “interesting technology, but the world isn’t ready yet.” Now that more than a decade has passed, the world may finally be ready — especially with the omission of controversial features like video recording. If...
Willem's Blog
Enter text without keys
Worn on your fingers, the Tap Strap recognises tapping and moving to control and type without a...
over a year ago
Worn on your fingers, the Tap Strap recognises tapping and moving to control and type without a mouse or keyboard!
Willem's Blog
Cutting Cloud Costs
Facing sky-high cloud costs, I found software optimisation vital. Discover how I saved 90% on cloud...
a year ago
Facing sky-high cloud costs, I found software optimisation vital. Discover how I saved 90% on cloud expenses!
Bryan Braun - Blog
Before you buy a domain name, first check to see if it’s haunted
In mid-2022 I bought a new domain name.
The name was musicbox.fun. I got it for a side-project, an...
a month ago
In mid-2022 I bought a new domain name.
The name was musicbox.fun. I got it for a side-project, an interactive online music box that I had built and hosted at musicboxfun.com. The new name was shorter and more quirky. I felt lucky to have grabbed it.
Unfortunately, musicbox.fun...
Jonas Hietala
Death to the Forum
Well it was fun while it lasted, but now it’s gone and it’ll stay gone for a long time I think. It...
over a year ago
Well it was fun while it lasted, but now it’s gone and it’ll stay gone for a long time I think. It was mainly a test to see if I could do it and I’m really proud of my styling of it but it’s deader than in a grave, which isn’t really surprising, and it bothered me that I didn’t...
computers are bad
2023-11-04 nuclear safety
Nuclear weapons are complex in many ways. The basic problem of achieving
criticality is difficult on...
a year ago
Nuclear weapons are complex in many ways. The basic problem of achieving
criticality is difficult on its own, but deploying nuclear weapons as
operational military assets involves yet more challenges. Nuclear weapons must
be safe and reliable, even with the rough handling and...
Jonas Hietala
Let's create a Tree-sitter grammar
One of my favorite features in Neovim is the Tree-sitter integration.
It allows for fast syntax...
9 months ago
One of my favorite features in Neovim is the Tree-sitter integration.
It allows for fast syntax highlighting that works well even in an error state (often the case when you’re editing code), and it has additional semantics (you can differentiate between function parameters and...
Arduino Blog
The new Auxivo EduExo Pro helps students with exoskeleton research
Emerging technologies initially develop at a slow pace and that is due in large part to the lack of...
5 months ago
Emerging technologies initially develop at a slow pace and that is due in large part to the lack of resources available to students. Complex technology is built on existing knowledge and higher education students need the tools to gain hands-on experience. To help educate the...
Opsbros
Saibah Securitah
It's always okay to buy the domain for the meme!
over a year ago
It's always okay to buy the domain for the meme!
Good Enough
TIL: Rails Testing
I had to figure out how to run browser-based tests in Rails again. In part that meant working around...
a year ago
I had to figure out how to run browser-based tests in Rails again. In part that meant working around my lack of Chrome. Rails System Tests with Safari.
I also had some problems with Rails Turbo Drive taking over EVERYTHING, which required me to figure out how to deal with a Rails...
Home on Erik...
There is no magic trick
(Warning: super speculative, feel free to ignore)
As Yogi Berra said, “It's tough to make...
over a year ago
(Warning: super speculative, feel free to ignore)
As Yogi Berra said, “It's tough to make predictions, especially about the future”. Unfortunately predicting is hard, and unsurprisingly people look for the Magic Trick™ that can resolve all the uncertainty.
Arduino Blog
This unique wall sconce welcomes you home with warm light
Have you ever walked through your front door after a long day of work and realized that your home...
a week ago
Have you ever walked through your front door after a long day of work and realized that your home just isn’t as inviting as it seems like it should be? While it may not work miracles, some nice and welcoming lighting can make a big difference. That’s why Lauren Palazzi made this...
Louwrentius
'Tip of the day: Scrolling in GNU screen'
Just the answer:
By default, on Debian, the scroll back buffer is about 1K lines. This can...
over a year ago
Just the answer:
By default, on Debian, the scroll back buffer is about 1K lines. This can be
changed in the .screenrc file in your home directory. The following example
sets the scroll back buffer to 5K lines.
defscrollback 5000
Set the scroll back buffer on the fly with:
First...
Home on Erik...
Machine, Platform, Crowd
I just bought Machine, Platform, Crowd: Harnessing Our Digital Future and discovered that it...
over a year ago
I just bought Machine, Platform, Crowd: Harnessing Our Digital Future and discovered that it mentions my blog – in particular the post When machine learning matters.
Ok, I lied a little bit. I didn't discover it serendipitously.
Neil Madden
A few programming language features I’d like to see
I enjoyed Hillel Wayne’s recent newsletter about microfeatures they’d like to see in programming...
a year ago
I enjoyed Hillel Wayne’s recent newsletter about microfeatures they’d like to see in programming languages. A “microfeature” is essentially a small convenience that makes programming in that language a bit easier without fundamentally changing it. I love this idea. I’m partial to...
Arduino Blog
Adding voice commands to a LEGO planetarium set with an Arduino Nano 33 IoT
From Mindstorms to Technic, LEGO has produced a wide variety of sets that give users new learning...
4 months ago
From Mindstorms to Technic, LEGO has produced a wide variety of sets that give users new learning and creative experiences, and for Electromaker’s Robin Mitchell, this was the LEGO planetarium set. With it, rotational input will cause the Earth and moon models to orbit around the...
Home on Erik...
Luigi Presentation @ NYC Data Science, Dec 16, 2014
More Luigi presentations!
over a year ago
More Luigi presentations!
computers are bad
2024-03-17 wilhelm haller and photocopier accounting
In the 1450s, German inventor Johannes Gutenburg designed the movable-type
printing press, the first...
9 months ago
In the 1450s, German inventor Johannes Gutenburg designed the movable-type
printing press, the first practical method of mass-duplicating text. After
various other projects, he applied his press to the production of the Bible,
yielding over one hundred copies of a text that...
Jonas Hietala
2016 in Review
See the previous reviews.
2016 Geek Achievements
Placed 2nd in Linköping’s Regional in...
over a year ago
See the previous reviews.
2016 Geek Achievements
Placed 2nd in Linköping’s Regional in Netrunner.
Won a couple of smaller Netrunner tournaments.
Got Veronica to play Game of Thrones with us. She beat us and she loved it!
Programmed a little bit of Elixir and a tiny bit of front...
Louwrentius
The sorry state of CoW file systems
I'd like to argue that both ZFS and BTRFS both are incomplete file systems with their own drawbacks...
over a year ago
I'd like to argue that both ZFS and BTRFS both are incomplete file systems with their own drawbacks and that it may still be a long way off before we have something truly great.
Both ZFS and BTRFS are two heroic feats of engineering, created by people who are probably ten times...
Style over Substance
CANARY Corrugated Cardboard Cutter
The CANARY corrugated cardboard cutter is definitely in my top 10 list of most useful purchases...
over a year ago
The CANARY corrugated cardboard cutter is definitely in my top 10 list of most useful purchases ever. During the COVID-19 lockdowns, we all started shopping online a lot more. The number of cardboard boxes in our house basically quadrupled overnight and cutting them down to size...
Home on Erik...
How to hire smarter than the market: a toy model
Let's consider a toy model where you're hiring for two things and that those are equally valuable....
over a year ago
Let's consider a toy model where you're hiring for two things and that those are equally valuable. It's not very important what those are, so let's just call them “thing A” and “thing B” for now.
Jonas Hietala
2012 in Review
Like the last two years I’m summarizing the year. At the end of the year like this it always feel...
over a year ago
Like the last two years I’m summarizing the year. At the end of the year like this it always feel like I didn’t accomplish much, but after the yearly summary it always feels better.
2012 Geek Achievements
Designed a processor which fulfills the Core Wars 88 standard. Includes a...
Jonas Hietala
Netrunner Lindhska Store Championship Örebro
After the awesomeness during the previous store championship, I decided to go to the store...
over a year ago
After the awesomeness during the previous store championship, I decided to go to the store championship at Lindhska Bokhandel in Örebro.
I brought a modified version of the same corp I used the last time, a Blue Sun kill deck and a new runner with Leela Patel. See the links for...
Vitalik Buterin's...
A Note on Metcalfe's Law, Externalities and Ecosystem Splits
over a year ago
Posts on Made of...
Distributed cloud builds for everyone
CPU cycles are cheaper than they have ever been, and cloud computing has never been more ubiquitous....
over a year ago
CPU cycles are cheaper than they have ever been, and cloud computing has never been more ubiquitous. All the major cloud providers offer generous free tiers, and services like GitHub Actions offer free compute resources to open-source repositories. So why do so many developers...
Good Enough
That time Marvel secretly endorsed my podcast with “the greatest comic book cover of all time”
This is a blog post that has nothing to do with Good Enough, but I was told “There needs to be a...
a year ago
This is a blog post that has nothing to do with Good Enough, but I was told “There needs to be a record of this somewhere on the internet!” and I don’t have my own blog.
Years ago my friend and I ran a radio show called Gorilla Madness, which we also spun out into a podcast after...
Louwrentius
Belkin Gigabit USB 2.0 adapter works perfectly with Linux
My ISP upgraded my internet connection speed to a whopping 120 Mbit. I am
using a mac mini as my...
over a year ago
My ISP upgraded my internet connection speed to a whopping 120 Mbit. I am
using a mac mini as my internet router. As you may be aware, the mini has
only one network interface, so I added a second interface using a USB to
ethernet adapter. This adapter was limited to 100 Mbit, so...
Louwrentius
Why I bought a digital projector (Panasonic PT-AT5000E)
I don't have a TV. I haven't been watching TV for more than 10 years. But I love to watch movies or...
over a year ago
I don't have a TV. I haven't been watching TV for more than 10 years. But I love to watch movies or great series like Dexter and Game of Thrones. Until recently, I watched movies or series on my 27" iMac. Twenty-seven inch is large for a computer screen but for a TV, it's quite...
Notes on software...
1 million page views
I was delighted to notice this morning that this site has recently
passed 1M page views. And since...
3 weeks ago
I was delighted to notice this morning that this site has recently
passed 1M page views. And since Murat
wrote
about his 1M page view accomplishment at the time, I felt compelled to
now too.
I started regularly blogging in 2018. For some reason I decided to
write a blog post...
Posts on Made of...
Conkeror
I’ve recently switched to Conkeror as my primary browser. It started life as a Firefox extension,...
over a year ago
I’ve recently switched to Conkeror as my primary browser. It started life as a Firefox extension, but nowadays it’s a standalone app built on top of Mozilla’s xulrunner, so it uses the Gecko rendering engine.
What it is, is an emacs implemented in Javascript, for the web. This...
Engineers Need Art
Building Quarter-Cab - Phase I
Lets build a simple virtual pinball controller to bring more immersion to your game.
7 months ago
Lets build a simple virtual pinball controller to bring more immersion to your game.
Louwrentius
Why filtering DHCP traffic is not always possible with iptables
When configuring my new firewall using iptables, I noticed something very
peculiar. Even if all...
over a year ago
When configuring my new firewall using iptables, I noticed something very
peculiar. Even if all input, forward and output traffic was dropped, DHCP
traffic to and from my DHCP server was not blocked even if there were no
rules permitting this traffic.
I even flushed all rules,...
Louwrentius
Compiling Multicore PAR2 on Ubuntu 12.04 LTS Precise Pangolin
If you want to compile PAR2 with multicore support on Linux, it may not work right away from source....
over a year ago
If you want to compile PAR2 with multicore support on Linux, it may not work right away from source. I used this version of PAR2 with multicore support.
Update 2015: the original link is dead, I foud a copy of the source and put it on my own site here for you to download.
First,...
Arduino Blog
Making fire detection more accurate with ML sensor fusion
The mere presence of a flame in a controlled environment, such as a candle, is perfectly acceptable,...
4 months ago
The mere presence of a flame in a controlled environment, such as a candle, is perfectly acceptable, but when tasked with determining if there is cause for alarm solely using vision data, embedded AI models can struggle with false positives. Solomon Githu’s project aims to lower...
./techtipsy
I tried out the CyberPower UT650EG UPS
After some spicy feedback to my post where a ThinkPad T430 acted as a server,
I decided to try out...
over a year ago
After some spicy feedback to my post where a ThinkPad T430 acted as a server,
I decided to try out one UPS that was recommended on the basis of it being much
more power efficient compared to the APC UPS that I previously ran.
That UPS? CyberPower UT650EG.
Why switch out a...
Style over Substance
DIY: Use an IKEA VINDRIKTNING air quality sensor in Home Assistant with ESPHome
IKEA has released some interesting new products lately, focused on air quality. In this product...
over a year ago
IKEA has released some interesting new products lately, focused on air quality. In this product line, one unit that stands out is the VINDRIKTNING air quality sensor. This cheap (just €9,99) sensor measures the air quality in your home, using a simple traffic light scheme to...
Jonas Hietala
The T-34/0 keyboard layout
This is an update to the T-34 keyboard layout I’ve been using for a solid number of weeks. While...
over a year ago
This is an update to the T-34 keyboard layout I’ve been using for a solid number of weeks. While there are more changes I’d like to try, I’m quite pleased with these changes so I figured I might as well immortalize them before I explore further. (And I do have a bunch of big...
Vitalik Buterin's...
Ethereum has blobs. Where do we go from here?
8 months ago
Christian Selig
Recreating Apple's beautiful visionOS search bar
Many of Apple’s own visionOS apps, like Music, Safari, and Apple TV, have a handy search bar front...
9 months ago
Many of Apple’s own visionOS apps, like Music, Safari, and Apple TV, have a handy search bar front and center on the window so you can easily search through your content. Oddly, as of visionOS 1.1, replicating this visually as a developer using SwiftUI or UIKit is not...
Notes on software...
Writing a simple JSON path parser
Let's say we want to implement a simple list filtering language so
we can enter a.b = 12 and return...
over a year ago
Let's say we want to implement a simple list filtering language so
we can enter a.b = 12 and return only results in a
list where the a column is an object that contains a
field b that is set to the value 12. What would a
filter(jsonPath, equals, listOfObjects) function...
Neil Madden
On PBKDF2 iterations
There has been a lot of discussion recently around the LastPass breach, especially with regards to...
a year ago
There has been a lot of discussion recently around the LastPass breach, especially with regards to the number of PBKDF2 iterations applied to the master password to derive the vault encryption key. Other people have already dissected this particular breach, but I want to more...
Simply Explained
Migrating This Blog From Jekyll to Eleventy
Jekyll has been powering this site for many years now. It replaced my WordPress setup, and I haven't...
over a year ago
Jekyll has been powering this site for many years now. It replaced my WordPress setup, and I haven't looked back. Over the last few months, I have become fed up with Jekyll. It's slowing me down. Time to replace it with something new and shiny!
Home on Erik...
Annoy 1.10 released, with Hamming distance and Windows support
I've been a bit bad at posting things with a regular cadence lately, partly because I'm trying to...
over a year ago
I've been a bit bad at posting things with a regular cadence lately, partly because I'm trying to adjust to having a toddler, partly because the hunt for clicks has caused such a high bar for me that I feel like I have to post something Pulitzer-worthy.
Vitalik Buterin's...
Possible futures of the Ethereum protocol, part 6: The Splurge
a month ago
./techtipsy
Stupid project ideas: the War Machine
LinusTechTips has some pretty great videos about building
insane PC and server setups, such...
over a year ago
LinusTechTips has some pretty great videos about building
insane PC and server setups, such as:
unboxing and deploying petabytes of storage
7 gamers, 1 CPU
building sleeper PC-s
testing sketchy CPU-s
opening up a 100TB SSD
I have the ideas, but not the budget of LinusTechTips, so...
Willem's Blog
Fietselfstedentocht 2017
Cycling the 235KM long Fietselfstedentocht through Friesland
over a year ago
Cycling the 235KM long Fietselfstedentocht through Friesland
Odds and Ends of...
Odds and Ends #42: An Elizabeth Line extension, some mad planning law nonsense, and the world's most...
Your regular round-up of interesting links
a month ago
Your regular round-up of interesting links
./techtipsy
The little Wi-Fi AP that could
I have a bad habit of testing things whenever a “good” idea pops into my head. This is a short...
over a year ago
I have a bad habit of testing things whenever a “good” idea pops into my head. This is a short overview of one of them.
The Orange Pi Zero is a SBC (single board computer) that has a slow 32-bit ARM 4 core CPU, 512MB of RAM and no display output.
It’s actually quite OK for many...
Willem's Blog
Syncing files seamlessly between smartphone and tablet
In order to optimise my workflow, I was looking for a way to seamlessly access the same files on...
over a year ago
In order to optimise my workflow, I was looking for a way to seamlessly access the same files on both my computer and smartphone. Read along to find out how I did it.
Home on Erik...
Snakebite
Just promoting Spotify stuff here: check out the Snakebite repo on Github, written by Wouter de Bie....
over a year ago
Just promoting Spotify stuff here: check out the Snakebite repo on Github, written by Wouter de Bie. It's a super fast tool to access HDFS over CLI/Python, by accessing the namenode directly over sockets/protobuf.
Spotify's developer blog features a nice blog post outlining what...