featured in #429
featured in #429
How NASA Writes Space-Proof Code
- Jason Kottke tl;dr: The rules focus on testability, readability, and predictability: (1) Avoid complex flow constructs, such as goto and recursion. (2) All loops must have fixed bounds. This prevents runaway code. (3) Avoid heap memory allocation. (4) Restrict functions to a single printed page. (5) Use a minimum of two runtime assertions per function.featured in #428
How To Make Hard Decisions: Even / Over Statements
- Lara Hogan tl;dr: The "even / over" statements tool involves filling in the blanks: "In order to [thing], I'm choosing [x important thing] even over [y important thing]." This helps when there are two equally important options, and making a decision feels challenging. By articulating the trade-off and choosing one over the other, individuals can gain clarity. This is tool is for the present or a specified period.featured in #428
featured in #427
featured in #427
Accountability For Effective Teams
- Jessica Kerr tl;dr: Accountability within teams should prioritize behavior over just measurable outcomes. Focusing on behavior is more fundamental and leads to better results in the long run. It requires having courageous conversations, confronting deficiencies, and suggesting paths aligned with collective goals. Blaming individuals after failures is not as effective as addressing behavior proactively.featured in #426
Helicopter Management And Other Mistakes
- Charity Majors tl;dr: “The message is simply that it took me years and years to learn that there is more to being a great manager than caring about my team.” Charity discusses 3 rookie mistakes in new managers: (1) Only managing down. (2) Helicopter management - overly identifying with your team instead of considering them in context of the organization, or letting them take risks. (3) Your view of the business is incomplete.featured in #426
What Drives Adoption Of Internal Developer Tools?
- Abi Noda tl;dr: The highest priority adoption factor for 4 types of internal tools: (1) For build tools, it is whether the tool is highly configurable. (2) For continuous integration tools, it’s whether the tool is compatible with the technologies developers use. (3) For infrastructure as code tools, it’s how visible the usage of the tool is within the organization. (4) For version control tools, it’s whether the tool fits well with the way developers work.featured in #425
How To Make Difficult Technical Decisions You And Your Team Won't Regret
- Jordan Cutler tl;dr: (1) Write out all possible options. (2) Cross out what won’t work. (3) Write pros and cons, come up with a preference, and discuss with your team. If you’re still unsure, do any of the following: (a) Act as your end-user and critique each solution from that perspective. (b) Have 1:1 discussions with someone junior and more senior. (c) Consider how reversible the decision is, what the cost of each one being wrong is, and what room each one has for being extended in the future.featured in #425