New
The latest blog posts to take off on Hacker News. 4,763 posts.
How to Generate FiveThirtyEight Graphs in Python
Impressed by the graphs on popular site FiveThirtyEight? This quick tutorial gets you started making your own eye-catching visualizations.
How to conduct a good programming interview
Any software engineer who has ever looked for a job has had the interview experience: being locked in a small room for an hour, asked to write code to solve some arbitrary programming task, while being grilled by one or two interviewers whether or why the code they've written is correct.
A modest proposal
AdamW on Linux and more
Psychology of food menu design
You sit down at an upscale restaurant and scan the menu, banter with the waiter, and make your selection. You feel sure you’ve chosen what you want, based on your appetite, your budget, or your culinary preferences. But have you really? Behind the scenes, some restaurants have cleverly designed their menus to steer…
LoRaWAN packet received at record distance of 702 km
With the rise of novel wireless technologies, we surprise ourselves over and over again of what these technologies are capable of. LoRa has been around now for
The Premium Mediocre Life of Maya Millenial
A few months ago, while dining at Veggie Grill (one of the new breed of Chipotle-class fast-casual restaurants), a phrase popped unbidden into my head: premium…
Implementing strcmp, strlen, and strstr using SSE 4.2 instructions (2008)
Created 18 years ago by Peter Kankowski Last changed 17 years ago Contributors : Dap and Adam Messinger Filed under Low-level code optimization
Gap Buffers Are Not Optimized for Multiple Cursors
Gap buffers are a common data structure for representing a text buffer in a text editor. Emacs famously uses gap buffers — long-standing proof that gap buffers are a perfectly sufficient way to represent a text buffer.
I built something with A-Frame in two days
A few months ago, I had the opportunity to try out several WebVR experiences for the first time, and I was blown away by the possibilities. Using just a headset ...
Game Engine Black Book Postmortem
I am pleased to announce that the Game Engine Black Book about Wolfenstein 3D has shipped. It is 316 pages, full color and made of three parts describing the hardware of 1991, id Software tools, and the game engine internals. You can read a preview on Google Books and buy it here:
JSX in detail
JSX react in depth - an interactive tutorial
He created a Wikipedia article per day for a year, including on his wedding day
Today, Pranayraj Vangari concluded a 365-day challenge where he created a new article on the Telugu Wikipedia every day for the past year—including when he got married.
We Can Achieve Anything If We Stop Trying To Do Everything
All good thing take time to achieve. But if you rely on the power of compounding, you don't have to force things.
AWS Network Load Balancer
Elastic Load Balancing (ELB) has been an important part of AWS since 2009, when it was launched as part of a three-pack that also included Auto Scaling and Amazon CloudWatch. Since that time we have added many features, and also introduced the Application Load Balancer. Designed to support application-level…
Vagrant 2.0
We're announcing HashiCorp Vagrant 2.0. Vagrant is a tool for building and distributing development environments. Vagrant 2.0 supports provisioning development environments on VirtualBox, VMware, Hyper-V, Docker, AWS, GCP, and more. It can virtualize Windows, macOS, and a dozen other new operating systems. Vagrant 2.0…
Delta Goes Big, Then Goes Home
In the face of a category 5 hurricane, Delta Air Lines meteorologists, dispatchers, pilots, cabin crew, and ground crew accomplished an incredible feat on Wednesday. As Hurricane Irma bore down San Juan, Puerto Rico, Delta sent one last flight to help evacuate a few hundred people from San Juan just before the airport…
Cryptographic vulnerabilities in IOTA
Last month, Ethan Heilman, Tadge Dryja, Madars Virza, and I took a look at IOTA, currently the 8th largest cryptocurrency with a $1.9B…
Yarn 1.0: Workspaces, auto-merging lockfiles, selective versions resolutions
Today, we are excited to announce the 1.0 release of the Yarn JavaScript package manager, a major step for the project. In the 11 months since its initial release, Yarn has generated a large follow…
Sorting number strings numerically
The only enterprise AI data platform that cuts complexity, reduces costs, and gets you to production faster.
ClojureCUDA – CUDA programming in Clojure
Clojure library for GPU computing with CUDA
Bringing back the iPhone headphone jack, in China
I’ve spent the past four months in Shenzhen, China, modifying an iPhone 7 to add a fully functional headphone jack. To the best of my knowledge, this is the first time anyone has done anything like this.
Software to capture votes in upcoming German national election is insecure
The Chaos Computer Club is publishing an analysis of software used for tabulating the German parliamentary elections (Bundestagswahl). The analysis shows a host of problems and security holes, to...
C++17 is formally approved
[revised 9/8 to reflect that there is no need to wait till the next WG21 meeting] As I mentioned in my Kona (March) trip report, WG21 (the ISO C++ committee) completed work on C++17 at our March me…
Sunsetting Nylas Mail Development
After a great run, we have decided to officially sunset Nylas Mail.
I printed a huge batch of connectors to make a 15ft structure out of plastic
To put SLS technology’s capabilities to the test, we used the Fuse 1 SLS printer to build the structure that housed the 2017 FUSE conference.
Playing with Kernel TLS in Linux 4.13 and Go
The 1600 LoC patch allows userspace to pass the kernel the encryption keys for an established connection, making encryption happen transparently inside the kernel.