Notes on software and
the work around it.

I build software and teams, and write about what I learn along the way.

Writing

30 notes

  1. AI

    Thoughts on AI: Shallow vs Deep State

    AI works well when a task depends on visible local context. It struggles when correct behavior depends on years of hidden decisions across a codebase.

  2. AI

    Thoughts on AI: On Slop

    AI made software production much cheaper. It did not make people better at deciding what is worth building, which is where most slop begins.

  3. Work

    Cultivation

    Skills, hobbies, and relationships change based on the attention they receive. The useful question is whether your attention matches your values.

  4. AI

    Thoughts on AI: Vibe Coding, Revisited

    Better AI tools changed the cost of code generation, but not the need for ownership. Our rule is simple: whoever merges AI-generated code owns it.

  5. AI

    Thoughts on AI: Vibe Coding

    AI can write code faster than I can, but heavy use has a hidden cost. It can prevent developers from building the understanding they need when the code breaks.

  6. Work

    The Math of Collective Success

    Small individual efforts can produce a much larger shared result when each person does their part. Half effort gives up most of that return without saving much work.

  7. Work

    PMS Framework

    Skill grows from preparation guided by a clear standard. Decide how good you want to become, then prepare in ways that close the gap.

  8. Business

    Two Climbers

    One person starts before understanding the risk. Another plans until the risk prevents them from starting. Progress requires enough preparation and a willingness to learn on the way.

  9. Leadership

    Meaningful Output

    Organizations should compare meaningful output with the resources used to produce it. Processes become harmful when they increase support work at the expense of the main work.

  10. Leadership

    Modes of Communication

    Communication tools have different strengths. Choose one based on whether the conversation must be permanent, quick, detailed, or easy to share.

  11. Leadership

    One on One Notes

    One-on-one meetings work best when managers use them to build trust, follow through on concerns, and give reports a safe place to speak directly.

  12. Software

    Sorting Cardboard Boxes

    Asking for a software estimate before understanding the work is like asking someone to sort a sealed box. A precise answer does not make the unknowns disappear.

  13. Leadership

    Meeting Signal Ratio

    Meeting Signal Ratio is the share of a meeting that is useful to each attendee. Improving it requires fewer attendees, clear meeting types, and better preparation.

  14. Software

    Keeping Things Simple

    In software projects, many factors can overshadow the goal of keeping things simple. Technical and non-technical folks often sacrifice simplicity for ha...

  15. Business

    Ideas are 1%

    A business idea has little value without the ability to execute it. A short set of questions can expose whether an idea is ready to become a product.

  16. Leadership

    Reconciling Timelines in Business

    Businesses need plans, but software progress is difficult to predict. Teams should use timelines as planning tools and measure whether work produces useful outcomes.

  17. Leadership

    Agile vs Waterfall - The Road Trip Analogy

    Over the years I've seen a lot of confusion around Waterfall and Agile approaches. I wanted to provide a high-level analogy to help people understand th...

  18. Software

    Reframing 'Best Practices'

    'Best practice' is widely used and accepted as describing the optimal solution. However I believe this term can often mislead us more than guide us. It'...

  19. Leadership

    Why Suboptimal Solutions are Implemented

    A solution can be poor for the system and rational for the person choosing it. Fear, incentives, learning, and novelty often explain decisions that look incompetent.

  20. Leadership

    Software vs Product Engineers

    I use software engineer and product engineer to describe two ways of working. The main difference is how much product ambiguity someone is expected to resolve.

  21. Software

    Favorite Color Problems

    def sum_list_for(nums): total = 0 for num in nums: total += num return total # vs def sum_list_while(nums): total, i = 0, 0 while i < len(nums): tota...

  22. Software

    Software and Communication

    Many software developers believe that programming is primarily focused on problem solving. I believe that software is more about communication. When we...

  23. Leadership

    The Cost of Processes

    A process can be useful by itself and still make a team less effective when combined with every other process. The hidden costs are time, attention, and context switching.

  24. Work

    Daily Notes

    I keep one running note for each day. It helps me plan work, remember decisions, and write useful summaries without maintaining a separate task system.

  25. Leadership

    Effective Meeting Tips

    Consider whether you really need the meeting or whether a message or e-mail would be more appropriate. Determine what type of meeting it is. Presentatio...

  26. Work

    Information Consumption Efficiency

    Recently I've been thinking a lot about how to consume information more efficiently. Historically my primary method of consuming information around my i...

  27. Leadership

    Effective Directorship Tips

    Work streams should always be ranked, so there is no ambiguity about priorities. If everything is important, nothing is important. Attempt to limit conc...

  28. Leadership

    Effective Management Tips

    Manage your own anxiety before you start managing other people. Don't worry about how people are getting things done, just that they are. People will of...

  29. Software

    Software Development Principles

    Our team reduced a broad discussion about maintainable software to two principles: minimize complexity and optimize for readability.

  30. Work

    Energy Management

    I usually have enough time to work toward my goals. What I run out of is energy. I use three categories to decide how to spend and restore it.