Home

Software & Goal Settings First Principles

Resources

  1. Sales terms glossary

Nodular First Principles

  • 9-5 Exit Strategy
  • Startups From The Coffee Table

Coding First Principles

  1. SOLID - Single Responsibility Principle, Open-Close Principle, Liskov's Substitution Princple, Interface Segregation Principle, Dependency Inversion Principle
  2. KISS - Keep It Simple Stupid
  3. DRY - Don't Repeat Yourself
  4. YAGNI - You Ain't Gonna Need It
  5. Composition > Inheritance
  6. Separation of Concerns
  7. Avoid Premature Optimisation
  8. Refactor Refactor Refactor
  9. Clean Code > Clever Code
  10. Occam's Razor - Does the benefit outweigh the cost?
  11. Least Astonishment Principle - Naming should come as no surprise to what it does
  12. Law of Demeter - Divide responsibility between classes

LEAN Startup Principles

  1. Macros/Micros - Which part of the user journey is a macro journey and which are micro changes?
  2. Begin With The End In Mind
  3. Validated Metrics > Empty Metrics
  4. Know When To Pivot
  5. 5 Why's - Ask to better understand the root cause
  6. What Are The User Stories? - Find the "why" behind a user journey.
  7. Vision - Start, Define, Learn, Experiment
  8. Steer - Leap, Test, Measure, Pivot
  9. Accelerate - Batch, Grow, Adapt, Innovate

System Design

  1. CASM HDR - Clarification, API Design, Scale Estimation, Model Data, High-Level Design, Detailed-Level Design, Resolve Bottlenecks
  2. Clarification FON - Functional, Non-Functional, Out-Of-Scope
  3. Scale Estimation USB - User Activity, Storage, Bandwidth

Measure What Matters (OKRs)

  1. Objectives are the WHAT, the Key Results are the HOW and help surface primary goals
  2. Revolve Objectives Around User Journeys
  3. The most integral part of engagement with goal settings as foun by Deloitte: "Cleary written goals that are written down and shared freely"
  4. "There are so many people working so hard and achieving so little" - Andy Grove
  5. Vectors in different directions sum to zero; same direction will maximise results
  6. Bad companies are destroyed by crisis, good companies survive it and great companies improve from it
  7. "When you are tired of saying it, people are starting to hear it." - Jeff Weiner
  8. OKRs are dispensible
  9. "Innovation means saying no to 1000 things"
  10. Every commitment to one things means not committing to another
  11. OKRs required contiuous feedback early and often
  12. "Big Hairy Audacious Goals" - clear, compelling and people get it straight away
  13. Big rock theory: order things into the jar first with the big rocks, then the pebbles, then the sand

Story Driven Goals

  1. Sell many things, not just one
  2. "Begin with the end in mind" - think not how but what can be contributed
  3. Story outline:
    • Purpose & Vision: Where you are going and why
    • Strategy: How to get there
    • Tactics: What along the way
  4. Story Driven Framework:
    • Backstory: The story until now
    • Values: Guiding beliefs
    • Purpose: Reason to exist
    • Vision: Aspiration for future
    • Strategy: Alignment of opportunities, plans & behaviours
  5. Think, say, do in harmony
  6. No shortcuts to results, only efficiencies
  7. "Once you figure out the question, the answer is relatively easy."

Deep Work

  • Deep work: The art of performing deep, intense, uninterrupted work that push your cognitive skills to the limit.
  • Shallow work: noncognitively demanding, logistical-style tasks that are often performed while distracted.
  • Batch together absolutely unavoidable shallow tasks and finish them all at the same time.
  • If you don't produce, you won't thrive: no matter how good you are.
  • Clarity about what matters means clarity about what does not.
  • "It's this propensity to view 'the Internet' as a source of wisdom and policy advice that transforms it from a fairly uninteresting set of cables and network routers into a seductive and exciting technology - perhaps today's uber-ideology." - Mozorov
  • In a post-enlightenment world, we are tasked to define what is meaningful and what is not, an exercise that can seem abritrary and induce a creeping nihilism.
  • Beautiful code is short and concise, almost like writing a poem.
  • The five hardest common desires to fight against include the Internet and television.
  • Email is a wonderful thing for someone who needs to be on top of things - if not, be on the bottom of things.
  • The key to developing a deep work habit is to move beyond good intentions and add routines and rituals to your working life designed to minimize the amount of your limited willpower necessary to transition into and maintain a state of unbroken concentration.
  • Minimise connectability.
  • Idleness is not just a vacation, it is as indispensible to the brain at vitamin D is for the body.
  • When tasked with a difficult problem, acknowledge and avoid looping.

This Is Marketing

  • Marketing is the generous act of helping someone solve a problem. Their problem.
  • It is easier to find products and services for the customers you seek to serve than it is to find customers for your products and services.
  • Stop looking for shortcuts, start insisting on a long, viable path instead.
  • People don't want what you make. They want what it will do for them. They want the way it will make them feel. And there aren't that many feelings to choose from.
  • People don't believe what you believe. People don't know what you know. They don't want what you want. Realise this and sonder.
  • Do not convince others of your work. Dance with them instead.
  • Marketing finds a spot on a map with that edges to what people want to find.
  • Dog food marketing - have you ever seen a dog buy dog food?
  • Sooner or later, each of us becomes the kind of person who believes the reptile people control the earth. We're all seeking our own pocket of uniqueness.
  • If you want to find the true benefits of your story, articulate it on a XY graph with competition.
  • What is "better" is entirely up to individuals.
  • Beware feedback from the polar opposites of a bimodal distribution of your audiences.
  • Pattern match: to get colleagues to tell you, "You're missing out". Pattern disrupt: to enforce a new tool in a workplace entirely.

Pixar 22 Rules of Storytelling

Note - 22 is overkill, these rules are here to reference for when constructing UX and goal narratives.

  1. You admire a character for trying more than for their successes.
  2. You gotta keep in mind what's interesting to you as an audience, not what's fun to do as a writer. They can be v. different.
  3. Trying for theme is important, but you won't see what the story is actually about til you're at the end of it. Now rewrite.
  4. Once upon a time there was ... Every day ... One day ... Because of that ... Because of that, ... Until finally ...
  5. Simplify. Focus. Combine characters. Hop over detours. You'll feel like you're losing valuable stuff but it sets you free.
  6. What is your character good at, comfortable with? Throw the polar opposite at them. Challenge them. How do they deal?
  7. Come up with your ending before you figure out your middle. Seriously. Endings are hard, get yours working up front.
  8. Finish your story, let go even if it's not perfect. In an ideal world you have both, but move on. Do better next time.
  9. When you're stuck, make a list of what WOULDN'T happen next. Lots of times the material to get you unstuck will show up.
  10. Pull apart the stories you like. What you like in them is a part of you; you've got to recognize it before you can use it.
  11. Putting it on paper lets you start fixing it. If it stays in your head, a perfect idea, you'll never share it with anyone.
  12. Discount the 1st thing that comes to mind. And the 2nd, 3rd, 4th, 5th – get the obvious out of the way. Surprise yourself.
  13. Give your characters opinions. Passive/malleable might seem likable to you as you write, but it's poison to the audience.
  14. Why must you tell THIS story? What's the belief burning within you that your story feeds off of? That's the heart of it.
  15. If you were your character, in this situation, how would you feel? Honesty lends credibility to unbelievable situations.
  16. What are the stakes? Give us reason to root for the character. What happens if they don't succeed? Stack the odds against.
  17. No work is ever wasted. If it's not working, let go and move on - it'll come back around to be useful later.
  18. You have to know yourself. the difference between doing your best & fussing. Story is testing, not refining.
  19. Coincidences to get characters into trouble are great; coincidences to get them out of it are cheating.
  20. Exercise. take the building blocks of a movie you dislike. How d'you rearrange them into what you DO like?
  21. You gotta identify with your situation/characters, can't just write 'cool'. What would make YOU act that way?
  22. What's the essence of your story? Most economical telling of it? If you know that, you can build out from there.

Communication

  1. Acknowledge, align, assure
  2. Early and often
  3. Seek to understand

Sales

  1. AIDA: Attention, Interest, Desire, Action
  2. BANT: Budget, Authority, Need, Timeline
  3. Value proposition: A benefit of a product or company intended to make it more attractive to potential buyers and differentiates it from competitors

Shape Up

These are moreso the steps and not the principles, but the concepts behind them are useful for unfurling long term thinking.

  1. Shaping
  2. Betting
  3. Building (know your circuit breakers)

Repository

https://github.com/okeeffed/developer-notes-nextjs/content/principles/software-first-principles

Sections


Related