New
The latest blog posts to take off on Hacker News. 2,851 posts.
Why EdDSA held up better than ECDSA against Minerva
"Minerva attack can recover private keys from smart cards, cryptographic libraries" , says the ZDNet headline. "The Czech team found a problem in the ECDSA and EdDSA algorithms used by the Atmel Toolbox crypto library to sign cryptographic operations on Athena IDProtect cards."
Calculus for the Curious
Some weeks ago I got involved in a discussion on Twitter about, which books to recommend on the history of calculus. Somebody chimed in that Steven Strogatz’s new book would tell you all that you n…
Solving a linear optimization problem on incentive allocation
At Lyft, scientists solve all kinds of optimization problems. While solvers can come in handy, there are times when complicated or…
Geometry, Algebra, and Intuition (2017)
I have a confession to make: I have always found symbolic algebra more intuitive than geometric pictures. I think you’re supposed to feel the opposite way, and I greatly admire people who think and communicate in pictures, but for me, it’s usually a struggle.
New pathfinding algorithm
New pathfinding algorithm Oxyd Last week we mentioned the change to make biters not collide with each other, but that wasn’t the only biter-related update we released this past week. Somewhat coincidentally, this week’s updates have included something I’d been working on for a few weeks before – an upgrade to the…
Trying to improve buffet lines using simulations
I have suspected for years that the classic buffet line system is a deeply flawed method, so I decide to simulate different methods to find out better ways
My 2019 Mathematics a to Z: Linear Programming
Today’s A To Z term is another proposed by @aajohannas. I couldn’t find a place to fit this in the essay proper. But it’s too good to leave out. The simplex method, discussed with…
String Diagrams for Linear Algebra
We have established that there is a homomorphism called θ from B, the PROP of diagrams, to Mat, the PROP of matrices. To do this, it was enough to say where θ takes the four stars of the story so f…
Hash tables
In this post you will learn what hash tables are, why you would use them, and how they are used to implement dictionaries in the most popular Python interpreter—CPython.
Elliptic Curve Cryptography Explained
Fang-Pen Lin's blog about programming
Building a constraint programming solver in Julia
How to build a constraint programming solver in Julia. Part 1: Solving Sudoku using backtracking
A fast alternative to the modulo reduction (2016)
Suppose you want to pick an integer at random in a set of N elements. Your computer has functions to generate random 32-bit integers, how do you transform such numbers into indexes no larger than N? Suppose you have a hash table with a capacity N. Again, you need to transform your hash values (typically 32-bit ……
Principal Component Analysis
In the previous article in this series we distinguished between two kinds of unsupervised learning (cluster analysis and dimensionality reduction) and discussed the former in some detail. In this installment we turn our attention to the later. In dimensionality reduction we seek a function $f : \mathbb{R}^n \mapsto…
A Gentle Introduction to Bayes’ Theorem for Machine Learning
Bayes Theorem provides a principled way for calculating a conditional probability. It is a deceptively simple calculation, although it can be used to easily calculate the conditional probability of events where intuition often fails. Although it is a powerful tool in the field of probability, Bayes Theorem is also…
My God, It’s Full of Dots
Please click or tap in the gray square below. It will fill with a jolly tableau of colored disks—first big blue ones, then somewhat smaller purple ones, and eventually lots of tiny red dots.
Modern SAT solvers: fast, neat and underused
In part 1 of this series, we built a Sudoku solver based on translating Sudoku to SAT and then giving the resulting SAT instance to a SAT solver. We also benchmarked our solver and found out that it, unsurprisingly, loses to the state of the art of Sudoku solvers. Since
Commit Graph Drawing Algorithms
This article is one chapter of my master thesis entitled “Design and implementation of a graphical user interface for git”. It describes the algorithm I designed to draw the commit graph in my own prototype git client called gitamine. I have adapted the content so that it fits better with this blog. Drawing graphs is…
Viktor T. Toth
This page contains a JavaScript calculator of Hawking radiation and other parameters of a Schwarzschild black hole.
Breaking Pills
From the highly eclectic blog of Mark Dominus
You're doing it wrong: B-heap 10x faster than binary heap (2010)
Would you believe me, if I claimed that an algorithm which has been on the books as "optimal" for 46 years, which have been analyzed in excruciating detail by geniuses like Knuth and taught in all CS courses in the world, can be optimized to run ten times faster ?
Gaussian Processes, not quite for dummies
Before diving inFor a long time, I recall having this vague impression about Gaussian Processes (GPs) being able to magically define probability distributions over sets of functions, yet I procrastinated reading up about them for many many moons. However, as always, I’d like to think that this is not just due to my…
Deterministic thinking: a problem in how we think, not just in how we act
– Basketball Stats: Don’t model the probability of win, model the expected score differential.
Algorithm No One Knows About (2016)
Here’s a program roughly 0% of programmers know how to write: generate a list of random tweets, without duplication. You may think you know how to do this, but you almost assuredly don’…
Time to Abolish "Statistical Significance"?
The idea of "statistical significance" has been a basic concept in introductory statistics courses for decades. If you spend any time lookin...
The exponential function is a miracle
From the highly eclectic blog of Mark Dominus