Hacker News new | ask | show | jobs
by phire 1098 days ago
It seems like the plan was always to kill the 3rd party apps, but not until their own app was feature competitive with the 3rd party ones.

But they ran into time limitations. They plan to IPO later this year and they want the 3rd party apps to be dead before then.

2 comments

I can't see that.

If a 1.5 person app (Apollo) is handily beating Reddit's app... what on earth is the holdup? Either the eng team is wildly incompetent, or this is by executive choice.

Reddit's inability to deliver on mod tools despite a decade's worth of promises makes me think it's 40/60 wildly incompetent and needing firing vs exec choice.

I had proposed this reply to someone else's similar question.

I don't think the current app's design is an accident (i.e. it's not pure incompetence). It meets several objectives:

* Minimizes the user-generated content shown on each page (a couple of threads or a couple of comments), so it reduces the amount of traffic to the server and DB as the user browses around.

* Oh, and it leaves a ton of space for ads, which (bonus) can be served from a separate ad server, further lightening their load.

* Plus, there are Bob Ross-like "happy accidents" like pages jumping back to the top when you go a level up from a thread - going back to your spot can trigger more ads to be shown.

The 3rd-party apps subvert all this, and bypass the ads, to boot.

I think a big chunk of this is prioritization of resources in a way Apollo doesn't have to worry about. I highly doubt reddit has like utterly mediocre/shit devs. I think it's more likely that works are being prioritized in a way that shafts mods (who don't pay money) towards the goals of the reddit company to ipo (more ads and engagement with their first-party platforms). We had stupid shit like reddit coin and reddit gold and random other small features that are primarily to make money on the first party platform. Apollo's spec is much smaller in comparison, in which the users of Apollo are effectively paying for a smoother integration with whatever Reddit already built.
Yeah, but you'd think reddit could pay for 1.5 engineers to get that smoother integration themselves.
By paying for developers who can write good code and allowing them to write user-focused code instead of user-tracking code?
Imagine if you could simply write app code without needing to spend hours of time in meetings, writing analytics for every button tap, or writing dozens of explanations to managers why the app doesn't behave exactly like the web version.
It’s even worse than that, because both apps didn’t start at the same time, or from the same point. The Reddit official app started out as Alien Blue, which by all accounts was a very popular and well-made 3rd-party app itself. Reddit bought it, and then made it significantly worse, and THEN Apollo came out.
It's not unheard of. Back when I worked in a place that forced me to use Slack, I deshittified my experience via Ripcord, which could handle 90% of Slack at < 5% of overhead, while being much more ergonomic, and also doing 80% of Discord at the same time. And that client too was, AFAIR, a one-person project.
It’s a bit of a silly question, right? How come the Pirate Bay with fewer developers can offer me all Disney films but Disney with so many more can only release some from the vault. The motivations are different, so they’re probably working on things that make Reddit make money.

Fine, I'll spell it out: The hard part of making a client is making a client that can retain the money-making portion of an application. It is trivial to charge a small amount for client functionality when the predominant cost is on someone else. The reason you need a lot of engineers building the Reddit client is that they have to deliver the ads, make sure the ads are viewed, and correctly reported as having been viewed. The whole thing.

If you don't have to worry about making money, you can make a front-end to anything quite easily. This is why most HN commenters frequently make the "what's so hard about the Uber app" mistake. The hard part isn't the app chrome. The hard part is making it make money.

That's a silly comparison.

Apollo is a better client. The comparison is Apollo vs the Reddit app, not Apollo vs Reddit as a whole.

That is an EXTREMELY silly comparison, like it doesn't make any sense at all.

We are talking about clients here.

Is it beating the reddit app? What percentage of users use Apollo?
I think you are reading "beating" as higher user count. I read it as better features and user experience. But even in terms of user count, enough people are using third-party clients like Apollo that reddit deemed it worthy to kill them.
did some back of the napkin math with what the apollo developer has said publicly. each user makes 10,000 api calls a month and there are 2 billion calls per month which means 200,000 MAU. Reddit has an MAU around 500m users.
I mean since apollo users are a subset of reddit user your comparison seem pretty mundane.
The article says the average Apollo user makes 345 API calls a month. Using your number of 2 billion calls per month, that’s more like 5.8 million MAU. Still around 1 percent of Reddit’s MAU.

EDIT: Oops, that’s per day! Your math is right, please ignore.

I know several developers, myself included, who are significantly more productive in their personal projects than in their main jobs. This discrepancy can be attributed largely to unnecessary bureaucracy. I have a lot of examples to illustrate this point. In one instance, we found ourselves in a meeting with nearly 30 people, spending close to an hour discussing how long it would take to implement a particular topic. In a typical project, this implementation would have been completed within half a day, employing TDD and incorporating feedback cycles, no shortcuts or hasty work. However, due to the need to navigate through a chaotic development process, involving for examples over 20 microservices managed by a three-person team, this task is projected to span multiple two-week sprints.

Another example: Over a year ago, I decided to explore programming with Python. At work, we encountered the problem of our web-based software requiring users to download PDFs to read them. As a personal project, I set out to build a Python application that would generate individual image files for each page of the PDFs, providing both a preview image and a higher resolution version. I dedicated a few evenings and two Saturdays to the project, and after approximately two weeks, it was successfully completed. Additionally, I created a simple GUI using Vue.js, enabling file uploads and displaying the resulting images. An experienced Python developer could likely achieve the same task in just one or two hours, with an additional two hours for the frontend.

Months later, the company decided to embark on a similar project but with additional extended OCR (Optical Character Recognition), incorporating machine learning to extract structured data from the PDFs. Initially, the prototype aimed solely at uploading the PDFs, with the machine learning aspects simulated. Months were spent discussing, conceptualizing, refining, and revising before the implementation phase commenced. Over a year later (though I have since left the company, I remain in contact with current employees), the first prototype was completed. Users can upload PDFs, and the system generates images from individual pages. The frontend simulates a progress bar, as the microservices run in the background without a built-in monitoring system. One of the more experienced developers foresaw this issue from the start, but management hindered his efforts until he eventually resigned. To date, the machine learning component remains unimplemented.

My last example for now: I recall a situation where the best developer I know was hired by a large corporation as external support. Within a few weeks, he was assigned an easy standard task that any competent developer could handle with ease. Believing it to be a sample project for the standard onboarding process, he promptly and efficiently completed it in less than a week. When he delivered the finished result, his clients were astonished. They had planned this to be his sole project for the next six months and had expected it to take a significant amount of time.

In summary, it is not uncommon for companies to invest months of work and millions of dollars into projects that a reasonably skilled developer could accomplish in a day. Never underestimate the incompetence of some organizations.

Isn't this always the way. Crowd source development and ideas to see what gains popularity, and then build those features into your thing or buy the 3rd party thing to rebrand as your thing. That's like startup culture 101
Another thing that probably irked Reddit was that Apollo, RedditIsFun, and the other popular clients were monetizing their apps by including their own ads, charging a one-time or monthly fee. I'm surprised that wasn't against their API terms.
It's not. It's similar to how Imgur does it.

Imgur serves advertisements when you go to their page. But you don't get them through the API.

https://api.imgur.com/#commercial

> Your application is commercial if you're making any money with it (which includes in-app advertising), if you plan on making any money with it, or if it belongs to a commercial organization.

Calling an API and monetizing the front end it is fine. The money that Imgur loses from ads is made up in the API call monetization.

The Reddit APIs don't prohibit serving advertisements or any other form of monetization of the use of the APIs and mention it as something that your app would need to do.

https://www.redditinc.com/policies/data-api-terms

    You will disclose in your App through a privacy policy how you collect, use, store, and disclose data collected from your App Users and other visitors, including, where applicable, that third parties (e.g., advertisers) may serve content or advertisements and collect information directly from your App Users and other visitors that may include the use of cookies. In addition, by using the Data APIs, Reddit may use submitted information in accordance with our Privacy Policy.

Note that sending data to 3rd parties from a front end (e.g., advertisers) is something that is allowed provided that it is properly disclosed to the App Users or other visitors and that it may serve content or advertisements from the application.
Seems more that they were upset/afraid about how it made the corporation appear inept (and correctly so).

It was about maximizing the value of the IPO by ensuring investors would be minimally aware of the failures of the app and new Reddit, by ensuring as few 3rd party products exist as comparatives to the first party offerings.

It could be argued to be part of a conspiracy to defraud investors by ensuring they were incapable of being fully informed....

Never seen an ad in Apollo
Apollo has a 1-time fee to post and a monthly fee for notifications and other features.
But they have done neither. They did not build the most popular 3PA features into their native app, nor did they offer to buy them out.