Urgent.News

What's breaking now, across thousands of outlets.

Tech

Management rejected three tech debt proposals. The fourth one passed because I spoke their language.

The first proposal was two paragraphs about code quality, mentioning a module that had become hard to change safely and a request for two weeks to refactor it. It got a polite no, the kind that comes with "let's revisit next quarter" attached. The second was longer, with more technical detail about coupling and test coverage, and got the same answer. The third had a diagram. Still no. Each…

Three attempts to address tech debt were rejected, but a fourth proposal succeeded after it was rephrased. The initial proposals focused on code quality, coupling, and test coverage without considering the impact on engineering time. Management preferred concrete, comparative data over abstract technical explanations. The fourth proposal reframed the issue by highlighting specific production incidents and delivery delays caused by the module.

By presenting the costs of continued neglect in terms the decision-makers could easily understand, the argument resonated better and was approved in the same meeting.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

🪝You Should Probably Use Git Hooks

🚨 AI WAS NOT USED IN WRITING THIS POST 🚨 I've gone back and forth on this topic quite some time. As a solo dev, I liked it because I could run tests on commit.

  • Git hooks initially used for solo testing, later adopted for team formatting and linting.
  • Developers should be responsible for their own git process, even with AI assistance.
  • Author's setup includes Husky, Lint-staged, ESLint, Prettier, and Vitest for code quality checks.

Pointers Aren't Arrows. How C and C++ Actually Talk to Hardware.

Ask any software engineer to draw a pointer on a whiteboard. Within three seconds, they will sketch two boxes and a little curved arrow pointing between them. It looks neat. It feels intuitive.

  • Pointers are integers storing memory addresses, not arrows.
  • Memory is a continuous street of numbered byte lockers.
  • Pointer arithmetic moves by data type size, not single bytes.

More from Friday 25 September →