Porting USB applications to the web. Part 1: libusb
Learn how code that interacts with external devices can be ported to the web with WebAssembly and Fugu APIs.
Topics /
The most popular blog posts about software engineering on Hacker News. 1,551 posts.
Learn how code that interacts with external devices can be ported to the web with WebAssembly and Fugu APIs.
Binding Rust with Qt in a safe and idiomatic way using CXX as bridge, macro expansion, and code generation through CXX-Qt
In this article, we provide a holistic view of the Portable Operating System Interface (POSIX) abstractions by a systematic review of their historical evolution. We discuss some of the key factors that drove the evolution and identify the pitfalls that make them infeasible when building modern applications.
We’ve been building Hydrogen for more than a year. Here’s a look behind the scenes at how we did it, what we learned from making big bets, and what it was like building a new framework from the ground up on experimental technology.
With the latest release, markdown gains programming language like tooling in VSCode
I will try to solve all of the advent of code with as little human input as possible
From the highly eclectic blog of Mark Dominus
Turborepo 1.2 introduces improved task filtering, artifact signing and integrity, human-readable and JSON dry runs, and more!
Markdoc delivers a good user experience without compromising the authoring experience. It enables writers to express interactivity and simple page logic without mixing code and content.
Emacs has a shell written entirely in Emacs Lisp. Here's how you master Eshell, a versatile and powerful shell capable of supplanting bash or zsh as your daily driver.
WebSocket (WS) connections are pretty neat. I’ve gotten to play around with them before, both for personal and professional projects, but my view has mostly been at a high level and concerned mainly with the things that I can build on top of them. I haven’t spent much time digging through the protocol. I thought it…
Happy with my recent breakthrough in understanding C integer divisions after weeks of struggle, I was minding my own business having fun writing integer arithmetic code. Life was good, when suddenly… zsh: segmentation fault (core dumped) .
Hey! Target reached: Bragging time! I mean, this is the irregular Emacs update … stats … report… thing… So, I’m gamifying Emacs development by setting myself a goal of…
Today I got an email titled ‘Your Manuscript Account Balance’ which said: Your Manuscript account is now in arrears in the amount of $31.25. Use this link to specify a credit card for y…
This post is the fourth part of a three-part series 1 describing work that I have been doing to improve the Cranelift compiler. In this post, I'll describe the work that went into regalloc2 , a new register allocator I developed over the past year. The allocator started as an effort to port IonMonkey's register…
If LZ compression is compilation , what other instructions are useful to add? I've spent the last several years, off and on, trying to figur...
Lessons learned from 10 years at Google
The time-based job scheduler cron(8) has been around since Version 7 Unix, and its crontab(5) syntax is familiar even for people who don’t do much Unix system administration. It’s standardised , reasonably flexible, simple to configure, and works reliably, and so it’s trusted by both system packages and users to…
Nowadays, we have amazing engines like Unity and Unreal. But how does this work exactly? Learning 3D rendering or building your own engine is a daunting task. While there are some tutorials out there,
For more than two years, I've been using Tailwind CSS almost every working day for company projects and a lot of weekends for my side projects.
GitHub secret scanning protects users by searching repositories for known types of secrets. By identifying and flagging these secrets, our scans help prevent data leaks and fraud. We have partnered…
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
write Python that’s faster than C by optimizing your code, adding standard type annotations, and using Mypyc.
Many users of Python deprioritize performance in favor of soft benefits like ergonomics, business value, and simplicity. Users who prioritize performance typically end up on faster compiled languages like C++ or Java.
<img src="https://endler.dev/2022/zer…
In this post I explain a little about how to use Java’s Vector APIs, attempt to explain how they turn out fast, and then use them to implement a sorting algorithm 3x faster than Arrays.sort . I then explain some problems I found, and how I resolved them. Supporting code is published here .