The title of this post is clearly a reference to the classic article PHP a fractal of bad design. I’m not saying Java is as bad as that, but that it has its ...| blog.habets.se
A while ago I was asked why I wrote Sim in C++ instead of Go. I stumbled upon my answer again and realized it could be a blog post.| blog.habets.se
1. Go has exceptions and return values for error| blog.habets.se
Previous posts Why Go is not my favourite language and Go programs are not portable have me critiquing Go for over a decade.| blog.habets.se
I bought [a GPS Disciplined Oscillator (GPSDO)][gpsdo], because I thought it'd be fun for various projects. Specifically I bought [this one][gpsdohw]. I started by calibrating my [ICOM IC-9700][ic9700]. I made sure it got a GPS lock, and connected it to the 9700 10MHz reference port, with a 20dB attenuator inline, just in case. Ok, the receive frequency moved a bit, but how do I know it was improved? My [D75][d75] was still about 200Hz off frequency. [![IC9700 screenshot showing D75][img-d75]...| Blargh
I’ve kept working on my SDR framework in Rust called RustRadio, that I’ve blogged about twice before. I’ve been adding a little bit here, a little bit there,...| blog.habets.se
I have heard and been heard via QO-100! As a licensed radio amateur I have sent signals via satellite as far away as Brazil.| blog.habets.se
Around the turn of the century we started to get a bigger need for high capacity web servers. For example there was the C10k problem paper.| blog.habets.se
It finally happened! A raspberry pi like device, with a RISC-V CPU supporting the v extension. Aka RVV. Aka vector instructions. I bought one, and explored it a bit. SIMD background First some background on SIMD. SIMD is a set of instructions allowing you to do the same operation to multiple independent pieces of data. As an example, say you had four 8 bit integers, and you wanted to multiply them all by 2, then add 1. You could do this with a single operation without any special instructions...| Blargh
Short post today.| blog.habets.se
This is my response to Rob Pike’s words On Bloat.| blog.habets.se
Connection coalescing is the dumbest idea to ever reach RFC status. I can’t believe nobody stopped it before it got this far. It breaks everything. Thus starts my latest opinion post. What is connection coalescing? It’s specified in the RFC for HTTP/2 as connection reuse, but tl;dr: If the IP address of host A and B overlap, and host A presents a TLS cert that also includes B (via explicit CN/SAN or wildcard cert), then the client is allowed to send HTTP requests directed to B on the conn...| Blargh
After having written a user space AX.25 stack in C++, I got bitten by the Rust bug. So this is the third time I’ve written an AX.25 stack, and I’ve become ex...| blog.habets.se
When creating packet radio applications, there are several options on how to get the packets “out there”, and get them back. That is, how to interface with t...| blog.habets.se
Lately I’ve been thinking about a better data protocol for amateur radio.| blog.habets.se
While I have built a file transfer protocol for AX.25, I also wanted to try old BBS era protocols. They’re more tested and standardized.| blog.habets.se