Kindle Notes & Highlights
Read between
March 16 - April 3, 2022
the quarry worker’s creed: We who cut mere stones must always be envisioning cathedrals
A new feature in your product refers to added functionality. It’s making your product do something that it didn’t do before. For example, making your product talk to a different vendor’s database is a feature.
making your product work properly with a supported database is fixing a bug. The two are different and need to be treated differently.
Issue and feature lists are often kept in the same tracking system.
You need a way to decide when to stop polishing and actually ship the product.
Attaching a priority to everything you work on makes it easier for management to draw a line on the prioritized list and decide what ships and what doesn’t.
you should never work on anything that isn’t on a list with an assigned priority
When you get swamped, overwhelmed, or scattered, you come back to The List and use it to regain your focus.
Someone needs to write down all the features, sort them by priority, and let team members grab their next job from the top of The List.
generally, no second-priority item can be touched until the first-priority items are complete.
Make a list each morning of what is on your plate and then prioritize it. At the end of the day, review what you did (or didn’t) finish.
Until the current top priority items are completed, no one can work on the lower-priority items.
It’s very important to recognize the different types of features involved in a product: necessary features, desired features, and fluff features. You must make these distinctions when prioritizing The List, or you will be wasting your time.
Never, ever, bypass the priorities you’ve set.
your releases become feature boxed, not time boxed.
It’s always better to get feedback earlier, even if it might be frustrating to see The List frequently change.
By creating a goal with a binary state, you make it possible to tell when it’s done.
You need a person to be the interface between the development team and management. You need a tech lead.
Without an established order, everyone might just select the interesting features and neglect the necessary ones.
Priority One: Required These are the features that you absolutely cannot ship without.
Priority Two: Very Important You could ship the product without completing these items, but you probably won’t.
Priority Three: Nice to Have Given time, you will complete them, but these items ...
This highlight has been truncated due to consecutive passage length restrictions.
Priority Four: Polish These items add a finished feel...
This highlight has been truncated due to consecutive passage length restrictions.
Priority Five: Fluff If you have time to add “fluff” features, then you are ahead of ...
This highlight has been truncated due to consecutive passage length restrictions.
The List doesn’t replace your preferred method of gathering requirements. Instead, it takes information from every source and presents it in a clean, understandable format.
identify the layers into which your application can be divided. Good examples of these objects are client, server, and database.
Sometimes the intangible nature of our work makes the system components difficult to visualize and understand.
solve the hard problems early. Leave the easy stuff until later.
you’ll have no room to reschedule if you leave your most difficult problems until the end.
a project with four system objects: a client layer, a web server layer, a data cruncher layer, and a database access layer
Customer feedback keeps you from building the wrong product, one that no one wants.
You can be the most productive worker in the world, but if your manager doesn’t know it, it won’t matter.
In the end, if this team doesn’t want to move forward, replace them with people who do.
sleep easy because the feature has its proper place on The List.
The first thing we did was to develop a picture of the product by creating The List of features it contained.
Break down any item with a time estimate of more than one week into subtasks. It’s okay to have a top-level task that takes weeks or months, but that estimate is just a guess unless you back it up with estimates for its subtasks.
Make The List the core tool of your project management.