Live data from Hacker News

Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

about.sourcegraph.com

91–100 of 132 posts

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#91

Ads on reddit are incredibly deceptive. I'm not sure why advertisers tolerate it. 98% of the ad clicks on mobile are surely fraudulent through being intentionally accidental. The ads are designed to look exactly the same as real posts at a glance, with a username, post date, upvote/downvote arrows, deceptive title meant to make it look like a real post, comment section, share link, and image thumbnail. Reddit users a…

That ad looks totally obvious to me. It has three different elements that differentiate it from regular content.

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#92

i will add to not use the default http.Client/Server, poor performance, instead use fasthttp

First off, the author of fasthttp has made some great packages that I do use in production.

However, last time I looked fasthttp was great if you don't care about http2 support or streaming bodies. Unfortunately I do.

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#93
post #62
post #8

Earlier quoted context omitted.

I like my HTTP package to actually speak as good an approximation of HTTP as it can, so fasthttp wouldn't be my first option. Furthermore, the HTTP stack doesn't show up on most web servers' profiles. net/http is better understood by the community, interoperates with libraries better (e.g. golang.org/x/oauth2), and is better supported. Use net/http.

The main issue with net/http is that it generates a lot of garbage which is definitely going to show up in your profile if you're handling a lot of requests per second.

Allocation pressure imposed by net/http has never been a top K source of profile CPU burn in any service I’ve ever written, and I’ve written plenty of high-performance, high-QPS services. fasthttp is rarely if ever a good idea.

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#94

Earlier quoted context omitted.

Where are people going to go this time? I feel like people usually copy their competitors which is why they consider redesigns worthwhile... but which Reddit competitor is Reddit copying here? I don't think there is one. Obviously Facebook/Instagram/Twitter/Snapchat kind of worry them, but then again, I feel like people are "done" with "social media" so I wouldn't be _really_ worried if I were Reddit. They have the a…

Just because you think people are "done" with "social media" doesn't mean Reddit execs do. They are definitely changing look and feel to be more like instagram and facebook hoping to poach users or at least widen their userbase by lowering the barrier of entry. One of the primary goals of the redesign was changing look and feel to make the site more approachable to a wider audience. They claimed after extensive testi…

I think the underlying problem is that people want a platform for self-promotion (hence buying followers on Instagram), but most subreddits and maybe the site itself prohibit self-promotion. As a result, many people will never be interested (including me; I use it for pictures of cats, but nothing important).

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#95
post #91

Ads on reddit are incredibly deceptive. I'm not sure why advertisers tolerate it. 98% of the ad clicks on mobile are surely fraudulent through being intentionally accidental. The ads are designed to look exactly the same as real posts at a glance, with a username, post date, upvote/downvote arrows, deceptive title meant to make it look like a real post, comment section, share link, and image thumbnail. Reddit users a…

That ad looks totally obvious to me. It has three different elements that differentiate it from regular content.

It looks like it's made to appear as much like non-ad content as it possibly can while still maintaining plausible deniability on your part.

We stopped advertising on reddit after the rise of the_donald and other white supremacy subs led to our ads being placed next to a lot of bigotry and white supremacist content, even in subreddits you'd generally consider innocuous. The hate groups have spilled over into most subs now.

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#96
post #11

Cool. Maybe these guys should get in touch with the redesign guys and get them fired. Also fire any executive that thought it was a good idea. Because all the hard work to serve ads more efficiently goes to waste when the site is a mess and unusable.

I remember when Digg was bigger than Reddit and then after a certain Digg site redesign they lost a significant number of their users to Reddit and never really recovered.

If memory serves, the primary driver of reduced traffic to Digg 4.0 was the fundamental shift in how their submission mechanism worked, not in a change to their layout. I recall some kind of promotion mechanism where superusers gained some amount of control over their "front page" equivalent.

Also, unlike Digg, Reddit hasn't been bleeding members to another site for some time now, so there's nowhere for Reddit users to go if they become dissatisfied. Does anyone have any ideas about why that is? Reddit is not, fundamentally, a hard product to emulate, and yet I know of no site even remotely as popular nowadays (HN aside, of course). Slashdot, Fark, and sites like those all seem to have mostly been consumed by Reddit. Is it the strong network effects that Reddit has, or does Reddit's moderation system provide a unique way of hosting a community that no one has reproduced?

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#97
post #86

Ads on reddit are incredibly deceptive. I'm not sure why advertisers tolerate it. 98% of the ad clicks on mobile are surely fraudulent through being intentionally accidental. The ads are designed to look exactly the same as real posts at a glance, with a username, post date, upvote/downvote arrows, deceptive title meant to make it look like a real post, comment section, share link, and image thumbnail. Reddit users a…

Have you actually run ads on reddit, or are you saying this as a user? If so, what stats have seen (impressions, clicks, conversions, etc.) for your ads?

I agree with OP. My 99% clicks on reddit mobile ad are unintended. It is very annoying, for if I press the back button to early, then the firefox browser will back too the page previous to the page containing the ad I clicked. So generally, I will wait the ad fully loaded then press the back button.

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#98
post #79

Earlier quoted context omitted.

The redesign is terrible for usability, but it does one thing very, very well: punish you for using an adblocker (sorry, "software blocker," lol). There are a few other dark patterns hidden in there too, all coincidentally pushing in a direction that's good for reddit. I suspect that's the real purpose of the redesign and that all complaints will fall on deaf ears until someone actually manages to disrupt reddit.

>I suspect that's the real purpose of the redesign I mean at this point I don't think there's any doubt whatsoever. Is there even a plausible other explanation? I only lurk on reddit but it's rather comical how bad it's become. And not just the interface, the content too, /r/all is basically Facebook with a slightly younger audience and you have to get deeper and deeper into niche subreddits to find worthwhile discus…

> you have to get deeper and deeper into niche subreddits to find worthwhile discussions.

Which raises the question wouldn't that be better served with a forum...

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#99
post #30

As the founder of a SAAS ad serving company, I can say that as slick as (I think) my platform is, it's not a problem I would want to tackle again. There will be a large volume of technical challenges and required features to support. It'd be like writing Apache or Nginx from scratch. It seems simple on the surface and then you wake up to all kinds of inconvenient and unexpected technical challenges. I'm not sure Redd…

It seems biased. I had a similar situation with a client of mine. They went out looked at 3rd party companies, and everything looked decent on paper. Internally there were some napkin math and found out while the 3rd parties would save development time the returns of implementing features their customers were asking for now instead of waiting for 3rd party company paid for them to hire 3x the engineering staff the 3r…

> if they control everything and can drop a standard 90ms down to 10ms

10ms, after request processing, ad selection logic, and faster-than-light packet travel? I think that's far too optimistic of an improvement. As the post said, 30ms was the goal. My adserver delivers in 20-40ms. But since ads are routinely loaded asynchronously, is speed concern truly valid? The adserver can usually make a selection and deliver before the content is fully rendered in the browser.

> Talking from the experience of building out a system that handled +1B impressions a day, the actual ad serving isn't challenging at all these days.

If you developed a system that delivers 1BB impressions per day (most large scale ad networks deliver only a modest multiple of that number) and didn't find it challenging, then it's either a very simple system or you're Elon Musk ;) That's 12k requests per second, generally uncached, hitting all sorts of internal services most likely.

I'm just saying that I think Reddit's best bet is to offload the task to a company that works on these problems full time. Or acquire one like AOL and Facebook. Unless the use cases are so unique and key to the company's future plans, avoid building in-house. And if you have to, perhaps it would be a larger effort than a 3 person team developing the thing in a language that the company never used in production before.

Re: Lessons from Building and Scaling Reddit's Ad Serving Platform with Go

#100
post #78

Earlier quoted context omitted.

This is the QA process that yields us precocious-looking stock photo 'MIT grads' trying to sell me a wine subscription on every other pageload?

reddit has ads? I hadn't noticed … More-pertinently, I wonder how many of the developers of reddit's new ad system themselves have ad blockers installed. Do any of them actually see the results of their work?

Reddit ads were what finally pushed me into install ublock origin about a year ago (redditor since 2007).

They had a misbehaving ad (downloaded a ton of "stuff" over and over and over). I reported it on one of the their support subreddits and was told "don't recognize the add urls. scan your system for a virus". It was a pretty good error report too (screen shots, console log, etc).

Installed ublock origin that day and haven't looked back.

Post reply on HN