Robert Heaton

robertheaton.com · Personal blog · on HN since 2012

Robert Heaton writes about programming projects, security and privacy investigations, algorithms, and personal essays.

What HN saysCommenters enjoy his witty, clear writing, praise a Simpson's paradox post, and point to his programming project prompts and parenting series.
171HN people shared it
59linked it in comments
233stories submitted
12Kstory points
3 months agolast shared
2012people per year2026

Most-shared posts

  1. 1
  2. 2
    How Tinder keeps your exact location (a bit) private
    11 people · 16 points · first shared 2018 · discussion on HN
  3. 3
    The Wavefunction Collapse Algorithm Explained
    10 people · 338 points · first shared 2018 · 44 comments on HN
  4. 4
    How to date a recording using background electrical noise
    10 people · 26 points · first shared 2022 · discussion on HN
  5. 5
    I was seven words away from being spear-phished
    7 people · 449 points · first shared 2019 · 180 comments on HN
  6. 6
    Wacom tablets track every app you open
    6 people · 2.3K points · first shared 2020 · 449 comments on HN
  7. 7
    Preventing impossible game levels using cryptography
    6 people · 10 points · first shared 2020 · 1 comments on HN
  8. 8
    Systems Design for Advanced Beginners
    5 people · 961 points · first shared 2020 · 110 comments on HN
  9. 9
    A system to help you remember more of what you read
    5 people · 389 points · first shared 2018 · 74 comments on HN
  10. 10
    HTTPS in the real world
    5 people · 166 points · first shared 2018 · 26 comments on HN
  11. 11
    “Stylish” is back, and you still shouldn't use it
    5 people · 110 points · first shared 2018 · 32 comments on HN
  12. 12
    Making Peace with Simpson's Paradox
    5 people · 6 points · first shared 2019 · discussion on HN
  13. 13
  14. 14
  15. 15
    How to hack a Rails app using its secret_token
    4 people · 25 points · first shared 2013 · 13 comments on HN

What HN people wrote when they linked it

perfect_wave · 2019-02-08
I've been following Robert Heaton's blog for a while: https://robertheaton.com/
lucgommans · 2020-05-16
Same here. It may be basic and crappy, but if you want to read an unsuccessful blog with no attempt at monetization or ads or even visitor counting, mine[1] is where you should feel right at home. But I guess the author means a platform, not loose websites without a collective 'new' feed. I remember looking for one when wanting to make a new blog and I haven't found a platform that felt right, at least back then (probably ~2015). Heck, I couldn't even find software to install: everything is either super heavy stuff that requires caching or at least a beefy CPU to survive the HN homepage (with custom software, HN can be survived on an ancient Atom CPU even if you use PHP (also pre-PHP7) and do multiple SQL queries per pageload) or some static generators that I wasn't looking for. Edit: While we're at it, another blog I read is Robert Heaton's one[2], and I'm subscribed to a few others but they don't seem to post anymore since I stopped getting email notifications. I remember Coding Horror[3] was also nice to read but he posts very infrequently now (for those who don't know, that's by the co-founder of Stack Overflow). Finally, Cryptography Engineering[4] might be nice if you're into that sort of thing. But I suppose those can all be mostly considered successful in that they all have a following. [1] https://lucgommans.nl/blog [2] https://robertheaton.com [3] https://blog.codinghorror.com [4] https://blog.cryptographyengineering.com
incognito124 · 2024-08-11
I just love the napkin equation in the middle of [1], it really made it clear to me [1]: https://robertheaton.com/2019/02/24/making-peace-with-simpsons-paradox…
np32 · 2021-08-25
I find Rob's writing highly enjoyable too. It is witty without talking to the reader like he is 10. Not very HN-y, but I recommend his serie on being a parent : https://robertheaton.com/married-with-kids/
maxwelljoslyn · 2021-02-05
See also: Robert Heaton's series of project prompts "Programming Projects for Advanced Beginners." https://robertheaton.com/2018/12/08/programming-projects-for-advanced-… The project goals are not as lofty as those proposed by nishanth_v's friend, but Mr. Heaton goes the extra mile to turn each project idea into a step by step mini-curriculum with lots of extension points. Then, he goes another extra mile by allowing readers to email in their buggy projects, and running a companion series where he teaches people how to debug / fix / improve their code by refactoring reader's attempts at the "...Advanced Beginners" projects. Recommended.
nickysielicki · 2021-01-09
Nobody has suggested it directly, yet, but I want to take this opportunity to remind people that the "Stylish" extension for injecting custom CSS onto your favorite websites has a history of abuse. It's owned by an advertising company that consumes all your browsing data. [1] You should instead use "Stylus", which has none of those problems. In spite of all of that, Stylus has only 400,000 users according to the Chrome extension store, compared to 2M for Stylish. There's a lot of people out there accidentally using malware. For example, here is a nice-looking dark mode for HN which can be installed into Stylus. [2] (I can't personally vouch for it, as I don't use it.) [1]: https://robertheaton.com/2018/08/16/stylish-is-back-and-you-still-shou… [2]: https://userstyles.org/styles/157400/hacker-news-bluish-gray-2020
billyruffian · 2020-11-20
> "Most objects are passsed (sic) by reference" be careful, ruby uses pass-reference-by-value which is subtly different. See this great article: https://robertheaton.com/2014/07/22/is-ruby-pass-by-reference-or-pass-…
robrtsql · 2019-06-03
I feel like this is worth mentioning. https://robertheaton.com/2018/07/02/stylish-browser-extension-steals-y… If I go looking for an extension called "Stylish", will I find the original? Is it trustworthy?
0xferruccio · 2018-12-07
Great tips on writing, made me want to read more from the author and I found his post on WeSeeYou democratizing de-anonymization hilarious and thought provoking https://robertheaton.com/2017/10/17/we-see-you-democratizing-de-anonym…
sayemm · 2014-12-16
Really clever hack and entertaining blog post! Love this author's writing, esp this other post of his on Playing to Win - http://robertheaton.com/2014/11/03/why-you-should-read-playing-to-win-… A hacker at heart.
abeppu · 2024-06-15
This made me think of two tangentially related things about code quality and reading which are each 10 years old! Peter Seibel repeatedly tried to start "code reading groups", but found that they didn't quite work, because while everyone agreed that there was much to be learned from code bases, and that many advised "reading" code, most real code doesn't support "reading" so much as "decoding" or perhaps interactively exploring. https://gigamonkeys.com/code-reading/ Robert Heaton had a fun post about code reviewing without being able to actually read the specifics of the code. With only a blurry view of the structure of code, one can get a sense of its likely virtues and opportunities for improvement. https://robertheaton.com/2014/06/20/code-review-without-your-eyes/ Kind of in the spirit of both, I love code where you don't _have_ to read most of it because: - class names, generic parameters, etc, make it clear what classes represent - method names and signatures make it clear how they're to be used; there are no surprises or gotchas in the specifics of the implementation that foist cognitive complexity onto callers, etc - the right amount / granularity of structure exists, such that when you do need to read something, the section is moderately sized; there's not some enormous, entangled method that's actually doing 5 things at once. Modularity limits the scope of reading. But also, when you do need to understand implementation specifics, good code acknowledges that…
edavis · 2021-05-12
https://robertheaton.com/ might interest you
dwild · 2019-07-04
> You just get the malware Javascript served. Which happens on any link you click on Reddit, Hacker News or Facebook. Unless you don't click on them and only visit website that you consider trustworthy, you get the exact same risk. Actually even if you may feel that a link is trustworthy, it doesn't even means it actually is, like it happened for the past Firefox 0-day exploit. This guy nearly got it by trusting that [0]. [0] https://robertheaton.com/2019/06/24/i-was-7-words-away-from-being-spea… > That's not theoretical (like your "but HN could deliver malware, too), that's reality. My textual example was to discredit the Forbe example. I have an hard time understanding your point about it being theoretical. Are you actually refering to my other example about links from HN that could contains malicious Javascript? That's to know if you check links or you click on them arbitrarily with all the risk that come with it. My point is that malicious Javascript is extremely rare and when it does happen, it's targeted and doesn't use ad network. Theses vulnerabilities are gold mine and it makes no sense to put it on an ad network and hope that you'll get enough out of it before it get caught and removed/fixed. Selling it to the highest bidder or targeting a specific group of people make much more sense. If you have any example of where an actual malware was spread using ads, I would be happy to learn about it. I'm also curious to know if you block Javascript and if…
andlier · 2025-02-07
Fun fact, there are databases of the exact frequency vs. time and it can be used to accurately time stamp audio/video recordings by correlating the ~50/60hz noise in the recording with the database. Good writeup on the technique and how it has been used in court cases: https://robertheaton.com/enf/
xk3 · 2024-04-07
> at a sample size of 12... they could have gotten lucky right?? this seems like Simpson's Paradox https://robertheaton.com/2019/02/24/making-peace-with-simpsons-paradox…
punnerud · 2023-08-27
It’s called certificate-pinning if they “hard coded” a certificate, yes then you have to replace/remove it and move the same certificate to your MITM proxy to decrypt traffic. A good write up here for ways to try to intercept IoT devices without any hardware/firmware job: https://robertheaton.com/2019/11/21/how-to-man-in-the-middle-your-iot-…
isoprophlex · 2023-03-10
For lo-res pixel art, check out Wavefunction Collapse. https://robertheaton.com/2018/12/17/wavefunction-collapse-algorithm/
rasz · 2022-05-20
>"user styles" manager like Stylus or stylish? https://robertheaton.com/2018/07/02/stylish-browser-extension-steals-y… I rather use the one extension I can fully trust instead of installing additional ones
Toreno96 · 2022-04-21
The article references another one of the author's articles: https://robertheaton.com/2019/06/24/i-was-7-words-away-from-being-spea… I find it quite amusing that the scam used the domain `people.ds.cam.ac.uk`, which contains `s.cam`.
KennyBlanken · 2022-04-01
Oh, but it gets better. When the furor over the app usage collection hit, they disabled the data collection via remote server 'kill switch' (the driver hits an XML file.) About a month later, after the furor died down - they flipped it right back on. https://robertheaton.com/2020/02/05/wacom-drawing-tablets-track-name-o… Super fucking scummy.
flutas · 2021-08-25
Tinder actually has a fairly interesting solution to this, they divide the world up into mile grids and use those. Funnily enough, a blog post by the same writer as OPs link. https://robertheaton.com/2018/07/09/how-tinder-keeps-your-location-a-b…
datfrojo · 2021-02-05
Here’s an interesting article on Tinder’s solution to this problem: https://robertheaton.com/2018/07/09/how-tinder-keeps-your-location-a-b…
j-james · 2021-01-05
Here's an overview of the system Tinder currently uses, after their 2014 privacy fiascos: https://robertheaton.com/2018/07/09/how-tinder-keeps-your-location-a-b…
asdasdasdas5453 · 2020-10-13
I have this link saved in my bookmarks. Never read it though. https://robertheaton.com/2020/04/06/systems-design-for-advanced-beginn…
robheaton · 2020-10-13
A few months ago I wrote a post called "Systems design for advanced beginners" that a lot of people seem to have found helpful. Link: https://robertheaton.com/2020/04/06/systems-design-for-advanced-beginn… HN comments: https://news.ycombinator.com/item?id=23904000
cyral · 2020-09-01

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close