New
The latest blog posts to take off on Hacker News. 199 posts.
Building a Thermal Camera
I'm a Computer Science graduate working in software & electronics development.
Papercraft with Blender
Blender version 2.79 incorporated functionality which enables you to fabricate 3D models by folding paper. I decided to try it out. Drawing the model I downloaded a 3D model of a goat and re-meshed…
Writing a personal automation API
Yes, you need to write yourself an API. You'll thank me later.
How do Ruby and Python profilers work?
How do Ruby & Python profilers work?
The Emacs Calculator (2009)
Did you know that Emacs comes with a calculator ? Woop-dee-doo! Call the presses! Wow, a whole calculator! Sounds a bit lame, right?
An epic treatise on scheduling, bug tracking, and triage
[Note 2017-12-29: the news.ycombinator.com discussion of this post is unusually useful. You may want to read it first.] [Note 2018-09-01:...
High-Level Problems with Git and How to Fix Them
When Git first came onto the scene in the mid 2000's, I was initially skeptical because of its horrible user interface. But once I learned it, I appreciated its speed and features - especially the ease at which you could create feature branches, merge, and even create commits offline (which was a big deal in the era…
Hands-on with the PocketBeagle: a $25 Linux computer with lots of I/O pins
The PocketBeagle is a tiny but powerful inexpensive key-fob-sized open source Linux computer. It has 44 digital I/O pins, 8 analog input...
Incremental Backups Using GNU Tar and S3
How to take snapshots of a directory and send to them as backups to S3 using Linux tools
The Power of Tmux Hooks
The default tmux prefix key is Ctrl - b , for the remainder of this article, we will refer to the prefix key as prefix .
Automate GitHub Pages with IFTTT, Glitch and Jekyll
IFTTT supports hundreds of services and you can use any of them to automate your blog posts! For this example, we're going to setup a trigger that automatically cross-posts new images from Instagram on our blog.
GTD in 15 Minutes – A Pragmatic Guide to Getting Things Done
GTD—or “Getting things done”—is a framework created by David Allen for organizing and tracking your tasks and projects. Its aim is a bit higher than just “getting things done”, though. (It should have been called “Getting things done in a much better way than just letting things happen, which often turns out not to be…
What's wrong with the default build tool for Scala
SBT is the default build tool for the Scala programming community: you can build Scala using other tools, but the vast majority of the community uses SBT. Despite that, nobody seems to like SBT: people say it's confusing, complicated, and opaque. This post will deeply analyze what exactly it is about SBT that people…
Switching from 1Password to Bitwarden
I've been using an OpenBSD laptop as my workstation a lot more lately, probably because most of my hardware just works now and I don't have to think too much about it. The touchpad works when I touch it, I can be confident that when I close the lid, the laptop will fully suspend and then fully resume again when I open…
A Founder Salary Calculator
[July 21, 2023] There’s a newer version of this post , including an updated calculator . Founder salaries are not a topic I’ve had to spend ...
The cargo cult of versioning
[ Update Nov 27: This post had issues, and I retract some of my more provocative claims. See the errata at the end. ]
Creating a presentation by hand using calligraphy
I’ve been involved with PyCon India since the first edition of the conference in 2009 . This year, I was invited to give the keynote at the 2017 edition of the event in Delhi. This post is about some personal experiences preparing the speech and making the slides.
Magic Paper
Working notes by Michael Nielsen , November 2017. Followup to (but doesn't require) my notes on Chalktalk .
Why TDD isn't crap
After my recent vitriol about unit testing, a couple of people sent me Why TDD is Crap as a thorough debunking of TDD and unit testing. As someone very interested in software correctness, I ended up writing a debunking of his debunking. Transcriptions will be in quotes, my responses below. Some important notes: From…
Things I Wish I'd Known Before Using Vagrant
One of the ironies of working a lot with Docker, Kubernetes, and OpenShift is that I’ve had to learn a lot about Vagrant and Virtualbox. Mostly I use it to spin up OpenShift clusters on my local machine, but I’ve had to poke into lots of corners to get various other things working too.
Write tests. Not too many. Mostly integration
[Guillermo Rauch](https://x.com/rauchg) [tweeted](https://x.com/rauchg/status/807626710350839808) this a while back. Let's take a dive into what it means.
Build your own Terminal using Qt
I'm a huge fan of Unix as an IDE and so the terminal is the core of my computational environment: I run everything from my development tools and text editor to my chat apps and email. There are a variety of terminals out there with their own set of pros and cons, but here we'll find out how to build our own terminal…