Things you can’t do in Rust (and what to do instead)
Transposing other language paradigms to Rust often reveals unforeseen issues. Here are some limitations of Rust and how to work around them.
Topics /
The most popular blog posts about software engineering on Hacker News. 21,819 posts.
Transposing other language paradigms to Rust often reveals unforeseen issues. Here are some limitations of Rust and how to work around them.
So You Want To Write Your Own CSV code? Fields separated by commas and rows separated by newline. Easy right? You can write the code yourself in just a few lines.
The Maersk Triple-E Class container ship is 1,300 feet long, carries over 18,000 containers across 11,000 miles between Europe and Asia, and… Its entire crew can fit inside a passenger van. As a former naval architect and a current marketing consultant to startups, I found that
Summary of CVE-2021-4228 (Log4Shell), trivial RCE in log4j, a common Java logging framework. Includes list of affected platforms.
It’s now nearly a year that I started writing non-trivial amounts of C codeagain (the first sokol_gfx.h commit was on the 14-Jul-2017), so I guess it’stime f...
Discover some of the most common software bugs that businesses are struggling with and unlock effective strategies to overcome them.
Why self-host Zig?<br> For great justice, of course… and also a few more reasons actually.
Discover the latest news and app updates, stories, company insights, and plenty more about Discord, all in one place.
As I’m getting older I look back on all the things I’ve done as a creative developer, and I see so many cool projects! But I never wrote down any development
PyPy 4.0.0 We’re pleased and proud to unleash PyPy 4.0.0, a major update of the PyPy python 2.7.10 compatible interpreter with a Just In ...
I’m not talking about skill, knowledge, or convincing a world focused on radical acceleration that optimization is necessary. Performance optimization is hard because it’s fundamentally a brute-force task, and there’s nothing you can do about it. This post is a bit of a rant on my frustrations with code optimization…
Check out what we learned from shipping our busiest Go service in production—we found 3 bugs in the Go MySQL driver.
Learn about the core building blocks of the WebSocket technology and discover the benefits of event-driven architectures with WebSockets.
9 Must-Read Books for Software Engineers in 2023 — As a software engineer, staying up-to-date with the latest developments and best practices...
This week I took a crack at writing a branchless UTF-8 decoder: a function that decodes a single UTF-8 code point from a byte stream without any if statements, loops, short-circuit operators, or other sorts of conditional jumps. You can find the source code here along with a test suite and benchmark:
I’ve been getting madder and madder about the increasing use of dorky web links; for example, twitter.com/timbray has become twitter.com/#!/timbray . Others have too; see Breaking the Web with hash-bangs and Going Postel . It dawns on me that a word of explanation might be in order for those who normally don’t worry…
There's a fundamental tension in authorization. Is it business logic or authorization logic? Should it be in the app, or separate? Let’s talk about what makes a
A blog about modern PHP, the web, and programming in general. Follow my newsletter and YouTube channel as well.
I do enterprise cloud stuff at Google, also at k8sfiles.com. Words are my own.
There are tons of blog posts on the internet about how frameworks differ and which one to pick for your next web project. Usually they cover a few aspects of the framework like syntax, development setup, and community size. This isn't one of those posts.
My previous article, “We don’t need a string type“, caused a bit of stir. Though the feedback is mixed, there is a common theme of a string being a useful feature. After doing a bit more research I can determine only one thing: most current string types are broken! Many of us believe our strings […]
When Best Practices Are Best
It appears that the clang-11.0.0 compiler mis-compiles sqlite3.c version 3.32.1. I have checked in a change to SQLite that appears to work around the problem. But there might be other bugs. Therefore, use clang-11.0.0 with caution and test your applications carefully!
Reflections on my time at Electronic Arts and techniques used to improve iteration times in video game development
An explanation of how to implement a simple hash table data structure, with code and examples in the C programming language.