Hash tables allow quick and scalable insert, search and delete, and are relevant to a large number of computer science problems.
While an older article, it made use of LLVM as a backend to generate code. It describes a complete compiler for a real programming language and is organized to demonstrate how to design and implement the successive phases of the compilation process.
A good way to learn any programming language is to repeat the same process in other languages. The author shares a skeleton process to do this by focusing on algorithm, TDD, structuring code, and learning the tool.
Crystal is a statically-typed, compiled language that achieves performance close to C/C++ while having a syntax as readable as Ruby.
Learn how Stripe manage their API: future-proofing with versioning.
This post describes how a bug in packet sockets was found and how to exploit it to escalate privileges.
This blog post will describe the implementation of Oracle’s VirtualBox protected process and detail three different, (but now fixed), ways of bypassing the protection and injecting arbitrary code into the process.
In July, Node.js released a fix for a hash flooding vulnerability. This post provides some background and history on the vulnerability and the eventual solution.
What if I told you someone could hijack your wireless mouse and click on your behalf? This post describe this kind of attack.
Piping curl to bash is dangerous. Many projects no longer advertise this installation method. But what could go wrong with piping curl to apt-key?
On the modern Internet, cryptography is typically squeezed into a single, incredibly complex layer, TLS, which had three entirely unrelated bugs discovered in three months in 2014. What if cryptographic functions were spread out over more layers?
Two parts series about management configuration with ConfigMap and Secrets.
The author recently released OpenFaas, a serverless framework for Docker & Kubernetes. Now he shows us how to create our own Serverless Raspberry Pi cluster with those tools.
What exactly makes Go program scale? In this session, we’ll look at the design of the Go language and runtime, and compare it to other technologies.
The Automatic Clearing House (ACH) network is the primary way money moves electronically through the banking system today.
Erlang has a fast GC mechanism that doesn’t stop the system from responding in a timely manner. Given its immutable nature, this will produce a high rate of garbage. So how does its GC work?
A super cool hardware project, build a small terminal with a keyboard and screen so you can perform some remote work.
In this article, the author reports the results of a large-scale measurement of IPv4 and IPv6 performance looking at the relativities of IPv6 and IPv4 performance.
In this article, we explore the meaning of minimalism in the context of web design.
Outline a new project to convert PDF to XML with high accuracy by complementing existing tools with computer vision technology.
John Calhoun explains about potential issues with cookie and how to mitigate them. It’s in Go but the theory can be applied to any language.
Can we really perceive a difference between 5 ms latency and 45 ms latency? Turns out we can, presents the author.
Learn the differences between Processes, Threads, what the GIL is, EventMachine and Fibers in Ruby. When to use which of the models, which open-source projects use them, and what the pros and cons are.
Inside the V8 engine + 5 tips on how to write optimized code.
Yet another addition to the burgeoning Performance API, but instead of capturing page and resource timings, this new API allows you to capture metrics on when a page begins painting.
Better Dev Link