Programming.dev Meta

2236 readers
23 users here now

Welcome to the Programming.dev meta community!

This is a community for discussing things about programming.dev itself.

Links

Credits

founded 1 year ago
MODERATORS
1
2
submitted 10 months ago* (last edited 10 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Hey everyone. Some of you may have seen the recent announcement with blahaj to defederate with the instance. Ive been handling things privately and wanted to do an announcement to catch you all up on the results of that

#1: Background knowledge

Realized that not everyone knows how the instance is structured so figured I would do a little section in the front to go over that (especially for visitors reading this from other instances)

We currently have 8 admins in the instance. Of those 2 people are currently lead admins (snowe and I). Majority of admins are part of the community team but not all of them (people are split between infrastructure, development, and community). I was planning out a team page similar to what lemmy.world has to go over this with a bit more detail and that should be coming in the future. Main thing though is its intentionally structured so one person doesnt solely have power (hence the two leads). If one person ends up messing up theres the other lead and the rest of the admin team to talk with them about it and help them do better in the future.

#2: What happened?

There was a thread in lemmy.ml about the hogwarts legacy game winning a steam award. For reference for the following images + description, snowe is the other lead admin for the instance apart from me and the other people are various other users

There was a conversation that ended up essentially devolving into a slap fight within this post (ive purged the entire conversation so people dont stumble onto it in the future but ill post images here with them for archiving reasons and to explain it)

^ These comments were what initially started it. Essentially it was an argument about the hogwarts legacy game being or being not transphobic

^ Later in the argument

^ One branch that ended up getting triggered due to the frontend snowe uses on mobile not showing pronouns (how most instances handle it currently is its appended to the end of the display name but some frontends choose to ignore the display name and just do the username instead)

There are other branches but it is a very large amount to screenshot and dont want this to completely flood this post. Everything should be available in the modlogs still if you want to dig a bit deeper or I can send other screenshots in the replies on this post if youre interested in what was said for certain parts

#3 Aftermath

Due to the argument above blahaj chose to defederate with programming.dev which was going to take effect 48 hours after their announcement on it. (This is due to the person in the conversation being one of our lead admins which is ultimately understandable as they represent the instance)

snowe has sent a message apologizing to ada (the lead admin for blahaj). I dont know the contents of what was said but if they want the two of them can choose to publicize it.

One of our admins should not have escalated the situation and participated in this slap fight so on behalf of the admin team here were sorry about that

Internally we have a guidebook for admins to follow for the various aspects of the instance (moderation, applications, etc.). Ive refined this guidebook with a couple new rules for admins that should be taking effect in the future

  • admins will be required to have two accounts, one for admin activities and one for non admin activities. This is how some admins have already been interacting in the fediverse and basically makes it so comments done on the non-admin account should not be taken as that admin speaking on behalf of the instance. Generally the admin account will be things done relating to admin duties (e.g. my posts here in meta) while the non-admin account is other various conversations. Admins can be as anonymous as they want with the non-admin account similar to how our users here can be as anonymous as they want with their accounts
  • im adding in some guidelines for tone while chatting for the admins so comments made that are on behalf of the instance should be respectful and not devolve to slap fights

Like I said before in #2 ive also purged the entire conversation to avoid people stumbling onto it and seeing a slap fight with an admin that has since apologized. As the community exists on lemmy.ml I cant fully do this due to how federation works in lemmy but the mods in the community have been doing the same which should federate.

This should not have happened in the first place and we as an admin team will be better going forward

I hope the blahaj instance sees our actions and chooses to reverse the defederation decision but at the end of the day its their instance and they can choose whoever they want to federate with (note federation is done directionally. I will still leave our direction of federation open)

Edit: Blahaj stopped their defederation (shown in an edit on their announcement) so the two instances will still be federated both directions going forward

2
 
 

We now have our third alternate frontend setup, voyager. This one is a mobile first frontend

https://v.programming.dev

Mlmym coming next (old reddit style) but ive been having issues with it so unsure when

3
 
 

Continuing with alternate frontends for the instance, we now have the photon frontend hosted at https://p.programming.dev/

Voyager should be coming tomorrow

4
 
 

Hey everyone

Its been a bit since the instance has been started and the community handling has become mostly stable so we are changing how community creation works

You should now see a button in the UI called create community that you can use to create a community without needing to go through our community request zone. Instead of filtering communities ahead of time we will retroactively check on new communities and delete them if they dont match the instance

This should be a much better experience for community creation instead of needing to dig around for the community request community. This also means the vote threshold is no more as it doesnt seem needed anymore now that its stable here and things shouldnt be coming in too quick

The UI still isnt ideal since its not apparent that the creation will be moderated afterwards but hopefully in the future we should be able to make something to show its happening (and possibly limit the community until its approved but make it still happen through the button). But for now ill be updating the sidebar with info on the new system


In the future I will draft up a mod welcome guide and mod guidelines and post a link to them here once I get time to do so

Please do not community spam. Try not to mod more than 5 communities unless you have the time to handle that many things

If we notice someone is community squatting by mass creating things and then doing nothing with them theyll be handled and the communities will either be deleted or put into the adoption community !adopt_a_community@programming.dev

5
1
submitted 10 months ago* (last edited 10 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Hey everyone! Ive been messing around with getting alternate frontends hosted for the instance

To start it off we now have the alexandrite frontend hosted at https://a.programming.dev

(a in the front to match how other instances have been doing it so its consistent)

Im also attempting to get voyager, photon, and mlmym hosted as those are the other main ones. If you have any suggestions for other frontends let me know and I can try to get it set up

Note for all of these its not guaranteed they will be supported forever since it depends on the developers of them to update to the most recent lemmy versions. If we end up dropping one due to lack of support for recent versions ill announce it here

6
 
 

Hey everyone! Finished up a recap system for lemmy where you can request your stats for the past year (things like posts made, comments made, top posts for the year, etc.)

Hope you enjoy! Theres a role it assigns you and an image you can copy at the bottom

7
1
submitted 10 months ago* (last edited 10 months ago) by yogsototh@programming.dev to c/meta@programming.dev
 
 

First happy new year everyone! Thanks a lot for all the work provided by admins and everyone involved in this lemmy instance.

Recently I am blocking all communities from zerobytes.monster instance personally. It just appears to be a ripoff some subreddits.

As there is no way to block all communities from some instance as a programming.dev user and as I feel these communities are mostly spam. I wonder if other people share the same feeling and if programming.dev should block them?

I hope I am asking via the correct channel. I don’t think this should be reported as I might also be in the minority and other people prefer to keeps these communities copied from reddit.

8
 
 

Hey everyone! Thanks for being part of p.d in 2023

Ive been working on some things so figured I would give a little sneak peek into some new things that will be arriving in the next couple months

Lemmy Recap

Originally wanted to get this out before the new year but ended up getting sick so itll likely drop sometime this week. Youll be able to see stats like how many posts you made, how many comments you made, your top post, etc.

Icon & Banner Poll

Once im done with the recap ill be running some polls for what people like more between a new logo I designed and the old one and It would possibly have the icon for the instance switch depending on how the vote goes

Pangora shields.io badges & bot list

Adding some new supporting sites for pangora. There will be custom shields.io badges that can be used to display instance, community, or user stats and a bot list to list the bots that currently exist

Supporting sites

New supporting sites for programming.dev such as an improved status page, a donation page, a team page, etc.

Programming challenges

Im bringing back programming challenges but they'll be mostly ran using a supporting site and will be much less frequent (probably 1 challenge a week)

Lemmy Event: Safe Crackers

Should hopefully be running a new event in february called safe crackers that people in any lemmy instance can participate in

Hope you enjoy the instance in the coming year!

If youre interested in chatting we have both a discord and a matrix community at https://discord.com/invite/kwyxvYEYt4 and https://matrix.to/#/#p.d:matrix.org

If youre interested in helping out with coding various things for the instance such as the supporting sites or a new backend + frontend thats been getting built feel free to let me know and I can add you to the areas for that. Languages used are mostly Javascript, Typescript and Java

9
1
submitted 10 months ago* (last edited 10 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Back with another community health check-in to see how communities in the instance are doing

  • Lively- 5k users/month or above
  • Active - 201-4999 users/month
  • Moderate - 51-200 users/month
  • Quiet - 11-50 users/month
  • Dead - 0-10

Communities

  • Lively communities: 1 (1%) (~)
  • Active communities: 14 (7%) (+1% from last month)
  • Moderate communities: 19 (10%) (-5% from last month)
  • Quiet communities: 64 (34%) (+9% from last month)
  • Dead communities: 90 (48%) (-4% from last month)
  • Total communities: 188 (+11 from last month)

  • Active communities increased a bit
  • Moderate and dead communities decreased
  • The amount of quiet communities increased a bunch

Advent of code

Advent of code was at 136 active users/month before this month started and now its at 839 (as this month was when advent of code occured)


Least active communities

(These are ones that will be prioritized for making active) (theres a lot in the dead category so these are random ones from that, not all of them)


In the future im going to try to automate these stats so I dont have to do this manually

10
1
submitted 10 months ago* (last edited 10 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

The instance has now been upgraded up to 0.19.1 from 0.18.5

Due to some authentication changes you will need to log in again and set up 2fa again if you had it previously enabled (since the 2fa process changed to prevent people locking themselves out)

Code Highlighting

If you make code blocks using the three backticks method the code in it will automatically be highlighted based on the detected language (in lemmy-ui aka the site)

Surrounding in 1 backtick lets you do it inline

E.g.

`console.log("hello world")` becomes console.log("hello world")

```
console.log("hello world")
```

Becomes

console.log("hello world")

The blocks will be light if youre on the light theme and dark if youre on the dark theme

Instance Blocking

This is for lemmy-ui, alt frontends may not have support yet or may be done a different way

Go to your profile settings by hitting your name, then settings in the top right

There should be a blocks section you can switch to. Go to the instances part of that and search for the instance you want to block

Blocking an instance will prevent you from seeing posts from that instance

Scaled sort

When you go to choose a sort while browsing posts you should see an option called scaled. This is hot but takes into account the active users to boost communities that need it. (E.g. a community with 20 active users will be shown more than a community with 10000)

Remote following

You can follow a community while browsing it from the site of another instance. To do this just hit subscribe for the community while not logged in on that other instance and it'll bring up a pop-up where you can enter your instance you want to subscribe from

Https://github.com/LemmyNet/lemmy-ui/pull/1875#issuecomment-1727790414

11
 
 

Hey everyone! Were pushing through the update to 0.19 now that 0.19.1 is out that fixes the issues with it (outbound federation breaking + show read posts not working)

Said in the previous meta post it would be after christmas but due to something that got noticed about 0.18 (not going to specify what since we and a bunch of other instances are still on it) were pushing it through now

Major Changes in 0.19

  • Code block support in lemmy-ui (the website) (contributed by programming.dev)
  • Activity metrics now includes voters (contributed by programming.dev) (this is how our instance was doing it but now all instances do)
  • Reports are now resolved automatically when a post is marked as deleted
  • 2FA has been reworked to prevent people getting locked out
  • Users can now block instances
  • Theres a new scaled sort that can be used (hot sort but takes into account community active users so it boosts low activity communities)
  • You can now remote follow instances by browsing on another site and hitting subscribe when not logged in (https://github.com/LemmyNet/lemmy-ui/pull/1875#issuecomment-1727790414)

Theres a bunch of other changes but not relevant to end users or are more minor

NOTE

  • If you enabled 2fa you will need to enable it again due to the 2fa changes
  • You will need to log in again due to authentication changes
12
1
Any update on 0.19? (programming.dev)
submitted 10 months ago* (last edited 10 months ago) by Rizoid@programming.dev to c/meta@programming.dev
 
 

Is there a timeline or anything for upgrading the instance to 0.19? The scaled sort and user level instance filters are really nice.

13
 
 

migrating from r/developersindia.

14
1
submitted 11 months ago* (last edited 11 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Hey everyone! Been a bit since the instance has been created (and 0.19 is dropping soon) so figured it was time to update the logo and banner to look a bit nicer

The current logo is made using fira code and the banner is a quick one made by snowe

The banner though tends to not look great when text is overlayed on it in certain apps due to it being text on text and it doesn't stand out that well due to it just being black


Submissions

You can submit new logos or banners below that you think would be good for the instance. After around a week theyll be collected together and then ill run a vote for which ones people like the most

Please only submit stuff you have a proper license to use (either you made it or its something such as CC0)

If you submit something you acknowledge that we can then use that for the instance


Current Icon & Banner

Ill be adding in the current icon and banner into the vote as well when im running that if people like them better than the new options


Other misc things

  • Voting will be most likely ranked voting. I can try to create a web page that will handle voting so people can vote by logging into their p.d account and then voting with that
  • You can submit as much as you want, just if someone is spamming way to many similar things ill limit the amount that is put in the voting section

📌Ill be pinning this post in the instance for a couple days, then will pin the vote when that happens

15
 
 

Until Lemmy (or an alternate) allows for blocking domains on an account level, please block lemmy.blahaj.zone accounts from posting on programming.dev and sending messages to programming.dev accounts.

16
1
submitted 11 months ago* (last edited 11 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Starting up a new monthly post where I look at the communities in the instance to see how well all of them are doing

From this we should be able to see what communities are struggling so that they can be focused on for adding activity across the instance

My goal for december will be increasing the amount of communities that appear in the active and moderate sections and will compare to see the activity change then


For community activity levels im breaking this into 5 categories (note these stats are based on the new users/month stats in the instance)

  • Lively- 5k users/month or above
  • Active - 201-4999 users/month
  • Moderate - 51-200 users/month
  • Quiet - 11-50 users/month
  • Dead - 0-10

Communities in each category

  • Lively communities: 2 (1%)
  • Active communities: 11 (6%)
  • Moderate communities: 27 (15%)
  • Quiet communities: 45 (25%)
  • Dead communities: 92 (52%)

Most active communities


Least active communities

(These are ones that will be prioritized for making active) (theres a lot in the dead category so these are random ones from that, not all of them)


One other community that should be interesting to see the growth is the advent of code community as that is about to start

!advent_of_code@programming.dev

currently at 136 but I assume thats going to grow much larger

17
1
submitted 11 months ago* (last edited 11 months ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Hey everyone, I just pushed a change that changes how active users/month, etc. is calculated

In Pangora I've swapped this to include both post and comment likes to more accurately reflect activity in addition to the default things it counts (By default it only counts people who have posted a post or a comment but thats not everyone who is active in the community) (Its not counting people who have looked at the community but not voted or posted but its closer than before to getting most activity).

To line the instance up to pangora functionality and since I can do this without needing to touch the code I made it follow how pangora calculates it.

users/day on some community gives a tally of all users that have done one of the following in the past 24 hours in that community:

  • posted a post
  • posted a comment
  • voted on a post
  • voted on a comment

The community stats have already been updated and the instance-wide ones should update soon next time it recalculates the stats

(note these stats only show in the instance since each instance calculates their own set of stats for all communities. If youre looking at a community in this instance from another instance the old stats will show. However this also means that communities in other instances when viewed in this instance show the new stats)

18
 
 

This is an instance created as staging environment for voyager, as mentioned here

But looks like it is blocked in programming.dev, because of which I can't access it while being logged in to programming.dev instance.

19
1
submitted 11 months ago* (last edited 11 months ago) by Rick_C137@programming.dev to c/meta@programming.dev
 
 

Hi,

I'm trying to post on: !programming@programming.dev

but it seem stuck

20
 
 

Hey everyone, I just finished up a new bot for the instance called Link

This bot aims to give suggestions for other communities in the instance to post to to start populating the more specific topic communities. It currently is triggered just off of keywords it finds in post titles.

This should help people find other communities after they post to !programming@programming.dev and encourage cross-posting in the instance since thats recommended (and standard lemmy behaviour is to show crossposts as one post in the post feed)

I added some of the communities in the instance and will go through and add in the rest of them shortly

21
1
New instance taglines (programming.dev)
submitted 1 year ago* (last edited 1 year ago) by Ategon@programming.dev to c/meta@programming.dev
 
 

Hey everyone! I added some new taglines to the instance to more than double the amount of them we have. You should see the new ones popping up at the top of the home feed

New taglines were taken from the !quotes@programming.dev community and https://http.cat and were currently up to 96 of them

22
 
 

I will no longer be able to assist with development nor debugging actual issues with the software... Quite juvenile behavior from the devs. It stemmed from this issue where the devs continuously argued in public by opening and closing an issue. Anyway, thought I would keep y'all apprised of the situation, since these are the people maintaining the software you are currently using.

23
 
 

I've noticed that !gamedev_discussion@programming.dev is abandoned and is already a child community of !gamedev@programming.dev which basically serves the same purpose and on average receives only a couple of posts per week.

This got me thinking: we have a process in place to create new communities in !community_request@programming.dev, but is there a process in place to remove abandoned communities?

24
 
 

Over the weekend we had a large intermittent outage, followed up by unplanned maintenance that I had put off for way too long.

Lemmy runs with several different services.

  • lemmy-ui (the reactesque frontend)
  • lemmy (the rust backend)
  • postgres (the data store for operations, comments, posts, etc)
  • pictrs (the image data store)

The outage concerns itself with the last one. We always knew we'd eventually need to migrate to an object based store, but Lemmy defaults to file based picture storage and that's what we stuck with up until now. This eventually caused the VPS that programming.dev is running on to seize up, and resulted in the outage over the weekend.

Saturday night I spent several hours testing out the object migration on the beta.programming.dev site in order to validate that it worked. During this time I struggled with some very obtuse ansible errors that I hadn't encountered before and so I was not able to start the migration that night. I delayed until the next morning (thank goodness).

I began work Sunday morning at 10:00 America/Denver time. Initially the migration started off quite well, but was moving incredibly slowly. Looking back on it now, the migration would have taken over 144 hours if I left it to do its thing. I let this run for about an hour before messaging the pictrs dev to understand why logs weren't showing up for the migration (even though objects were showing up in the store). Apparently lemmy-ansible is set to use 0.4.0 of pictrs, which not only is quite old, but doesn't have the ability to run migrations concurrently. There was the issue. I asked the dev is it was possible to stop a migration in the middle of the running, upgrade, and continue. They told me what changes I'd need to make, I made them, did the upgrade, and restarted the migration. It immediately failed. This was the start of my issues.

The server was now too full of data to do anything, including running apt update or apt install to install tools to assist me. I was able to attach more block storage, but I'm not enough of a linux guru to figure out how to mount it where the current pictrs filesystem would be able to take advantage of it. I had to result to copying the entire pictrs filesystem to a fresh ~500gb mount, fixing permissions, and then rerunning the migration from there. By the time I got to this point, it was about 12:30PM. The migration from then on took several hours.

After the migration completed, I needed to deploy the new stack with the correct settings. The ansible script needed to run apt though, and, well, that wouldn't work when the server was still full. At this point I was not confident in the migration and I also hadn't realized that you could do the migration while the site was running (big oversight from me). I therefore wanted to maintain the entire pictrs file store until I proved the object store was working. I created another block storage, copied the entire pictrs directory over to it again (another 20 minutes or so) and then deleted the original directory. I was now able to run the ansible script and deploy the new settings for pictrs, confident that I had a backup available in case something went wrong (this is not the main backup method, the server is backed up externally as well, but I didn't want to have to resort to those during the migration).

That completed the migration, some 5 hours after it originally started.

There were several things that exacerbated the issue that made it take several hours longer than I wanted.

  1. I let it go so long before doing the migration to object storage that the server was too full to even perform an apt update. This resulted in me not being able to install tools I needed, along with a host of other issues as mentioned
  2. pict-rs was at a very suboptimal version. If it had just been two minor versions newer it would have migrated perfectly fine, in a few hours.
  3. my limited knowledge around ansible led me on wild goose chases several times

Things I would change if I had to do it again:

  1. Dig in a bit deeper on the concurrency flag in the pictrs docs. It was not present in the original guide I followed (from a lemmy post on another instance), and thus I didn't realize that it wouldn't run with concurrency at all.
  2. Don't wait so long so that the server is full
  3. Migrate while the server is running. That would have been dumb in this case, since the server wouldn't stay up anyway, and could have caused other issues. But there was no reason to take the server down if it had been stable, and other instances have done so with no problems.
25
 
 

Hey everyone, update on https://programming.dev/post/4613085

We did some changes in the database and it seems like outbound federation is working again. If you run into any more problems with it let us know.

Im pinning this post for around a day to let everyone know since we had the last post pinned for a bit

Any posts or comments made while it was broken still wont be federated but new ones should be. The instance essentially marked all other instances as dead which meant it thought it didn't have to send things to them

view more: next ›