Decision logs

vitonsky@programming.dev to Programming@programming.dev – 18 points –
Decision logs
vitonsky.net
36

In a former workplace, we had a process that was close enough to what's recommended in the blog, and it worked well. Really well even, there were hardly any ego clashes, everyone would negotiate a consensus and we had "spike" tasks in our sprints so that we can take the time to think about and research complex problems.

And then the fire nation attacked...

A director left the firm and they hired someone from Amazon. He said that we should have a "bias for action", and got rid of this process, and a lot of other stuff we had going for ourselves using other such catch phrases.

Getting him as a director was probably the worst thing to happen as we were under pressure to deliver stuff quickly all the time, and we'd then have to rework most of the shit because of missed requirements, or tools used not being insufficient for the task at hand etc. He was okay with it though, because "we delivered (shit) quickly", and "our efficiency went up as indicated by the team velocity charts".

Pretty much the entire team had left the company in ~1.5 years, and customer satisfaction metrics were in the gutter when I left.

I don't know if he misunderstood "bias for action" and implemented it badly or if that's genuinely how people at Amazon operate, but I won't even think of joining AWS. Fuck that noise.

Exactly! I see how a mindset “we delivered (shit) quickly” successfully reproduces itself, over and over in a lot of companies.

I think the actual reason is that business want to make money on promises right here right now. Business promises a lot of features to investors give money, and then business implement a lot of (shit) features. And then they continue kinda "okay, features broken, give us more money and we will fix it".

If anyone still sees messages from the spammer in the comments let me know, federated removals are wonky sometimes

Blocking the user also gets rid of the comments that haven't been removed through federation.

Getting stuff down in writing is a good step; crucial for sure. But the process/ritual of decision logs doesn't necessarily get you great analysis or effective outcomes. Two stories:

... or if your team uses arguments such as "let's use X because Microsoft uses it too", "let's do X because everyone else does", or "I used it in my previous project and it worked well, so let's use it here too" then your decisions are likely suboptimal in the long term.

I've read decision logs and design docs that have included this kind of reasoning. Many meetings, everyone gets their say, it's all written down. One time, I arrived a year or two into a project and I could indeed see how exactly they came to the decision that they did. The problem was that the reasoning was super weak. Over-emphasis on process, little on problem solving skills.

Other teams I've been on were fantastic problem solvers but super sloppy. If the right people were around, in the same room, they could solve things more cleanly in a fraction of the time of some company 10x the size. But for new staff, or if those key people were not around: chaos!

I guess my conclusion is that effective decision-making comes down to balancing a whole bunch of different behaviour.

In short: software is tricky.

Sure, decision logs is just a step to fix a problems with decision making. Logs highlight a problems in decision making process and let you analyze a problems in your team. You still need an strong architect who may say "hey team, why your arguments so weak? it looks you are low skill engineers. make arguments more objective, or you will be fired" and then really fire weak engineers in team.

Logs highlight a problems in decision making process and let you analyze a problems in your team.

Yeah good point.

In that process-heavy project I joined, I could quickly see the problems; about 2 or 3 days. That meant when I was submitting code or reviewing the backlog I knew what kind of challenges I could make, and what would just be a waste of time. In others, it could take way longer - months! - to learn how the team actually deals with challenges and design.

I can’t say what their corporate culture is like now, but they’ve had a pretty poor reputation in the past, including the notion that the lowest performing 10% should be fired every year. The Amazon folks I’ve known have been great people - not at all the Gordon Gecko types you’d imagine from that - but culture in large corporations varies a lot by the team you’re in.

I came up with a saying back in the 90s when I was doing the startup scene - “Do you want it right, or by Tuesday?” Sometimes they do indeed need it by Tuesday. More of the time they have no idea why you need the extra days to get it right. But it’s really important for those in a leadership position - whether they’re managers or senior engineers - to push back and set expectations.

SNEED'S I CAN'T AND ON LEMMY SEETHE ON LEMMY DILATE CHUCK'S JANNY DILATE SEETHE FLOYD FLOYD SNEED'S FLOYD FEED SEETHE SUCK FUCK HOT POCKETS ON LEMMY JANNIES CHUCK HOT POCKETS HOT POCKETS SEETHE HOT POCKETS FUCK DILATE AND DILATE JANNY JANNY FLOYD SEED JANNY I CAN'T FLOYD FOR FREE DILATE DILATE CITY SLICKER CLEAN IT UP SUCK ON LEMMY DILATE SEETHE CITY SLICKER ON LEMMY AND

SUCK SNEED SEED SEED JANNIES AND FEED CHUCK'S FLOYD SNEED CITY SLICKER SEETHE SNEED SNEED'S CHUCK'S ON LEMMY FOR FREE FUCK JANNY JANNIES COPE AND CHUCK SEED SEETHE CHUCK'S CLEAN IT UP SEETHE AND HOT POCKETS SUCK DILATE HOT POCKETS FOR FREE CHUCK I CAN'T SNEED COPE FOR FREE CHUCK'S HOT POCKETS SEED COPE FEED HOT POCKETS CHUCK'S COPE AND DILATE FEED

SEETHE FUCK FLOYD SUCK CITY SLICKER CLEAN IT UP SEETHE I CAN'T HOT POCKETS JANNY ON LEMMY FOR FREE COPE CHUCK'S SEETHE SNEED SNEED'S ON LEMMY SEETHE CHUCK DILATE SUCK HOT POCKETS FOR FREE CLEAN IT UP HOT POCKETS ON LEMMY HOT POCKETS DILATE JANNIES HOT POCKETS HOT POCKETS DILATE SNEED SUCK JANNIES I CAN'T FLOYD CHUCK DILATE HOT POCKETS DILATE FUCK CITY SLICKER SNEED'S JANNIES FUCK SEETHE FOR FREE SEETHE

CLEAN IT UP CLEAN IT UP SEED CLEAN IT UP HOT POCKETS SEETHE SNEED FOR FREE DILATE SNEED'S FOR FREE SNEED'S FUCK CHUCK'S DILATE HOT POCKETS I CAN'T JANNY DILATE CLEAN IT UP HOT POCKETS DILATE JANNIES FEED DILATE JANNIES DILATE I CAN'T JANNIES I CAN'T I CAN'T DILATE SNEED SUCK SNEED I CAN'T FOR FREE CITY SLICKER SUCK SEED ON LEMMY JANNY FLOYD SNEED SEETHE FUCK SUCK ON LEMMY SEED HOT POCKETS

DILATE SNEED FLOYD SNEED'S AND JANNY SNEED SNEED FEED COPE CHUCK'S JANNIES SEETHE CHUCK'S FOR FREE CLEAN IT UP FLOYD FUCK JANNIES SEETHE FUCK SUCK CITY SLICKER FLOYD CHUCK'S SEED FOR FREE CHUCK'S ON LEMMY FOR FREE AND SNEED'S CLEAN IT UP HOT POCKETS DILATE JANNIES SUCK CHUCK SEED COPE AND AND DILATE CHUCK'S DILATE SEETHE ON LEMMY SEED I CAN'T ON LEMMY

FEED SNEED'S CITY SLICKER SEED SNEED CHUCK'S FUCK DILATE SNEED'S CHUCK DILATE HOT POCKETS SEETHE SEETHE JANNIES DILATE DILATE SEETHE FOR FREE SEED FUCK JANNIES SNEED'S FUCK FOR FREE CHUCK'S COPE CHUCK SEETHE FUCK FLOYD CLEAN IT UP FUCK SNEED CHUCK CHUCK FUCK AND SEED HOT POCKETS FUCK FOR FREE CITY SLICKER SUCK SUCK FLOYD SEED CITY SLICKER JANNY ON LEMMY

CITY SLICKER FLOYD SUCK CLEAN IT UP JANNIES CHUCK'S DILATE FUCK DILATE I CAN'T FOR FREE JANNY JANNIES SEETHE FLOYD AND DILATE FUCK CITY SLICKER SEED SEETHE JANNIES CLEAN IT UP FUCK FOR FREE SEED CHUCK CITY SLICKER CLEAN IT UP JANNIES SEETHE SEED DILATE SUCK FEED HOT POCKETS CHUCK'S SNEED CHUCK'S CLEAN IT UP FLOYD CHUCK I CAN'T FUCK SNEED'S COPE JANNY JANNY JANNIES CHUCK'S

DILATE HOT POCKETS DILATE CHUCK I CAN'T AND AND CLEAN IT UP HOT POCKETS FOR FREE COPE SUCK FUCK I CAN'T CLEAN IT UP CITY SLICKER SEED CHUCK FLOYD SEED FOR FREE HOT POCKETS SEED CLEAN IT UP SNEED HOT POCKETS CITY SLICKER CLEAN IT UP FLOYD HOT POCKETS FEED CLEAN IT UP JANNY FOR FREE CITY SLICKER SEETHE AND SEETHE AND SNEED'S FLOYD FLOYD FUCK JANNIES CHUCK'S CITY SLICKER DILATE FUCK FLOYD SNEED

JANNIES SNEED DILATE CLEAN IT UP FEED I CAN'T CITY SLICKER SNEED'S SNEED SUCK SEETHE COPE DILATE JANNY SNEED'S SEETHE JANNIES FUCK CLEAN IT UP CLEAN IT UP SNEED JANNY DILATE I CAN'T FLOYD CLEAN IT UP CITY SLICKER I CAN'T FEED DILATE FLOYD CLEAN IT UP DILATE COPE CHUCK'S FUCK SNEED'S CITY SLICKER CHUCK SEETHE CHUCK JANNIES SEETHE FOR FREE SEED FUCK FUCK FOR FREE SEED DILATE

SUCK SUCK ON LEMMY FOR FREE I CAN'T FLOYD I CAN'T I CAN'T CHUCK CHUCK'S FEED DILATE SEETHE FLOYD CITY SLICKER HOT POCKETS SEED ON LEMMY FOR FREE CHUCK'S FLOYD SEED ON LEMMY JANNY SEED FOR FREE ON LEMMY FOR FREE SEETHE SUCK FEED FUCK CHUCK'S SEETHE I CAN'T CITY SLICKER FUCK HOT POCKETS JANNIES CITY SLICKER FEED DILATE CITY SLICKER FUCK CITY SLICKER AND FLOYD CHUCK SUCK SEED

CHUCK'S JANNIES JANNY JANNIES CITY SLICKER I CAN'T ON LEMMY DILATE JANNIES HOT POCKETS CHUCK CITY SLICKER FUCK HOT POCKETS SEETHE JANNY FEED FOR FREE I CAN'T I CAN'T JANNY CITY SLICKER HOT POCKETS SEETHE COPE SNEED JANNY HOT POCKETS CHUCK'S ON LEMMY CLEAN IT UP ON LEMMY CHUCK'S FLOYD FLOYD SEETHE JANNY SNEED CLEAN IT UP SEED JANNY FLOYD AND SUCK FUCK JANNIES ON LEMMY DILATE HOT POCKETS SUCK

CHUCK'S ON LEMMY JANNIES SEED SNEED'S CLEAN IT UP CITY SLICKER FLOYD CHUCK DILATE SEED JANNY SNEED SUCK SEED CITY SLICKER AND JANNY ON LEMMY CHUCK FLOYD HOT POCKETS ON LEMMY ON LEMMY FLOYD CLEAN IT UP AND FOR FREE CLEAN IT UP CITY SLICKER COPE SUCK CHUCK'S HOT POCKETS COPE CLEAN IT UP CHUCK'S FUCK FEED FLOYD ON LEMMY I CAN'T COPE FLOYD FUCK ON LEMMY COPE SEETHE COPE SUCK

CHUCK'S ON LEMMY CHUCK ON LEMMY ON LEMMY FLOYD CLEAN IT UP SEETHE FLOYD AND COPE SEETHE CITY SLICKER FOR FREE CHUCK DILATE I CAN'T AND FOR FREE JANNIES HOT POCKETS FLOYD JANNY CHUCK I CAN'T COPE SEETHE SNEED'S ON LEMMY SEED SNEED FUCK CHUCK'S FLOYD HOT POCKETS COPE SEETHE CHUCK'S SUCK FLOYD FUCK CITY SLICKER SNEED CITY SLICKER FOR FREE SEETHE SUCK COPE SNEED'S JANNY

I CAN'T FOR FREE JANNY SNEED'S SEETHE FLOYD SNEED'S I CAN'T FLOYD DILATE ON LEMMY JANNIES CHUCK I CAN'T FLOYD COPE SEETHE HOT POCKETS I CAN'T FEED FUCK I CAN'T ON LEMMY SNEED'S SEETHE HOT POCKETS SEED SNEED'S FEED FUCK SEED SEETHE SEED COPE AND FOR FREE CHUCK'S DILATE SNEED AND JANNY SUCK CHUCK'S CLEAN IT UP I CAN'T COPE I CAN'T FLOYD CHUCK'S DILATE

CHUCK ON LEMMY FEED FEED SUCK HOT POCKETS DILATE SUCK COPE SEED FEED COPE HOT POCKETS FLOYD CHUCK'S SEETHE SNEED'S CHUCK I CAN'T JANNY CHUCK'S AND FUCK CITY SLICKER HOT POCKETS SEETHE CHUCK JANNY DILATE SNEED SNEED JANNY SNEED'S FEED FEED FLOYD JANNIES DILATE CLEAN IT UP SEETHE COPE JANNY ON LEMMY AND FEED JANNIES I CAN'T CHUCK'S DILATE I CAN'T

I CAN'T JANNY FEED SNEED FEED JANNIES CHUCK'S CHUCK'S ON LEMMY DILATE DILATE COPE CHUCK AND CLEAN IT UP FUCK SNEED'S FEED SUCK SUCK ON LEMMY CHUCK FUCK SEED HOT POCKETS JANNY CHUCK FEED JANNY FOR FREE FOR FREE FLOYD CHUCK CITY SLICKER HOT POCKETS JANNIES SEETHE CHUCK SEETHE AND HOT POCKETS SNEED'S JANNIES AND COPE COPE CLEAN IT UP CLEAN IT UP FEED JANNIES

CLEAN IT UP JANNY FOR FREE FUCK SEED JANNY FUCK FEED ON LEMMY CLEAN IT UP FLOYD SEETHE CHUCK AND SEETHE FEED CITY SLICKER SNEED'S ON LEMMY COPE HOT POCKETS FUCK SEED ON LEMMY CITY SLICKER JANNIES FUCK FOR FREE CLEAN IT UP ON LEMMY JANNIES ON LEMMY SEETHE ON LEMMY SEETHE HOT POCKETS AND SUCK FEED ON LEMMY I CAN'T CLEAN IT UP CLEAN IT UP SNEED DILATE ON LEMMY SNEED'S FLOYD CLEAN IT UP CHUCK'S

CHUCK CLEAN IT UP JANNY SNEED'S CHUCK FOR FREE SUCK SEETHE FUCK DILATE SUCK SNEED AND SNEED'S JANNIES DILATE CHUCK'S COPE SEED SEETHE CLEAN IT UP CHUCK'S CLEAN IT UP CLEAN IT UP CHUCK'S ON LEMMY CLEAN IT UP JANNY ON LEMMY SUCK SEED JANNY SNEED CHUCK'S SNEED'S SUCK JANNIES FLOYD COPE DILATE ON LEMMY CITY SLICKER COPE ON LEMMY FOR FREE SUCK SNEED'S FLOYD CHUCK CHUCK'S

CITY SLICKER SEETHE COPE SNEED AND DILATE CITY SLICKER CLEAN IT UP SEETHE CLEAN IT UP COPE SEED HOT POCKETS FUCK I CAN'T CLEAN IT UP SUCK FUCK ON LEMMY JANNY FLOYD ON LEMMY SUCK SEETHE HOT POCKETS CITY SLICKER DILATE ON LEMMY SEETHE SEED SEETHE CLEAN IT UP SEETHE CLEAN IT UP JANNIES SEED FLOYD FLOYD FLOYD CLEAN IT UP SNEED CLEAN IT UP JANNY JANNIES FEED CLEAN IT UP CHUCK CHUCK CLEAN IT UP I CAN'T

SEETHE CLEAN IT UP JANNY AND CHUCK'S JANNY COPE DILATE SNEED FEED CITY SLICKER COPE AND FLOYD CHUCK SEED HOT POCKETS FOR FREE DILATE FEED FLOYD SEETHE CHUCK CLEAN IT UP CHUCK'S CHUCK'S ON LEMMY SNEED SNEED'S FLOYD FEED AND SEED AND CITY SLICKER ON LEMMY I CAN'T SNEED JANNY CLEAN IT UP DILATE FUCK FUCK SNEED'S FLOYD FUCK CITY SLICKER I CAN'T ON LEMMY SNEED

CLEAN IT UP FOR FREE JANNY ON LEMMY SUCK CITY SLICKER FLOYD DILATE JANNIES CHUCK'S SEED DILATE CLEAN IT UP JANNIES SNEED DILATE HOT POCKETS JANNIES JANNY ON LEMMY SNEED HOT POCKETS SUCK SNEED JANNY CHUCK FOR FREE I CAN'T HOT POCKETS CLEAN IT UP CHUCK FUCK JANNIES CHUCK SNEED'S JANNIES FUCK CLEAN IT UP HOT POCKETS I CAN'T HOT POCKETS ON LEMMY SEETHE FEED JANNIES FLOYD FEED SNEED SUCK HOT POCKETS

SEETHE AND SNEED COPE HOT POCKETS AND ON LEMMY CLEAN IT UP FOR FREE SNEED CLEAN IT UP COPE CLEAN IT UP SNEED'S AND FOR FREE SEED SNEED SNEED'S CITY SLICKER DILATE SEED JANNY DILATE ON LEMMY CLEAN IT UP JANNY AND CITY SLICKER SUCK CHUCK SEETHE SNEED'S SUCK SNEED'S I CAN'T SNEED'S ON LEMMY SEETHE SEETHE JANNIES SNEED'S CITY SLICKER I CAN'T SUCK JANNIES FEED DILATE HOT POCKETS CITY SLICKER

JANNY SNEED SUCK JANNY DILATE SEED FEED HOT POCKETS FOR FREE CHUCK'S FEED FOR FREE DILATE CHUCK ON LEMMY FUCK SEETHE HOT POCKETS FEED AND CHUCK JANNY FOR FREE ON LEMMY SNEED'S CLEAN IT UP JANNIES DILATE CITY SLICKER SUCK CHUCK'S ON LEMMY AND CLEAN IT UP FEED FOR FREE SNEED'S CHUCK JANNY SNEED'S CLEAN IT UP FLOYD FEED CITY SLICKER JANNIES FLOYD JANNIES JANNIES CHUCK'S SEED

FEED JANNY COPE FLOYD I CAN'T SUCK AND SEETHE CITY SLICKER DILATE JANNIES CLEAN IT UP DILATE SNEED CHUCK'S DILATE SNEED'S SUCK COPE HOT POCKETS JANNY CLEAN IT UP I CAN'T DILATE AND CLEAN IT UP FLOYD HOT POCKETS FUCK COPE FOR FREE CLEAN IT UP CITY SLICKER SEETHE SNEED SUCK CITY SLICKER ON LEMMY CHUCK ON LEMMY CLEAN IT UP JANNY JANNY HOT POCKETS JANNY SNEED'S JANNY FLOYD CHUCK'S DILATE

COPE SNEED'S I CAN'T SNEED'S CITY SLICKER FUCK CHUCK SNEED JANNIES ON LEMMY FUCK FOR FREE FUCK FLOYD JANNIES CHUCK'S FEED SEETHE FOR FREE I CAN'T CHUCK JANNY FUCK CLEAN IT UP AND FUCK CLEAN IT UP JANNY FOR FREE FLOYD COPE I CAN'T COPE SNEED CHUCK'S ON LEMMY FLOYD CITY SLICKER SEED FOR FREE FOR FREE COPE FEED JANNIES JANNY JANNIES CITY SLICKER FOR FREE SUCK FUCK

CHUCK'S SNEED JANNIES FEED AND FLOYD FOR FREE SNEED'S FEED SNEED'S SNEED'S SUCK FOR FREE FOR FREE HOT POCKETS CHUCK'S AND COPE SNEED'S SNEED SEED JANNIES FUCK CHUCK JANNIES CITY SLICKER FEED FLOYD COPE CHUCK CHUCK DILATE JANNIES FEED CHUCK AND CHUCK'S CITY SLICKER SEETHE FEED CHUCK CHUCK'S SEETHE AND FOR FREE SUCK CITY SLICKER HOT POCKETS CHUCK'S DILATE

FOR FREE CLEAN IT UP FUCK CLEAN IT UP AND SNEED CHUCK ON LEMMY CLEAN IT UP CLEAN IT UP FEED FLOYD COPE SEED DILATE CHUCK'S SEED CLEAN IT UP CLEAN IT UP AND CHUCK'S JANNY FUCK SEED FEED CHUCK'S SNEED'S ON LEMMY CLEAN IT UP FUCK SUCK SUCK JANNY SUCK CHUCK I CAN'T CITY SLICKER JANNIES JANNY SEED SNEED'S JANNIES FOR FREE FLOYD SNEED'S DILATE FUCK HOT POCKETS SNEED SUCK