ydd

ydd

Hi all,

I wanted to share with the community my first public Elixir project: shoutouts.dev a website for OSS users to post public messages of gratitude for projects they use and love.

Using Phoenix with extensive use of LiveView, Tailwind CSS and a touch of Stimulus JS, the code is available at GitHub - yeraydiazdiaz/shoutouts.dev: Open Source is hard. Show your gratitude · GitHub. Any suggestions, comments, or ideas are welcome.

Hope you like it :slightly_smiling_face:

Showing Posts 1 to 7

Exadra37

Exadra37

Congratulations on your project :slight_smile:

## What about trolling?

Any time you have users posting about other users there’s a risk of abuse. It’s not an easy problem to solve but shoutouts.dev has some strict rules and practices in place that I hope will prevent it, and it all starts with accountability.

  1. Only users whose provider (GitHub for now) account is older than 2 years are allowed to post shoutouts.
  2. Owners of projects can flag shoutouts. One flagged shoutout will prevent the user from posting more shoutouts to any of the owner’s other projects.
  3. If more than three owners flag shoutouts from the same user, they will be banned from ever posting more shoutouts.

These rules may vary over time depending on their success, but it is my hope that will make shoutouts.dev “good vibes only” site.

Rule 1 is kind of discriminatory and will not be effective. You just go through Github and you will see a lot of devs with more then 2 years posting inappropriate comments or that barely have participated in anything.

So, instead I would queue the shoutouts to be approved by the owner of the repo or by someone on that organization. Maybe they can also be approved by moderators in the shoutouts community.

Maybe you could also make only possible to shoutout if the Github users as more then x likes in comments he has posted in the past and doesn’t have any or more then x of :-1:.

ydd

ydd OP

Thanks for the feedback! :slightly_smiling_face:

I don’t agree it’s discriminatory or ineffective for two reasons.

Firstly, GitHub users that have recently created accounts have very little to lose if they engage in trolling, as they could simply create a new account and move on. On the other hand, a 2 year minimum longevity means the user is likely invested some time in their account and built up some reputation, raising the accountability factor.

Secondly, one of the aims of the project is to add as little maintenance as possible on the owner side. By requiring some accountability we reduce the possiblity of getting spammy shoutouts and having the owners weed them out themselves, exposing them to potentially harmful messages and adding to their workload which is the opposite of what we’re trying to do.

Moderation is a possibility but it relies on community, which we don’t have at the moment, and is more complex. That being said, there is some support for a voting system on shoutouts, but thought it best to see if the accountability option works.

Thanks again! :slightly_smiling_face:

Exadra37

Exadra37

I agree that new accounts should not be allowed, and thats why I proposed:

In my opinion the limit of 2 years is not good way to go, because if I was an active developer with less then 1 year or 2 in Github I would be feeling annoyed and discriminated with this two years requirement.

So, instead I will measure the number of repos, stars, followers/following, and comments posted and the relation between positive likes and negative likes received to establish a threshold from where devs would be allowed to shoutout no matter their age.

It makes sense :+1:

ydd

ydd OP

That’s fair, the 2 year value is obviously arbitrary, but it’s easier to implement at this stage of the project, I will certainly consider your idea. Thanks again :slightly_smiling_face:

APB9785

APB9785

Creator of ECSx

I had to re-make my github less than a year ago so I guess your site is not for me - maybe I’ll remember about it next year!

ydd

ydd OP

I understand, but as I mentioned previously the intent is to completely avoid shoutouts from throw away accounts and minimise the impact on project owners.

Obviously the cost is for some users to not be able to post a shoutout, but I think the benefits outweigh the costs.

ydd

ydd OP

On second thought, and re-reading what I posted, it does feel like 2 years is excessive to prevent trolling from throw away accounts. I think I will reduce it and see how it goes given we have a severe lack of people actually posting shoutouts.

Thanks again for the feedback :slightly_smiling_face:

— All posts loaded —

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 91898 914
New
AstonJ
The obligatory hello world thread! Who are you and where are you from? :stuck_out_tongue:
4616 55835 594
New
byu
@chrismccord : I just saw the Extract AGENTS.md from Phoenix.new into phx.new generator commit to the phoenix project. My initial shotgu...
New
arcanemachine
I was working on an Ecto migration and I needed a timestamp. So, for the nth time, I looked up the different data types for timestamps, a...
New
alexslade
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog It says that Fly is going all-in on sprites, which is a worry ...
New
Herve37
We’re evaluating API mocking tools for OpenAPI-based projects and would love to hear what other teams are using. We’re particularly inte...
New
matt-savvy
Is there a word for the ~> symbol used in Version strings? Do you also just call it a Squiggle Arrow™ ?!
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews