this post was submitted on 06 Apr 2024
159 points (100.0% liked)

traaaaaaannnnnnnnnns

992 readers
67 users here now

Welcome to /c/traaaaaaannnnnnnnnns, an anti-capitalist meme community for transgender and gender diverse people.

  1. Please follow the Hexbear Code of Conduct

  2. Selfies are not permitted for the personal safety of users.

  3. No personal identifying information may be posted or commented.

  4. Stay on topic (trans/gender stuff).

  5. Bring a trans friend!

  6. Any image post that gets 200 upvotes with "banner" or "rule 6" in the title becomes the new banner.

  7. Posts about dysphoria/trauma/transphobia should be NSFW tagged for community health purposes.

  8. When made outside of NSFW tagged posts, comments about dysphoria/traumatic/transphobic material should be spoiler tagged.

  9. Arguing in favor of transmedicalism is unacceptable. This is an inclusive and intersectional community.

  10. While this is mostly a meme community, we allow most trans related posts as we grow the trans community on the fediverse.

If you need your neopronouns added to the list, please contact the site admins.

Remember to report rulebreaking posts, don't assume someone else has already done it!

Matrix Group Chat:

Suggested Matrix Client: Cinny

https://matrix.to/#/#tracha:chapo.chat

WEBRINGS:

๐Ÿณ๏ธโ€โšง๏ธ Transmasculine Pride Ring ๐Ÿณ๏ธโ€โšง๏ธ

โฌ…๏ธ Left ๐Ÿณ๏ธโ€โšง๏ธ๐Ÿณ๏ธโ€๐ŸŒˆ Be Crime Do Gay Webring ๐Ÿณ๏ธโ€โšง๏ธ๐Ÿณ๏ธโ€๐ŸŒˆ Right โžก๏ธ

founded 1 year ago
MODERATORS
 

Took me a bit and I am a little drunk but here are the totals. We had a good showing.

Note: some comments got cut out because the server doesn't like displaying more than 300 from what I can tell. I did my best with what it would show, I just sorted them by new. This should be fairly representative of the currently active userbase. As an aside, I believe we did a similar survey a looong time ago, and we had only 33% of the active userbase as trans.


Random thoughts:

A lot of people were very very cute and confused and essentially asked me to decide their gender for them. Eggs? Probably. This isn't Harry Potter and I'm not a hat so I just went with what they were sounding more convinced of.

A lot of people are even cuter and don't understand how to follow instructions, though some of this is my fault. Made this a little harder to organize.

Some people were not cis and did not identify with the words 'transgender' or 'gender diverse'. If I ever do a trans/adjacent survey again, I think I will ask 'Are you cis?'

I may do a survey for queer people overall eventually, and the question will be 'Are you cishet?'

I would love to do more scientific, inclusive polling and have better and more questions and options, but we need some good secure polling tech for that, which we don't have. So I just have to ask simple questions and get a handful of answers.

Next time I will look into how feasible it is to post a couple of comments and get responders to upvote certain ones. This might fix the issue of the display of comments being limited.

Since some people have two sets of pronouns, both of their pronouns are included separately.

Since the poll was public, some marginalized groups probably shied away from answering. If we ever get a secure way to poll people, we would get more realistic estimates of the trans and cis women userbase.


#Tallies

Yes: 121 
No: 137
Maybe: 37 
Total: 295

If you think something is fucked, you can do it yourself, the thread is public. Hope you like pie! shrug-outta-hecks

you are viewing a single comment's thread
view the rest of the comments
[โ€“] ComradeEd@lemmygrad.ml 15 points 7 months ago* (last edited 7 months ago) (2 children)

If you think something is fucked, you can do it yourself, the thread is public. Hope you like pie!

Edit: I updated my code, it is now more strict.

Yes: 160
No: 166
Maybe: 37
Total comments gone through: 434

The last few that aren't categories can be gone through manually. I haven't done that.

new code

import requests, json, re

url = "https://hexbear.net/api/v3/comment/list?post_id=2207213&sort=New&limit=50&page="

headers = {"accept": "application/json"}

yes = 0
nos = 0
maybes = 0
comment_num = 0

for i in range(1, 10):
    response = requests.get(url+str(i), headers=headers)
    comments = json.loads(response.text)["comments"]
    
    for comment in comments:
        if comment["comment"]["removed"] == False and comment["comment"]["deleted"] == False:
            comment_num += 1
            comment_content = comment["comment"]["content"]
            if re.search('^(\n?
spoiler )?no(?!\w)', comment_content, re.IGNORECASE): nos += 1 elif re.search('^(\n?
)?yes(?!\w)', comment_content, re.IGNORECASE): yes += 1 elif re.search('^(\n?
spoiler )?maybe(?!\w)', comment_content, re.IGNORECASE): maybes += 1 else: print(comment_content) print("-----") print(f"{yes}, {nos}, {maybes}, {comment_num}")

:::


old commentYes: 150
No: 223
Maybe: 23
Total comments gone through: 436

spoiler code

import requests, json, re

url = "https://hexbear.net/api/v3/comment/list?post_id=2207213&sort=New&limit=50&page="

headers = {"accept": "application/json"}

yes = 0
nos = 0
maybes = 0
comment_num = 0

for i in range(1, 10):
    response = requests.get(url+str(i), headers=headers)
    comments = json.loads(response.text)["comments"]
    
    for comment in comments:
        if comment["comment"]["removed"] == False and comment["comment"]["deleted"] == False:
            comment_num += 1
            comment_content = comment["comment"]["content"]
            if re.search('no', comment_content, re.IGNORECASE):
                nos += 1
            elif re.search('yes', comment_content, re.IGNORECASE):
                yes += 1
            elif re.search('maybe', comment_content, re.IGNORECASE):
                maybes += 1

print(f"{yes}, {nos}, {maybes}, {comment_num}")

:::

[โ€“] PaX@hexbear.net 10 points 7 months ago (1 children)
[โ€“] ComradeEd@lemmygrad.ml 9 points 7 months ago (1 children)

I've updated my code. Changed the numbers a bit.

[โ€“] kristina@hexbear.net 6 points 7 months ago (1 children)

Yeah a lot of people had multiple nos in their comments and some had no in their username so you gotta scrub it

[โ€“] ComradeEd@lemmygrad.ml 5 points 7 months ago

For the API luckely the content and the creator are different things (as would be expected), so it isn't a problem.

But there are some that are a bit difficult. Is "Yes but no but maybe" a yes, a no or a maybe? My code would say it's a Yes.

[โ€“] kristina@hexbear.net 2 points 5 months ago (2 children)

Think this'll work for the current survey?

[โ€“] ComradeEd@lemmygrad.ml 2 points 5 months ago* (last edited 5 months ago) (2 children)

I modified it a bit for the current survey:

#!/usr/bin/env python3

import requests, json, re

url = "https://hexbear.net/api/v3/comment/list?post_id=2664304&sort=New&limit=50&page="

headers = {"accept": "application/json"}

smile = 0
frown = 0
neutral = 0
malice = 0
comment_num = 0
skipped_num = 0

for i in range(1, 8):
    response = requests.get(url+str(i), headers=headers)
    comments = json.loads(response.text)["comments"]

    for comment in comments:
        if comment["comment"]["removed"] == False and comment["comment"]["deleted"] == False:
            if comment["comment"]["path"].count('.') == 1:
                comment_num += 1
                comment_content = comment["comment"]["content"]
                if re.search('dean-smile', comment_content, re.IGNORECASE):
                    smile += 1
                elif re.search('dean-frown', comment_content, re.IGNORECASE):
                    frown += 1
                elif re.search('dean-neutral', comment_content, re.IGNORECASE):
                    neutral += 1
                elif re.search('dean-malice', comment_content, re.IGNORECASE):
                    malice += 1
                else:
                    print(comment_content)
                    print("-----")
            else:
                skipped_num += 1

print(f"dean-smile: {smile}")
print(f"dean-frown: {frown}")
print(f"dean-neutral: {neutral}")
print(f"dean-malice: {malice}")
print(f"total comments gone through: {comment_num}")
print(f"total comments skipped: {skipped_num}")

This is the output:

![](https://lemmy.zip/pictrs/image/f99edcee-68a9-4f71-885f-38db167c570e.webp)
-----
![](https://www.hexbear.net/pictrs/image/5ba9dd41-6011-4154-a1ef-4f640004e92c.PNG)
-----
Hexbear has more lgbt people than the liberal lgbt instances and it's not even trying. ![fidel-layup](https://www.hexbear.net/pictrs/image/2695392b-441e-40b3-a2e0-23a9aa020a5f.png "emoji fidel-layup")  ![fidel-balling](https://www.hexbear.net/pictrs/image/274afbef-3094-4758-aafd-2f98e534b44e.png "emoji fidel-balling") 

The one neat trick: Visible pronouns that aren't buried in a performative section of the profile page where people can ignore that they exist.
-----
![](https://hexbear.net/pictrs/image/3ce8f99a-5348-4521-9007-124181239567.jpeg) what is  this honeypot
-----
iโ€™m not cishet i am the opposite of that
-----
![waltuh](https://www.hexbear.net/pictrs/image/70853509-445a-49e9-8325-5ff420dcef0a.png "emoji waltuh") 
-----
Yes

I can't do hexbear emojis on my phone 
-----
![](https://hexbear.net/pictrs/image/26820bca-a838-4179-a021-0c4f0bfc0774.png)
-----
No
-----
dean-smile: 97
dean-frown: 174
dean-neutral: 23
dean-malice: 5
total comments gone through: 308
total comments skipped: 31

I'm not sure what happened to the comments neither gone through nor skipped (I'm skipping replies)

[โ€“] kristina@hexbear.net 2 points 5 months ago

Thanks, I'll take a look at running it when we're done collecting. I'm probably gonna have to comb over some answers that didn't complete the survey properly

[โ€“] kristina@hexbear.net 2 points 5 months ago* (last edited 5 months ago) (1 children)

Is there a way to just download the json? I'll probably just edit a text file and load it into your code

[โ€“] ComradeEd@lemmygrad.ml 2 points 5 months ago (1 children)

Just download the JSON from the API? Sure. Something like this:

#!/usr/bin/env python3

import requests

url = "https://hexbear.net/api/v3/comment/list?post_id=2664304&sort=New&limit=50&page="

headers = {"accept": "application/json"}

for i in range(1, 9):
    response = requests.get(url+str(i), headers=headers)
    with open(f"{i}.json", 'w') as json_file:
        json_file.write(response.text)

I also realised what was wrong! range() is inclusive-exclusive, that means for 1 to 8: it should be (1,9).

[โ€“] kristina@hexbear.net 2 points 5 months ago* (last edited 5 months ago)

Thanks for the help cat-trans

[โ€“] ComradeEd@lemmygrad.ml 2 points 5 months ago

Yes, or with very little changes.