Hey all, WhyEssEff here hey-all-scott-here

Over the past two-and-a-half or so years of being the sort-of-official emoji czar, the emote repository has grown to contain approximately 2300 distinct pictographs. As has been remarked over my tenure, this has unfortunately come with a lot of disarray. In order to address this, let me break it down in order to give proper context for it all.


The Problem kobeni-sweat

Hexbear’s emote shortcodes are notoriously obtuse and lack enforced standardization. A patchwork fix was applied to solve this in the refork, being keywords, but these only work when you are searching through the emote picker, not when you are using :shortcode-notation:.

The primary reasoning behind why this problem is a conundrum to fix is what I will call ‘shortcode rot.’ Essentially, what this entails is that:

  1. an unintuitive emote shortcode, for one reason or another, makes it into the emote repository.
  2. enough time passes for said emote to be used across multiple posts and comments.
  3. the shortcode now cannot be altered without breaking these posts’ and comments’ use of said emote.

The sources of unintuitive/unstandardized shortcodes, as far as I understand it, tend to fall into these categories:

  • attempts at brevity (e.g. biderman :biderman:)
  • emote is older than my tenure (e.g. loser :loser:, though this was one that I vividly remember making and recommending it be added back when we were stuck in the lifeboat discord, so this one’s still technically my fault shrug-outta-hecks)
  • emotions and natural language representation of pictures are ambiguous (e.g. linguistics)
  • syntactical ambiguity and non-standardization (e.g. one way this is used advantageously is that this is how we have three representations of 1984 in our emote base, 1984 :19::84:, 1984 :1984:, nineteeneightyfour :nineteeneightyfour:)
  • WhyEssEff trying to be clever (e.g. debate-me-debate-me :debate-me-debate-me: and kubrick-stare :kubrick-stare:)
  • the other ones that I can’t think of.

The Proposals theory-gary

To preface, these are merely the options I am considering at the moment. Furthermore, the subsequent poll is merely me gauging feedback on these potential options. I reserve the right not to enact or fully enact whatever the majority opinion falls behind, because I a) have a life and may not be able to address the issue meticulously, b) can’t please everyone with whatever shortcode schema we do end up with, and c) kind of am attached to certain wrinkles in the repository and would ultimately be operating on my own discretion no matter what as the head and sole maintainer of the repository.

With that out of the way:

PROPOSAL 1: Discretionary Rename Effort

Plan of Action: As I sort through the emote database, I change the ones that stick out as unstandardized and/or ambiguous by my own discretion, updating them as I go and making a pinned masterpost that I update when I change a shortcode so people can stay informed about new shortcodes.

Pros:

  1. The one that is the most realistic for me.
  2. Solves the problem for the most erroneous ones.

Cons:

  1. My discretion is biased and fallible.
  2. Changes to shortcodes that may break some older content.

PROPOSAL 2: Strict Standardization and Total Overhaul

Plan of Action: All emotes are strictly standardized according to an enforced style guide, on top of the previous proposal.

Pros:

  1. Most accessible.

Cons:

  1. 99% chance I'm not going to do this because it sucks to implement.
  2. Really really breaking changes to shortcodes.
  3. Ehhhhhhhhhhhh

PROPOSAL 3: Do Nothing

Plan of Action: It is what it is shrug-outta-hecks

Pros:

  1. No broken shortcodes, archive preserved.
  2. I can just keep to a standard in the future.
  3. I don't have to do anything.

Cons:

  1. The problem remains unsolved, so all the aforementioned issues.

The Poll i-voted

So, in order to collect feedback, here's what I ask:

Respond with the emote that corresponds to the proposal in a top level comment, except for the last option, which I'll explain below.

  • dean-smile (:dean-smile:) for Proposal 1: Discretionary Rename Effort.
  • dean-malice (:dean-malice:) for Proposal 2: Strict Standardization and Total Overhaul.
  • dean-frown (:dean-frown:) for Proposal 3: Do Nothing.
  • dean-neutral (:dean-neutral:) for something else, and explain what you suggest in your comment.

If you want to vote for a proposal that is suggested by someone else using dean-neutral, reply to their comment with a dean-neutral

Again, non-binding poll, I'm just trying to gauge the temperature on this. In about a week, I'll check this post again and tally it all up, and then I'll take that and decide how to move forward. Thanks all lea-finger-guns

  • makotech222 [he/him]
    ·
    edit-2
    11 months ago

    IIRC the shortcodes are the key column of the emote. If you change them, then all previous uses in posts/comments will not load the emote. If you want to rename any, let me know and we can write a regex to go through and replace any instances in the database.

    edit: also, its maybe possible we can enhance the inline emoji window to use keywords as well. would have to do some experimentation with it.

    • WhyEssEff [she/her]
      hexagon
      M
      ·
      11 months ago

      will keep this in mind, interesting option since keys are locked on frontend

      • makotech222 [he/him]
        ·
        11 months ago

        I forgot, also we won't be able to update federated posts in other instances, so those will get forever broken.

        • chickentendrils [any, comrade/them]
          ·
          11 months ago

          I haven't explored other instances at all, but if updates sync is there an easy way to trigger the "there was an update to this post" push or whatever Lemmy uses to synchronize them?

    • unperson [he/him]
      ·
      edit-2
      11 months ago

      Since the federation update, when I pick an emoji with the picker I get markdown to a URL that doesn't contain the shortcode.

      For example dean-neutral inserts:

      ![dean-neutral](https://www.hexbear.net/pictrs/image/48c31f9a-8487-48f0-afce-9db1db5fb5d6.png "emoji dean-neutral") 
      

      Notice that the url to the png: https://www.hexbear.net/pictrs/image/48c31f9a-8487-48f0-afce-9db1db5fb5d6.png doesn't contain the shortcode.

      So right now the database has posts mixed between what I'll call the "old format" :shortcode: and the "new format" with the URL. The new format shows up in other instances and the old format doesn't.

      Shouldn't it be possible to run a migration in the database, and switch the old format with the new for all posts? Then disable this on-the-fly shortcode substitution that the frontend is doing.

      From then on we will have to use the picker, but the emoji can change name without braking old posts. And eventually the frontend conversion can be added to the backend to restore the old behaviour.

      This would simultaneously solve the issue where emojis don't show up in other instances some times.

      • makotech222 [he/him]
        ·
        11 months ago

        Yeah we added extra code in our hexbear frontend to add handling for the 'old format' codes. We did sorta have plans to update all the old usages to the new one, but we just never got around to it during the big migration.

    • blashork [she/her]
      ·
      11 months ago

      I'm glad someone has already said this because this is what I was going to suggest as well. It wouldn't be that hard to crawl with a simple python script.

  • BoarAvoir [they/them]A
    ·
    edit-2
    11 months ago

    dean-neutral

    (Note: this is not in any way an official statement by the admin team, I'm just a tech dweeb)

    Proposal: Do Nothing, but improve searchability by making the shortcode autocomplete also search by tags, not just the canonical name.

    We have the ability to add basically unlimited alt-names or descriptors to the tags for each emote, which has made searching in the emoji picker much more viable even for obscure emotes (provided they are well-tagged). Problem is, nobody uses the emoji picker, most people don't even know it exists.

    Make sure the library is reasonably well tagged and make that tweak to the searching and this whole conundrum goes away.

    Examples below of some existing tags from a previous effort to tag all the emotes:

    Show

    We might also want to make the alt-text more descriptive for people with screen readers but that's a separate conversation

    Edit: Oh it looks like a dev (comrade makotech222) has already chimed in on this below:

    also, its maybe possible we can enhance the inline emoji window to use keywords as well. would have to do some experimentation with it.

    This would also basically address the following other suggestions:

    https://hexbear.net/comment/4396592

    https://hexbear.net/comment/4397267

    https://hexbear.net/comment/4396837

    https://hexbear.net/comment/4396793

    https://hexbear.net/comment/4396237

    https://hexbear.net/comment/4395861

    https://hexbear.net/comment/4397894

    https://hexbear.net/comment/4395895

    https://hexbear.net/comment/4397730

    https://hexbear.net/comment/4397711

     
    

    secondary option if this isn't feasible: remove the unicode emojis from the emoji picker so it goes straight to our custom emotes when opened, and make it more prominent in the UI somehow (highlight it in a different color, make it bigger, make it sparkle, idc). And still finish the job tagging them all

    • Gay_Wrath [fae/faer]
      ·
      11 months ago

      finding a new one is like finding a new easter egg in a video game

  • Zezzy [she/her]
    ·
    11 months ago

    dean-neutral Add duplicates of badly named ones with new standardized names. And filter out the old ones from the emote picker so they don't get used much again.

    • edge [he/him]
      ·
      edit-2
      11 months ago

      For reference there are 3,782 emojis specified by Unicode (counting every kind of combination like skin tone or gender modifiers).

      We're catching up.

  • macerated_baby_presidents [he/him]
    ·
    11 months ago

    :dean-frown: I want us to have insane technical debt of 50000 emoji that are all pixelated elsagate pregnant Macron in a Spiderman costume named like :box:

  • mustGo [any]
    ·
    11 months ago

    dean-malice Go ahead break our posts, you're only going to destroy cringe.

  • booty [he/him]
    ·
    11 months ago

    dean-frown I think the obtuse names picked on a whim from when the emotes were added is a funny aspect of the site's use

  • kristina [she/her]
    ·
    11 months ago

    Rosetta Stone but for hexbear emotes, with Hebrew Latin and Greek side by side

  • KurtVonnegut [comrade/them]
    ·
    edit-2
    11 months ago

    :dean-frown:

    I propose we keep the emotes the way they are. But to fix the problem of recognition, we should make an ANKI deck with all the emotes and names so new users can learn the language of emojis like it's literally a foreign language. Or someone(more talented than me) could make matching emojis to their names into a browser video game.

  • Egon
    ·
    edit-2
    3 months ago

    deleted by creator

    • WhyEssEff [she/her]
      hexagon
      M
      ·
      11 months ago

      We might not actually have that emote, it would be under Hexbear Heritage Haven if we did

      • Egon
        ·
        edit-2
        3 months ago

        deleted by creator

  • FunkyStuff [he/him]
    ·
    11 months ago

    dean-smile

    Is there not a way to alias them such that the old shortcodes still display the same emote, but there's a new, canonical name? I guess it might not always work if multiple shortcodes map to multiple different emotes and it might complicate things a lot but idk, what if?

  • makotech222 [he/him]
    ·
    11 months ago

    @WhyEssEff@hexbear.net I've pushed some changes to our test build that enhance the inline emoji autocomplete. It will now search by both shortcode and keyword. Looks like this:

    Show

    I've also improved image caching so the big emoji picker will also be faster at loading.

  • Assian_Candor [comrade/them]
    ·
    edit-2
    11 months ago

    dean-frown why make work for yourself?

    dean-neutral don’t rename them all, but only rename the dancing roach erdogan