Fix Terminals
I want terminal keypresses to Just Work. What do I mean Just Work? I mean programs in a simple orthogonal way, can determine the key that was pressed, and this model should easily map to the user's expectation.
Topics /
The most popular blog posts about software engineering on Hacker News. 21,842 posts.
I want terminal keypresses to Just Work. What do I mean Just Work? I mean programs in a simple orthogonal way, can determine the key that was pressed, and this model should easily map to the user's expectation.
No-one really likes engineering war stories, but this one's relevant because there's a moral to it. I've talked before about defining technical debt as technical decisions that provide immediate value, but with long-term negative impact if they aren't cleaned up. Sometimes introducing technical debt
Hi all. Here is (an extract of) a short summary paper about my current position on Software Transactional Memory as a general tool in the ...
The Pragmatic Pragmatic Programmer - Rogério Chaves
Describing the way architectures for UIs have evolved over the years, in particular the many and often misunderstood definitions for Model-View-Controller.
What if you could let Claude and Codex work together as pair programmers, talking to each other directly? One of them as the main worker and the other as a reviewer.
This is amazing. HTML5. No Flash. No Java. Works on iPhone. Related posts: ePubs and iBooks and whether we care about the EULA. Ugh. More Flash. Do not read. Flash: a legacy technology Amazing ePubs
How I built LoginWithHN, an OAuth2+OpenID Connect provider for HackerNews.
Over the last few weeks, I’ve been devoting my free time to fleshing out the theory behind non-lexical lifetimes (NLL). I think I’ve arrived at a pretty good point and I plan to write various posts talking about it. Before getting into the details, though, I wanted to start out with a post that lays out roughly how…
Under READ COMMITTED isolation, PostgreSQL can sometimes miss rows when performing UPDATE, DELETE, SELECT FOR UPDATE, or SELECT FOR SHARE statements. This is due to the EvalPlanQual recheck PostgreSQL adds to these statements to prevent lost-update anomalies.
This document explains the WebAssembly tail calls proposal and demonstrates it with some examples.
The talk I released today is called " Media for Thinking the Unthinkable ". It's the most personal talk I've given, in that it was driven by my own motivations as opposed to someone else's.
Learn what windowing is, the difference between the four types of windows (hopping and tumbling, or session and sliding), and how to create them.
We have added a new feature: time-travel queries. To our knowledge, we are the first database to have implemented the them.
A new way to make games
A computer scientist working in open source towards a more hopeful future.
Hello Rustaceans! Sometimes, good things come in many. For example: birthdays! 🎉 As it just so happens, we have 3 big things to celebrate: It's the 10th anniversary of Florian publicly posting his first Rust code on September 28th, 2013! Ferrous...
For sure easier than solving it in SAT!
JSON is important, damn near everything that we do as programmers or operators involves JSON at some point. JSON decoding is expensive, if your product talks JSON then performance of marshalling data in and out of JSON is important. This is a talk about designing an efficient replacement for encoding/json.Decoder .
Emulating win32 on Mac using Apple's x64 emulator.
In a previous post SIMD Matters I discussed the big wins I got from graph coloring to make the contact solver faster. That same approach exists in Box3D. I like to call this approach “wide SIMD”. The idea is to process multiple work units at the same time. In the contact solver this means solving four contact points…
Challenging your software modelling techniques to be simpler
OCaml 4.03 is branched and a first release candidate is imminent, so it seems like a good time to take stock of what’s coming.
Learn more about how all browser vendors, and other stakeholders, have come together to solve the top browsers compatibility issues identified by web developers. Interop 2022 will improve the experience of developing for the web in 15 key areas.