PathOfBuilding icon indicating copy to clipboard operation
PathOfBuilding copied to clipboard

Trending Builds section should be not be present.

Open CraniumViolence opened this issue 1 year ago • 47 comments

I feel like everything around merging the 'Trending Builds' advertising feature was a mistake.

The biggest issue is of course that this is thinly veiled advertising for a for profit website. The site has active advertisements and directly profits off other people's content that it scrapes. Path of Building should probably not be funneling money directly to a random entity with a default feature.

The content that it scrapes is also another problem. The site being advertised is clearly just scraping youtube channels and posts on reddit to get builds, this is pretty blatantly seen in the presence of a video that has a whopping 0DPS being one of the first visible builds when looking at the page in Path of Building.

clicbait_zdps

In general that the list of builds is a mix of misreported DPS with clickbait, youtube oriented titles and a literal link to something that isn't a build doesn't inspire a great deal of confidence in the feature, and that's ignoring a lot of other issues I have with the presentation in general.

The list of builds also does not have a way to access where the build originates, the preview button takes you to pobarchives.com and you have to actively scroll down to find the video, which has already exposed you to said advertising.

You also cannot ever turn off 'Similar Builds' as a button, it simply displays forever without being able to try and find builds. I feel like this is also a poor feature in general as 'similar builds' is very vague and doesn't really present enough information on why something is similar at all.

The feature in general is putting a lot of power in the hands of a single entity running a for profit, closed source website that allows people to actively pay to advertise their builds which the layperson will 100% assume is directly affiliated with Path of Building.

As an aside, the operators of the site itself are also actively running a reddit bot that actively attempts to redirect people away from an open source, non-profit, ad-free site (pobb.in) to his own for profit, closed source site that fulfils functionally the same role.

I find it very hard to believe anything about the implementation of this feature was done with any goal other directly feeding people to a very specific website, this seems doubly obvious with the request for the site to be 'default' in the original pull request.

I'm genuinely baffled how anyone thought merging it was a good idea and feel like this implies a need for greater controls on what gets merged into the actual app in general.


They're scrubbing said reddit bot posts now, so for posterity here is a screencap of what the unsolicited reply looked like. bot)

CraniumViolence avatar Jul 25 '24 16:07 CraniumViolence

It is worth noting, that to about ~1 hour ago, one of the Patreon perks literally was:

Your builds will be favoured in search.

Which has now disappeared after i made a reddit comment mentioning it. Sadly i don't have a screenshot of it. While the perk is gone, it would be interesting to know if the functionality is gone too, and if there are any plans to maybe bring it back in the future.

Ghazzy was looking at the patreon on stream at a time where the favoured part was still in: screenshot Ghazzy Twitch Vod Timestamp

tom33333 avatar Jul 25 '24 16:07 tom33333

Well it used to load, now it is not loading. So, wish granted ?

imthenats avatar Jul 25 '24 16:07 imthenats

It is worth noting too that this site does not ask build creators for permission or consent to upload their builds.

image

As you can see on any build page, it doesn't ask permission and just lets build creators claim their stuff afterwards, requiring a path of exile account, reddit, or patreon login to do so.

I do not think a site which doesn't even ask consent or permission for its content should be a core feature for Path of Building.

nitorikawashiro1 avatar Jul 25 '24 17:07 nitorikawashiro1

Well it used to load, now it is not loading. So, wish granted ?

I do not know if its Path of Building stopping it or issues with PoB Archives itself. The website occasionally 404s image

MstrGrth avatar Jul 25 '24 17:07 MstrGrth

Any builds that are there because of Patreon should have a giant ass border around them saying "SPONSORED"

caseymoe avatar Jul 25 '24 18:07 caseymoe

I've opened a PR to address this issue. In addition to the concerns above, adding a dependency to 3rd parties not affiliated with GGG is probably unwise from a development perspective. The trending feature is already not working properly because the site is essentially being ddos'd by everyone using POB.

kwjanssen avatar Jul 25 '24 18:07 kwjanssen

I think the feature itself is good but linking specifically to POB Archives is the problem. There should be an open api spec that works with POB that any website could implement to get builds to show up. Then there should be an option to add websites to POB to pull the builds. I can imagine the dropdown box where PoB Archive is listed having several sites listed. Maybe a manage button next to it to add sites with the default being no sites.

That way if you want to still use PoB Archives despite the problematic issues with the site you could add it.

igloo15 avatar Jul 25 '24 18:07 igloo15

I think the feature itself is good but linking specifically to POB Archives is the problem. There should be an open api spec that works with POB that any website could implement to get builds to show up. Then there should be an option to add websites to POB to pull the builds. I can imagine the dropdown box where PoB Archive is listed having several sites listed. Maybe a manage button next to it to add sites with the default being no sites.

That way if you want to still use PoB Archives despite the problematic issues with the site you could add it.

This exists. PoB Archives implements this class to be in that dropdown: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/dev/src/Classes/ExtBuildListProvider.lua

Other websites can do the same, similar to how the website dropdown works on the Import tab

Wires77 avatar Jul 25 '24 19:07 Wires77

This exists. PoB Archives implements this class to be in that dropdown: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/dev/src/Classes/ExtBuildListProvider.lua

Other websites can do the same, similar to how the website dropdown works on the Import tab

That is the inverse. Now API maintainers would have to contribute to PoB, and maintain the PoB implementation. With the proposed API spec, PoB would not change, and users would just add an API to the list to pull from (and the other ends maintainers would never have to touch PoB).

Apart from that, isn't pulling data from external APIs kind of spooky in any case, whatever the implementation, you never know what kind of nasty things people start pushing to the PoB userbase, like say, someone purchasing an advertisement in an implemented website to promote their discounted OF, or just random hate speech? That brings a moderation requirement for PoB.

(Especially if the sites are implemented in PoB, i.e. part of the release, vs. users opting in by adding the sites manually as they wish, to see whatever they decide).

puttehi avatar Jul 25 '24 19:07 puttehi

I think the feature itself is good but linking specifically to POB Archives is the problem. There should be an open api spec that works with POB that any website could implement to get builds to show up. Then there should be an option to add websites to POB to pull the builds. I can imagine the dropdown box where PoB Archive is listed having several sites listed. Maybe a manage button next to it to add sites with the default being no sites. That way if you want to still use PoB Archives despite the problematic issues with the site you could add it.

This exists. PoB Archives implements this class to be in that dropdown: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/dev/src/Classes/ExtBuildListProvider.lua

Other websites can do the same, similar to how the website dropdown works on the Import tab

Adding a class to PoB isn't an OpenAPI spec. I am thinking of an API that returns json that is then consumed by PoB to create the build list.

So a json schema and set of standard apis need to be documented then a generic scrapper that uses those to pull data

igloo15 avatar Jul 25 '24 19:07 igloo15

This should really be opt in rather than on by default and should be user driven and not something added by default like with the archive situation. User driven as in users specifically adding a site or what have you they want to get build resources from there rather than having preset unrelated profit driven sites immediately shown or linked without the user wanting to engage with said sites or be linked to them. The similar builds button also should not be on by default.

IonDrako avatar Jul 25 '24 19:07 IonDrako

Apart from that, isn't pulling data from external APIs kind of spooky in any case, whatever the implementation, you never know what kind of nasty things people start pushing to the PoB userbase, like say, someone purchasing an advertisement in an implemented website to promote their discounted OF, or just random hate speech? That brings a moderation requirement for PoB.

(Especially if the sites are implemented in PoB, i.e. part of the release, vs. users opting in by adding the sites manually as they wish, to see whatever they decide).

I agree that is why users would have to add the sites manually. Then the responsibility is on them for verifying the external site to be legit. Also if done correctly scrapping json shouldn't really be spooky or anything.

igloo15 avatar Jul 25 '24 19:07 igloo15

I think the feature itself is good but linking specifically to POB Archives is the problem. There should be an open api spec that works with POB that any website could implement to get builds to show up. Then there should be an option to add websites to POB to pull the builds. I can imagine the dropdown box where PoB Archive is listed having several sites listed. Maybe a manage button next to it to add sites with the default being no sites. That way if you want to still use PoB Archives despite the problematic issues with the site you could add it.

This exists. PoB Archives implements this class to be in that dropdown: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/dev/src/Classes/ExtBuildListProvider.lua

Other websites can do the same, similar to how the website dropdown works on the Import tab

The issue is not whether it's technically possible or not but rather that the current default is a single website that no one opted into and is a for profit closed source tool. Nothing wrong with listing PobArchives as a possible source but never as the very first thing users see when they open up the tool.

Rybadour avatar Jul 25 '24 19:07 Rybadour

If it should stay there probably should be a change in the API as in a PoB setting that will have a list of possible endpoints for various sources, which may be used as source. Furthermore it might be a good idea to not have the dropdown at all but a generic filter menu and by default list all sources together if there will be multiple sources.

RaiNote avatar Jul 25 '24 19:07 RaiNote

Okay but what kind of endpoints you can have for a data source like this? You cant source poe.ninja because of how random bullshit go that site is without filtering. Besides PoE archives, there is no specific curated build list tailored for this thing. forum is dead too.

feature should be gone entirely.

caner-cetin avatar Jul 25 '24 19:07 caner-cetin

@caner-cetin I edited your post as there is no room for personal attacks here.

Wires77 avatar Jul 25 '24 19:07 Wires77

oops.

caner-cetin avatar Jul 25 '24 19:07 caner-cetin

also, no one mentioned it yet, related PR #7951

caner-cetin avatar Jul 25 '24 19:07 caner-cetin

Okay but what kind of endpoints you can have for a data source like this? You cant source poe.ninja because of how random bullshit go that site is without filtering. Besides PoE archives, there is no specific curated build list tailored for this thing. forum is dead too.

That's why there should be consideration in rewriting the API, as in for example PoB says:

You have a baseurl like: somepoebuildssite.com

And PoB would support endpoints such as:

filtering specific stuff such as gems etc.: ${baseurl}/v1/builds?query=... just getting a list of builds: ${baseurl}/v1/builds and with optional pagination ${baseur}/v1/builds?page=0

Also going from a I think it's either OpenID or OAuth specifiction the .well-known path option a site could implement a standardized path such as .well-known/pathofbuilding and list endpoints for various actions such as querying, listing, statistics etc. whatever PoB would consider supporting.

But this is only one of many possible ways but it would at least go into the direction that there is no need for active contribution from build sites into PoB and PoB having to manage and curate those sites, since if the user can just add arbitrary URLs for various services it would be the user's responsibility to add those.

Edit: What I believe I forgot to mention or what might not be clear that PoB will describe in what kind of format the returned data should be in, such as a JSON with fields such as buildString, name, externalUrl and whatever else might be necessary.

RaiNote avatar Jul 25 '24 19:07 RaiNote

You have some explaining to do.

Dont go harsh on people. Chill. This feature’s PR was open for 5 months, nobody except Wire said anything, now you cant just come and shitstorm the place. Give whatever your constructive criticism is and leave.

okay everyone knows situation is bad, you cant go artillery on contributors with saying “situation is bad”. you are adding nothing to the discussion

caner-cetin avatar Jul 25 '24 19:07 caner-cetin

Okay but as I said, we, and most importantly contributors know its a legitimate problem and a serious mistake. Main problem is you are adding nothing to the discussion by reiterating same things, and going ham on these people.

caner-cetin avatar Jul 25 '24 19:07 caner-cetin

I'm not "going harsh". This is the reality. I am an end user and my trust has been seriously eroded by this. Sorry for not candy-coating it, but this is a legitimate problem and a serious mistake.

Feel free to stop using PoB...? No one is forcing you to use it if you don't trust the maintainers.

cooperaustinj avatar Jul 25 '24 20:07 cooperaustinj

I'm not "going harsh". This is the reality. I am an end user and my trust has been seriously eroded by this. Sorry for not candy-coating it, but this is a legitimate problem and a serious mistake.

This is a pretty childish response though. It was a PR up for 5 months with the only interaction there being Wires doing basic UI and implementation checks with no other user response. The intent behind this addition wasn't super clear and as such got merged, is odd it didn't get put on the beta branch first but mistakes happen. Nothing dangerous was put into the program. The people working on PoB aren't making profit so I don't think your personal trust loss matter as most people can see it was just an oversight.

IonDrako avatar Jul 25 '24 20:07 IonDrako

As potentially useful as such a feature could be, the current implementation exposes the project to unnecessary risk and maintenance.

The current set up establishes the project as curator of approved websites which acts as a type of endorsement especially whatever the default is. The current controversy displays some the risk, but it could be much worse. After approval and integration the site could change the content to hate speech or direct urls to malware, phishing, etc. Having users add sites themselves would largely mitigate this.

The current setup also burdens the project with maintaining an implementation for each site. This makes unnecessary extra work for maintainers that should be the burden of the websites themselves. A more generic approach and an api spec would greatly reduce the maintenance required.

As is I would recommend removing it and either dropping it or refactoring.

Skeptic-Robot avatar Jul 25 '24 20:07 Skeptic-Robot

Observations: The current reddit post and creator coverage is creating (and going to continue to create) a significant influx of people who have no idea what they're talking about and acting entirely by reaction. Apparently it's difficult to separate the feature from the site it's linked to.

Opinions: The feature is a great addition. Having additional sites implement this would grow the feature. That's outside of PoB's control.

Suggestions: For now, disable this feature by default under a category such as "Third-Party Integrations"; add an option to disable the "Similar Builds" button in the same category. On the longer term, implement the suggestion posed by @gaschenk in that the "similar builds", "recent builds", and "trending/featured/popular builds" have a contract that PoB expects an api to be located at and return, and allow users to add sites by means of adding the site to a list, e.g. http://api.myscummybuildaggregator.com and make the displaying of such builds standardized.

djfariel avatar Jul 25 '24 20:07 djfariel

nothing needs to be thrown away to be fair

If that section is going to link to anything, it should link directly to the guide. Not a site that contains a link to that guide.

In fact it should be just a "mod". A separate add-on that @canuyal can maintain for himself. As it stands it's literally just bloat, and turns PoB into platform and not an extremely fancy calculator.

Bellabong avatar Jul 25 '24 20:07 Bellabong

After a bit of research...

#7389

The main (sole?) contributor to this feature is canuysal

They also own the website in question.

Is it ethical and right for someone to add a feature to a community edition that links to their 3rd party website, with a patreon that was in favour of giving perks like favouring builds, which would then manipulate the in-game economy by proxy? I would say no. This does not belong in the community edition as a base feature.

Most people commenting here are already aware of that since it's not hidden at all. As was mentioned the PR related to the feature was up for 5 months without anyone voicing concerns about it or the intent the creator had making it and it got merged with the most likely the positives of the potential core system and not what it actually was being considered. They did skip the beta branch unfortunately as from what I know now it's barely utilized.

There's ways a system like this can be positively utilized while difficult though the current rendition is less than desirable, I'm guessing it'll be walked back/removed and looked more into due to the current backlash and discussion around the addition.

IonDrako avatar Jul 25 '24 20:07 IonDrako

After a bit of research... #7389 The main (sole?) contributor to this feature is canuysal They also own the website in question. Is it ethical and right for someone to add a feature to a community edition that links to their 3rd party website, with a patreon that was in favour of giving perks like favouring builds, which would then manipulate the in-game economy by proxy? I would say no. This does not belong in the community edition as a base feature.

Most people commenting here are already aware of that since it's not hidden at all. As was mentioned the PR related to the feature was up for 5 months without anyone voicing concerns about it or the intent the creator had making it and it got merged with the most likely the positives of the potential core system and not what it actually was being considered. They did skip the beta branch unfortunately as from what I know now it's barely utilized.

There's ways a system like this can be positively utilized while difficult though the current rendition is less than desirable, I'm guessing it'll be walked back/removed and looked more into due to the current backlash and discussion around the addition.

As a user, I don't scan the pull requests of PoB for potential new features to flag, because I'm not a developer, and they've done a good job of adding new useful features without my input so far. The lack of comments on the PR isn't the positive you think it is - it indicates the dev community isn't engaging with the design intent of the PR.

Currently, POB is (and is described as) a offline build planner. And a dev just merged a feature which made it non-offline by having a API pull on the opening page, without any consideration of "is this the direction we want to take POB" "is the website pulling down relevant builds" "Have we load tested the site so this feature works against league-start load" "What's the risk of build titles saying gross shit" - a bunch of design considerations that should be thought about before the PR was merged to main. I'm not going to pile on the bandwagon against the dev here - I think both @canuysal and @Wires77 were genuinely trying to add what they thought were useful features. But this entire process has showed laxness in the development process by treating it the same as the many bugfix or small mechanical improvement PRs that have made POB what it is today.

acchamber avatar Jul 25 '24 21:07 acchamber

The problems you're outlining are not unique to this repository and are endemic of open source projects as a whole. If you would like to be part of the solution, please review pull requests and help to steer development of projects you enjoy. This conversation does nothing but discourage the current contributors from continuing.

djfariel avatar Jul 25 '24 21:07 djfariel

The problems you're outlining are not unique to this repository and are endemic of open source projects as a whole. If you would like to be part of the solution, please review pull requests and help to steer development of projects you enjoy. This conversation does nothing but discourage the current contributors from continuing.

This was the response I got the last time I criticized over here. (Involving a PR blindly nerfing damage with the evidence supporting not removing it, and years later that damage being added back)

Maybe yall would get more help if you stopped acting like open source is a cesspool and generalizing that all open source projects are like this. I can find plenty over in the KSP world that have plenty of engagement by their contributors, including notes on things discussed in Discord.

Bellabong avatar Jul 25 '24 22:07 Bellabong