How I Start: Elixir
Portal is a game that consists of a series of puzzles that must be solved by teleporting the player’s character and simple objects from one place to another.
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,826 posts.
Portal is a game that consists of a series of puzzles that must be solved by teleporting the player’s character and simple objects from one place to another.
I’ve been working on building a compacting garbage collector in Ruby for a while now, and one of the biggest hurdles for implementing a compacting GC is updating references. For example, if Object A points to Object B, but the compacting GC moves Object B, how do we make sure that Object A points to the new location?…
Over the past few months the team at RethinkDB has been working on a project to make building modern, realtime apps dramatically easier. The upcoming features are the start of an exciting new database access model – instead of polling the database for changes, the developer can tell RethinkDB to continuously push…
In 2011, to celebrate the 150th anniversary of MIT, the Boston Globe made a list of the most important innovations developed there. They asked me to explain the importance of SICP, and this is what I sent them:
Best practices for writing Go code, from the halcyon days of its youth.
This post is about the magic constant 0x5f3759df and an extremely neat hack, fast inverse square root, which is where the constant comes from.
In this tutorial, you'll learn 16 ways for doing concurrency in Clojure including how to start threads and how to communicate between them.
Welcome to the Progress Report for Dolphin Release 2606. We usually prefer to launch toward the beginning of the month, but a slew of important, large, and technically challenging changes had us working overtime. Strap in, because we have a lot to cover! For April Fool's we teased that Dolphin now had support for the…
An interactive exploration of quadtrees. Start with brute-force spatial search, build recursive space partitioning step by step, then use it for point lookups, range queries, nearest-neighbor search, collision detection, and image compression.
UPDATED July 2023: How to use EXPLAIN ANALYZE in PostgreSQL, learn tools to visualize the output. See query execution time and row count.
Reviewing the capabilities and limitations of LLM agents in software development and their impact on skilled and less skilled developers.
Personal Website and Blog of Martin Klepsch
April Fool's may be over, but once we set up a system to react every time someone typed Command+C, we realized there was also an opportunity to learn about how people use our site. Here’s what we found.
Building a lock free continuous ring buffer
C++ remains one of the leading programming languages in game development despite the emergence of new technologies and languages. Its flexibility, performance, and extensive ecosystem make it the preferred choice for building complex game systems, engines, and high-performance applications.
Short answer: because we said so.
If you would like me to grade your answers, please send an email to cperciva-exam-part1@tarsnap.com [EDIT: I have now finished marking part 1 answers; please do not send me any more] with your answers to the above questions along with the following two:
Patterns and structures of current operating systems and some thoughts about how that could be improved, with lessons learnt from Self, Smalltalk and other "structured" systems.
Using the best tool for a job may slow things down. It may be "best" in a sense you don't need. The actual best tool might be relatively crude.
I’ve got a challenge for you. The next time you start a new project, try not using a PHP framework.
It's not about technology for its own sake. It's about being able to implement your ideas.
Every programming language has some fundamental idea(s) that drives its design and evolution. For Haskell that’s functional purity and state-of-the-art static typing, for Erlang that’s distributed programming and fault tolerance, for Clojure that’s simplicity and stability. What all these examples have in common is…
Why does it take so long to build software? We hear variations of this question frequently: Why is building software so expensive? Why is my team delivering software so slowly? Why am I perpetually behind schedule with my software? There is a good reason we hear these questions over and over. Businesses need more and…
There’s some 2015 research out of Microsoft titled Code Reviews Do Not Find Bugs 1 1 Code Reviews Do Not Find Bugs; How the Current Code Review Best Practice Slows Us Down ; Czerwonka, Greiler, Tilford; IEEE International Conference on Software Engineering; 2015. which seems strangely named because reviewers do find…