JetBrains Noria
This is a multipart series on building Fleet, a next-generation IDE by JetBrains. Part I – Architecture OverviewPart II – Breaking Down the EditorPart III – State ManagementPart IV – Distributed Tr
Topics /
The most popular blog posts about software engineering on Hacker News. 21,834 posts.
This is a multipart series on building Fleet, a next-generation IDE by JetBrains. Part I – Architecture OverviewPart II – Breaking Down the EditorPart III – State ManagementPart IV – Distributed Tr
The project to port all of the C code in Emacs to Rust has been going quite well of late, and a progress report is in order.
Abstract Syntax Tree is an extremely useful tool. It provides a tree representation of a source code, that can be traversed to parse the code while understanding the code’s language constructs. In this article, we explain how we have used ASTs to write IntelliPatch scripts that can...
Manage entire Python projects and even Python itself with a single unified tool.
The efficiency of Operating Systems (OSes) has always been in the spotlight of systems researchers, ever since the seminal Dijkstra’s THE multiprogramming system in early 60s. But the reason …
I had been programming in Fortran and assembler for a number of years when I got my first personal computer. It was exciting. On the first generation PC one had to toggle in a paper tape loader from front panel switches, byte by byte, then start the paper tape reader and then one could output to the led on the front…
This is a whirlwind tour of some of the cool new features that appeared in Clojure in the past few years. I find it fascinating how one good idea (reducers) morphed into another (transducers), and ended up mating with yet another, apparently unrelated concept (concurrent pipelines) to produce some really powerful…
Updated (2017): See .NET Core Releases to learn about newer releases. We are excited to announce the release of .NET Core 1.1 RTM, the first “Current” release. You can start creating .NET Core 1.1 apps, today, in Visual Studio 2015, Visual Studio 2017 RC, Visual Studio Code and Visual Studio for the Mac. We used the…
Bryan Summersett's home page.
At the beginning of this decade (2010), a few of us Haskellers were exploring how best to do client-side web programming. We didn’t want to write JavaScript. There’s a surprising number of techniques we tried to avoid doing so. There was work coming from academia and industry. Here’s a history of my own experience in…
Our sans-IO WireGuard implementation in Rust, optimized for ease of use, security and performance through a parallel-friendly and idiomatic API.
You can use CSS to add some simple functionality to HTML <dialog> elements!
How do Ruby & Python profilers work?
…"‘Our speech interposes itself between apprehension and truth like a dusty pane or warped mirror. The tongue of Eden was like a flawless glass; a light of total understanding streamed through it. Thus Babel was a second Fall.’ And Isaac the Blind, an early Kabbalist, said that, to quote Gershom Scholem’s translation…
(Note: This article was written at the end of 2012 and is out of date. I will update it at some point, but until then, please keep that in perspective.)
In the previous episode of “Simple Changes to Shrink Chrome” I discussed how deleting ‘const’ from a few key locations could lead to dramatic size savings, due to a VC++ com…
Check out a cool project that leverages Stack Overflow Data and Google's Cloud AI to predict what tags would work best on Stack Overflow questions.
A one-pass compiler emits assembly (or binary code) right during parsing, without creating an intermediate representation, such as an AST. This is a rare technique that was used back in the days when computer memory was scarce. This limited both the language features that were possible and the quality of the produced…
The Khronos Group announces the release of the Vulkan 1.2…
Introduction There are many developers between us. We write a tons of code every day. Sometime, it is even not a bad code :) Every of us ...
“It’ll only take me a few hours to implement the feature,” we sometimes say. But after finishing, we find that every few weeks, we’re either fixing a bug with the feature, explaining it to another eng
Dive into a world where running any WASI and WASIX package in your browser is a breeze. Whether it's Python, Bash, FFmpeg, or [any package published](<h...
A C program that writes "hello, world!" to the console using inline assembly instead of standard library functions, demonstrating direct system call invocation.
The concept of abstraction in software development is frequently misunderstood and confused with indirection. This is partially because of the keywords abstract and interface in statically-typed la...
If I give a programmer a string such as "9223372036854775808" and I ask them to convert it to an integer, they might do the following in C++: std::string s = .... uint64_t val; auto [ptr, ec] = std::from_chars(s.data(), s.data() + s.size(), val); if (ec != std::errc()) {} // I have an error ! // val … Continue reading…
Although I'm a happy (also paying) user of GitHub's offerings, there are times when I prefer to host a private repository on a server I control. Setting up your own Git server can be useful if you're isolated from the public internet, if you're subject to inflexible regulations, or if you simply want features…
An in-depth exploration of maintenance, and a powerful argument for its civilizational importance.