• Zarobi@aussie.zone
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    1
    ·
    5 hours ago

    Just speaking from personal experience. Here’s a story.

    One time I did a massive refactor, basically touching every function in the software. For background, this was a massive enterprise application. The backend was about 10 million lines of code, the front end was… probably triple that, I didn’t bother counting. Yes, building the code took more than an hour, even on extremely beefy machines.

    The reason for this refactor was there was a huge amount of tech debt that finally caught up to us. You know, putting it off for years, using deprecated functions and old methods, feature flags, even forking software and modifying it to be compatible. Just years of finding creative solutions, until finally things said “enough” and there was no more bandaids. I was given the green light to fix up everything at once. Programmer’s wet dream, at least for me; I was so happy.

    Anyway, in this project, we did rebase not merge. So, after 3 months of working diligently in a branch; I had to rebase the whole fucking thing because my coworkers obviously weren’t idle that whole time. This part I didn’t enjoy so much.

    It took 2 weeks to rebase all the merge conflicts. It took so long, I had to rebase again. Multiple times. Each rebase getting closer and closer to being able to finally merge into master.

    Finally I did it. I told everyone else to just relax and take the day off, while I merge into master and fix all the problems. There was many problems of course. But the final commit was tens of millions of lines of code changed, all by myself. This was before LLMs. But I have the type of brain that can sit there for 9 hours straight every day and tidy up code and enjoy it.