Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 7,298 posts.
Atom's autocomplete just got better
We are archiving Atom and all projects under the Atom organization for an official sunset on December 15, 2022.
CockroachDB 1.1 Released: Production Made Easy
CockroachDB 1.1 includes support for faster migrations from legacy databases, simplified cluster management, and improved performance.
A guide to threads in Node.js
While it is single-threaded, Node.js uses worker threads that allow for a separate execution thread that runs alongside the main thread.
Compilers for Free
I’m fascinated by programming, and by metaprogramming in particular. When Ruby programmers talk about metaprogramming they usually mean programs that write programs , because Ruby has various features — like BasicObject#instance_eval , Module#define_method and BasicObject#method_missing — which make it possible to…
GPU Architecture Types Explained
The behavior of the graphics pipeline is practically standard across platforms and APIs, yet GPU vendors come up with unique solutions to accelerate it, the two major architecture types being tile-based and immediate-mode rendering GPUs. In this article we explore how they work, present their strengths/weaknesses, and…
Global Interpreter Lock, or how to kill it
People that listened to my (Armin Rigo) lightning talk at EuroPython know that suddenly, we have a plan to remove the Global Interpreter Loc...
Forgejo
After many days of hard work and preparation by a team of former Gitea maintainers and enthusiasts from the FOSS community, we are proud to announce that the Forgejo project is now live.
Fuzzing a DNS parser written in Go
Here at CloudFlare we are heavy users of the github.com/miekg/dns Go DNS library and we make sure to contribute to its development as much as possible. Therefore when Dmitry Vyukov published go-fuzz and started to uncover tens of bugs in the Go standard library, our task was clear.
A Comparison of Go Web Frameworks
The Corner is Square's technical blog covering software engineering, APIs, data, open source and more.
Using Python and OCaml in the same Jupyter notebook
The cover image is based on Jupiter family by NASA/JPL.
Making Your Own Tools
Listen in your podcast player by searching for Feeling of Computing , or via Apple Podcasts | Overcast | RSS
Accelerated “Ray Tracing in One Weekend” in CUDA
Recent announcements of NVIDIA’s new Turing GPUs, RTX technology, and Microsoft’s DirectX Ray Tracing have spurred a renewed interest in ray tracing. Using these technologies vastly simplifies the…
"Unstripping" binaries: Restoring debugging information in GDB with Pwndbg
GDB loses significant functionality when debugging binaries that lack debugging symbols (also known as “stripped binaries”). Function and variable names become meaningless addresses; setting breakpoints requires tracking down relevant function addresses from an external source; and printing out structured values…
Stetho: A new debugging platform for Android
Visit the post for more.
What Every C Programmer Should Know About Undefined Behavior #3/3
In Part 1 of the series, we took a look at undefined behavior in C and showed some cases where it allows C to be more performant than "safe" languages.
Clang++ Builds Boost
Boost is a collection of open-source, peer-reviewed C++ libraries that's well-known for having many good utility components for C++ programmers. It's also well-known for using bleeding-edge C++ techniques, such as extensive template and preprocessor metaprogramming, that have pushed many C++ compilers beyond their…
Nearly all binary searches and mergesorts are broken (2006)
Posted by Joshua Bloch, Software EngineerI remember vividly Jon Bentley's first Algorithms lecture at CMU, where he asked all of us incoming Ph.D. ...
Your code may be elegant, but mine works
OmniTI Seeds: leaf; This article expresses an opinion or just a downright rant.
Android libstagefright still exploitable
Update (2015-08-13 1:16pm CST): We’ve been in contact with Zimperium and are working with them to provide coverage for detection of this flaw through their Stagefright Detector app. They have been very responsive (more so than the affected vendor) and we plan to alert them of similar flaws we’ve recently discovered…
PEP 584 – Add + and – operators to the built-in dict class
This PEP proposes adding merge (|) and update (|=) operators to the built-in dict class.
GPT-4 Turbo with Vision is a step backwards for coding
OpenAI’s GPT-4 Turbo with Vision model scores worse on aider’s code editing benchmarks than all the previous GPT-4 models. In particular, it seems much more prone to “lazy coding” than the existing GPT-4 Turbo “preview” models.
Roto: A Compiled Scripting Language for Rust
By Terts Diepraam We are working on an embedded scripting language for Rust. This language, called Roto, aims to be a simple yet fast and reliable scripting language for Rust applications. The need for Roto comes from Rotonda, our BGP engine written in Rust. Mature BGP applications usually feature some
Developer Preview of Android O
News and insights on the Android platform, developer tools, and events.