New

The latest blog posts to take off on Hacker News. 14,540 posts.

Software Engineering
Any year
2740

Pin

The Pin type (and the concept of pinning in general) is a foundational building block on which the rest of the the Rust async ecosystem stands. Unfortunately, it has also been one of the least accessible and most misunderstood elements of async Rust. This post is meant to explain what Pin achieves, how it came to be…

2743

Ruby methods are colorless

👋🏼 This is part of series on concurrency, parallelism and asynchronous programming in Ruby. It’s a deep dive, so it’s divided into 12 main parts: Your Ruby programs are always multi-threaded: Part 1 Your Ruby programs are always multi-threaded: Part 2 Consistent, request-local state Ruby methods are colorless The…

2755

Automated Test-Case Reduction

In a previous post, I used a simple interpreter bug to demonstrate the research skill of manually reducing test cases. This time, I show off the excellent Shrinkray reducer to see how it can automate the same process. The tricky part when using automated test-case reducers is writing an interestingness test that…

2757

I'm not a fan of strlcpy(3)

strlcpy(3) is an OpenBSD function which is often hailed as a safer replacement for strcpy(3) and/or strncpy(3) . One of the obvious issues with strlcpy is that it's not safe if src isn't null-terminated. However, that's not the reason I don't like strlcpy. In fact despite knowing this, I used to think it was an okay…