Stealing history with CSS binary trees
History-sniffing attacks let front-end code peek at other sites you’ve visited. They can be used to target ads, steal information, or discern your identity. Creepy. Historically, one of the most popular history-sniffing techniques was to style links using CSS and check their color with JavaScript. Major browsers started implementing privacy changes to address this attack in 2010.1 As a result, JavaScript’s now returns unvisited styles for visited sites. Even with these limitations there are a number of ways to scrape a user’s…
Riddle: chicken prices
Someone posted a riddle a few days ago: Three farmers were selling chickens at the local market. One farmer had 10 chickens to sell, another had 16 chickens to sell, and the last had 26 chickens to sell. In order not to compete with each other, they agreed to all sell their chickens at the same price. But by lunchtime, they decided that sales were not going so well, and they all decided to lower their prices to the same lower price point. By the end of the day, they had sold all their chickens. It turned out that they all collected the same amount of money, $35, from the day’s chicken sales. What was the price of the chickens before lunchtime and after lunchtime? I’d been nerd sniped, and…
Fin?
I started writing this in April. It began, Three months ago I was in Toronto, squeezing in one last show at The Rex before shipping off to New York. I had just finished Hacker School and wanted to write a retrospective post. I also wanted to officially resign from the Iron Blogger crew. But I was on a kiteboarding trip at the time, and the wind was picking up. My three preceding posts are shoddy. Two are short quotes from materials I’d been reading through. The other reads like an assignment. All three were started on Monday morning before check-ins because I didn’t want to lose a bet. I’m glad that I have a blog now. It’s a great way to share cool things that I’ve learned and silly things…