this post was submitted on 25 Nov 2023
923 points (97.2% liked)

Programmer Humor

32464 readers
221 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] meliaesc@lemmy.world 1 points 11 months ago (1 children)

Merging conflicts will be an issue no matter what you're working on. Maintaining different sets of code bases based on the version/release will be an issue even when working alone.

[–] Immersive_Matthew@sh.itjust.works 1 points 11 months ago (1 children)

Can you describe a situation that underscores this issue as I am not seeing it, but maybe I experience it and do not even realize.

[–] meliaesc@lemmy.world 1 points 11 months ago* (last edited 11 months ago) (1 children)

Situation: You're building some software to display emojis based on user input.

Current code: when user types "happy", output 🙂

  • Your new requirement: when user types "happy", output 😃 instead of 🙂
  • Coworker's new requirement: when user types "sad", output 😭

You implement your change, back it up, and the new version with 😀 is released. But it turns out 😃 is the ultimate insult in the Snowflake region, and you need to immediately rollback 😃 back to 🙂 while you find an alternative.

Meanwhile, Coworker has added 😭 to your backup, which still has 😃. Now when you try to rollback to 🙂, Coworker's code gets erased. Now your code is unable to safely support both 😭 with 🙂 without starting over entirely. Maybe you want to disable 😀 only for the Snowflake region, but that's not possible either without harding coding the regions instead of just changing the deployment.

Now imagine working with a team of 10 people, or a company with 100 people working on this same software. With features and release dates constantly changing.

[–] Immersive_Matthew@sh.itjust.works 1 points 11 months ago

I would agree with more people these tools become more needed, but I am talking about a solo dev situation who is the only person who accesses the code base. All other contributors I carefully import.