In Praise of Perl 5
I have decided to do a two-part series here praising Perl in part 1 and PostgreSQL in part 2. I expect that PostgreSQL folks will get a l...
Topics /
The most popular blog posts about software engineering on Hacker News. 653 posts.
I have decided to do a two-part series here praising Perl in part 1 and PostgreSQL in part 2. I expect that PostgreSQL folks will get a l...
If The `if` statement is pretty much the same in Rust as C++. One difference is that the braces are mandatory, but brackets around the ...
Byte swapping does not necessarily imply the data comes from an external source. For example, when writing graphics code, you sometimes need to do byte swapping if you’re converting between 24-bit RGB and BGR image formats (Windows’ GDI famously uses BGR so this is one place where you need to do such conversions)…
One of the features that I’m most pleased with on Richmond Sunlight is the integration of video. It’s one thing to put up chunks of video for people to paw through, but it’s another to automatically index it so that people can be directed to just the parts of the video that interest them. That […]
I'm switching my node code from callbacks to promises. The reasons aren't merely aesthetical, they're rather practical:
Choose to do only the things that nobody else can do.
What are Gray codes, and why are they so useful?
As a developer, you develop instincts for judging quality of code. One of my favorite interview questions is: When you look at a project’s code for the first time, what are the things you look for?...
Did you ever happen to disagree with a colleague on the single responsibility principle and its application? Let's try to understand why that could be the case.
Tips on using React without JSX.
I've been doing all of my real (paid) work on VMs / containers for a while now but when it comes to writing Java code...
Search your bash or zsh history incrementally with Control-R, step back with repeated presses, go forward with Control-S, and tune HISTFILE and HISTSIZE.
Disclaimer: I am an employee of Cognitect and I worked on the transit-js implementation. The opinions found herein are my own and do not necessarily reflect the recommendations or views of Cognitect.
This is a sketch of proposed enhancements to the Java Virtual Machine instruction set, and secondarily to the Java Language, to support small immutable, identityless value types . (They may also be considered as identityless aggregates, user-defined primitives, immutable records, or restricted classes.) This is an…
While talking about Django at PyCon India this year, the most common question I got was whether it supports Si...
A couple of months ago, Trixter of Hornet released a demo called "8088 Domination", which shows off real-time video and audio playback on t...
Some time ago i started to write series of blog posts about assembly programming for x86_64. You can find it by asm tag. Unfortunately i wa...
Sometimes it's a good thing to be writing code that you expect to throw away in a couple of years time.
This article will continue the layout module that we started in Part 5. This time, we’ll add the ability to lay out block boxes. These are boxes that are stack vertically, such as headings and paragraphs.