Audio Fingerprinting with Python and Numpy (2013)
Personal Blog of Will Drevo
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 6,985 posts.
Personal Blog of Will Drevo
On the surface, Tarsnap sounds like the perfect use case for Glacier. Out of every TB of data stored on Tarsnap, in any given month approximately 100 GB of data will be deleted, while only 33 GB of data will be downloaded; in other words, Tarsnap is very much a "write once, read maybe " storage system. Tarsnap's…
Here’s version 2 (September 2013). You can print this at 16.5″x10.75″ at 300dpi. Have an ordinary printer? Check out PosteRazor !
An issue popped up on Twitter this past week that caused the web site to be generally unusable for many users. It appears as if attempts to scroll were unbearably slow and caused the site to be unresponsive.
Feross Aboukhadijeh is a computer security researcher, teacher, web developer, designer, long distance runner, gamer, music lover, and builder of websites that (sometimes) go viral.
This page lists some of the changes I make to a vanilla install of FreeBSD for security hardening. Some changes to increase network performance or make things a bit more sane are also included. It only covers basic changes that a sysadmin can make to a running system.
Welcome Redditors and HackerNews folks! This post is getting attention outside the QEMU community, so I'd like to highlight two things that...
The microservices architecture can be useful, but to know if it's suitable in your context you need to understand its costs and benefits.
Why Python follows the Principle of Least Astonishment even when some people are surprised.
Stephen Wolfram shares interesting Facebook data analysis finds from the Data Donor program of Wolfram|Alpha Personal Analytics for Facebook.
This small ebook is here to teach you a programming language called Forth. Forth is a language unlike most others. It’s not functional or object oriented, it doesn’t have type-checking, and it basically has zero syntax. It was written in the 70s, but is still used today for certain applications .
[This memoir essay appeared in the magazine Science 82 in April 1982, and in my 1982 book Infinity and the Mind. It’s based on the “Conversations With Godel” documented in my previous post. Some of the photos are from a recent trip through the West, others from the 1970s.] [This is a cropped version of
Taking over Pokemon Yellow from the inside.
Culture matters for startups. For a startup to succeed, it must have a culture that reflects what it wants to achieve. This is one of my areas of expertise. I've spent the past decade focusing on Y...
A long time ago, the Rust language was a language with typestate. Officially, typestates were dropped long before Rust 1.0. In this entry, I’ll get you in on the worst kept secret of the Rust community: Rust still has typestates.
<small>Pssst! Formatting messed up? Add ".md" to the url ✨ If you're stuck using Zoom, jump on [one](https://community.zoom.com/t5/Meet...
How to print my voice? How to put music on paper? How to print an executable program? All this boils down to storing digital data on paper. This is also called paper data storage . Arrived in this domain from poetry, I’ve been investigating the area for some time. Here is what I found.
You can't safely use the C setenv() or unsetenv() functions in a program that uses threads. Those functions modify global state, and can cause other threads calling getenv() to crash. This also causes crashes in other languages that use those C standard library functions, such as Go's os.Setenv ( Go issue ) and Rust's…
The story of these attacks starts in late 2004. I had submitted my doctoral thesis and had a few months before flying back to Oxford for my defense, so I turned to some light reading: Intel's latest "Optimization Manual", full of tips on how to write faster code. (Eking out every last nanosecond of performance has…
Move over, Sennheiser. Make yourself scarce, Bose. Here comes the ultimate Hi-Fi solution for your living room: The Commodore 64! I s it sa...
Before I start this post, let me preface it by saying that I’m not an experienced Rustacean by any means. The excellent foks at /r/rust gave a lot of helpful feedback and cleared up some misconceptions I had. Futher errata and corrections are appreciated. This post is aimed at helping other fledgling rust-learners…
Relics Gilad Bracha recently posted an article "Bits of History, Words of Advice" that talks about the incredible influence of Smalltalk but bemoans the fact that: ...today Smalltalk is relegated to a small niche of true believers. Whenever two or more Smalltalkers gather over d
As a project evolves, does the new code just add on top of the old code? Or does it replace the old code slowly over time? In order to understand this, I built a little thing to analyze Git projects, with help from the formidable GitPython project.
In 1996, XML was invented. No sooner than it was created, it was adopted for all manner of misconceived applications for which it was a poor choice.
A sweaty game pointing toward the future of computing.
Nano How-To explaining how to setup a root file system with only emacs.
I'm taking a break from debugging books to talk about a calamitous shitshow of textbook writing: Mastering C Pointers: Tools for Programming Power , by Robert J. Traister.
Hi all! I'm starting a new article series here. This one is going to be about Unix utilities that you should know about. The articles will discuss one Unix program at a time. I'll try to write a good introduction to the tool and give as many examples as I can think of. The first post in this series is going to be…
Datasette (previously) is my open source tool for exploring and publishing structured data. There are a lot of ideas embedded in Datasette. I realized that I haven’t put many of …