Modern C, Second Edition
A new edition of the book Modern C and much more are now available under a CC license via the following page This edition is the result of a collaboration with Manning, and improves a lot over the…
The latest blog posts to take off on Hacker News. 14,543 posts.
A new edition of the book Modern C and much more are now available under a CC license via the following page This edition is the result of a collaboration with Manning, and improves a lot over the…
I had my fair share in designing and building large systems. I've taken part in rewriting Uber's distributed payment systems [https://blog.pragmaticengineer.com/distributed-architecture-concepts-i-have-learned-while-building-payments-systems/] , designing and shipping Skype on Xbox One and open-sourcing RIBs…
This article previously appeared in the Harvard Business Review AgileFall is an ironic term for program management where you try to be agile and lean, but you keep using waterfall development techn…
Visualization has always been challenging task but with the advent of dataframe plot() function it is quite easy to create decent looking plots with your dataframe, The **plot** method on Series and DataFrame is just a simple wrapper around Matplotlib plt.plot() and you really don’t have to write those long matplotlib…
What's the role of Go in a universe where Rust exists?
Would you believe me, if I claimed that an algorithm which has been on the books as "optimal" for 46 years, which have been analyzed in excruciating detail by geniuses like Knuth and taught in all CS courses in the world, can be optimized to run ten times faster ?
"Big integers" have landed in Javascript, at least in Firefox and Chrome. One of my favorite things to do with high precision arithmetic is to calculate digits of π. From scratch, that is, using only addition, subtraction, multiplication, and division.
Monica Dinculescu's blog
What Remains is a narrative adventure game for the 8-bit NES video game console, and was released in March 2019 as a free ROM, playable in emulator. It was created by a small team, Iodine Dynamics, over the course of two years of on and off development. It’s currently in the hardware phase as a limited batch of…
Most CPU architectures in use today have an instruction called popcount , short for “population count”. Here’s what it does: it counts the number of set bits in a machine word. For example (assuming 8-bit words for simplicity), popcount(00100110) is 3 and popcount(01100000) is 2 .
First of a two-part series on the best strategies for hiring humans in the 21st century. Fueled by both personal experience and the experience of countless mentors (and recruiters), this gigantic post is bursting at the seams with knowledge. Though specifically written by a CTO-type, the strategies are useful for…
I wrote a self-hosting C compiler which I named 8cc in 40 days. This is a log when I was writing it from scratch by myself in 2012. The code and its history are available at GitHub .
This is a post about performance. Most of the time when worrying about the performance of a piece of code the overwhelming advice should be (with apologies to Brendan Gregg) don’t worry about it, yet. However there is one area where I counsel developers to think about the performance implications of a design, and that…
There's an old joke that computer science is a lie, because its not really about computers, and its not really a science. Funny joke. Everyone laughs, then someone says "Yeah but it sort of is about computers though, isn't it?". Feet shuffle awkwardly. Someone clears their throat and before you
Every square has exactly 3 units and 20 peers. For example, here are the units and peers for the square C2 :
Not bad just backwards
I keep coming across people who consider parser technology a forbidding, scary field of programming. This is nonsense—a small parser can be very, very simple , and provide a wholesome exercise in recursive thinking. At the same time, it is true that you can make parsing extremely complicated. Mostly, this tends to…
One reason to know how your data structures work is so that when your problem has unusual constraints you can tweak how they work to fit the problem better or work faster. In this article I’ll talk about four different fun tweaks to the concept of a hash table that I made in the process of using hash tables to…
I am currently working my way through Higher-Order Perl , a highly recommended tome on effective and practical use of functional programming techniques in Perl. As you’d expect from a book that spends a lot of time discussing such concepts as function composition and recursion, the subject of tree traversal makes a…
Learn how Linux/FFmpeg C partial codebase is organized to be extensible and act as if it were meant to have “polymorphism”. Specifically, we’re going to briefly explore how Linux …