• 1 Post
  • 76 Comments
Joined 1 year ago
cake
Cake day: July 6th, 2023

help-circle
  • Mine is that, except they DON’T complain. Like when someone is showing me a YouTube video on their device and an ad shows up 30 seconds in… I lunge for the mute button while I scan the room for a blanket, clipboard, or other item to shield us, yelling “AVERT YOUR EYES!!” but next to all of my commotion, they’re just nodding along placidly like “Oh Coinbase, interesting.”

    Like… Aren’t you affronted that some company paid another company to make it less convenient to do the thing you’re trying to do?! Does the gaudy, pushy tone change to too-loud propaganda designed to coax you away from your money not gall you?!

    “Idk sometimes the ads are interesting. Free month sounds good.”

    Jesus christ he’s too far gone.





  • Yeah but you get a nice ramp-up period where you’re allowed to be bewildered and unproductive. In that time, you can probably pick out two or three grandiose changes (ideally with hot new technologies) to throw on the pile before that period ends, and use them as resume padding and interview stories for the next job.

    Unlike the old developers, you aren’t complicit in the mess until a few years go by.


  • There’s a second-order thing going on though with tech debt that makes it different than just maintenance: Tech debt is when you address a problem in a way that makes future problems more difficult to address. So if the wire-and-tape fix is actually robust, easy to work around, and/or easy to reverse, then it wouldn’t be tech debt. But if it made it harder to unclog/clean the tap, or to fix the next leak, or install/remove things around it, then it would be like tech debt.














  • Ah, you’ve never worked somewhere where people regularly rebase and force-push to master. Lucky :)

    I have no issue with rebasing on a local branch that no other repository knows about yet. I think that’s great. As soon as the code leaves local though, things proceed at least to “exercise caution.” If the branch is actively shared (like master, or a release branch if that’s a thing, or a branch where people are collaborating), IMO rebasing is more of a footgun than it’s worth.

    You can mitigate that with good processes and well-informed engineers, but that’s kinda true of all sorts of dubious ideas.


  • You can get in some pretty serious messes, though. Any workflow that involves force-pushing or rebasing has the potential for data loss… Either in a literally destructive way, or in a “Seriously my keys must be somewhere but I have no idea where” kind of way.

    When most people talk about rebase (for example) being reversible, what they’re usually saying is “you can always reverse the operation in the reflog.” Well yes, but the reflog is local, so if Alice messes something up with her rebase-force-push and realizes she destroyed some of Bob’s changes, Alice can’t recover Bob’s changes from her machine-- She needs to collaborate with Bob to recover them.