Photo by Henry & Co.
Introduction
We meet a new anti-design pattern: The Black Hole.
Giganet needs Chinese support for their gig workers app for the city of San Jose. Will they end up being hunted down by the triads?
Alice and Bob set a trap.
Bob and Alice Set a Trap
Bob is back in the Venice gym doing circuit training.
It’s Tuesdays with Alice.
What Alice did, she walked into the gym, put her bag into a locker and started on the treadmill.
Bob walked over to join her after parking his bike by the ping-pong table.
They chat as Alice treads.
Bob is looking at her and smiling, “¿Cómo estás? Alice?”
Alice smiles back, “I have a mouse problem in my house that I have to take care of”.
They start jamming together.
Bob, “I heard. It’s all over the Internet. “Like how Alice grew up on a cannabis farm and she knows all about how to handle that kind of stuff. Bob offered to help and Alice said no”.
Alice smiled, “Umhm - that’s not what I said: I said I can handle it. It's not a big deal”.
Bob smiles, “So, you’re actually saying, you’d be happy for me to help with the mouse project”.
Alice makes Bob work a bit.
Alice laughs, “Well, you know, I am a strong independent woman and I prosecute money-laundering offenders at the FBI. Mice are easy-peasy in comparison”.
Bob lobs the ball back to Alice.
Bob, “Mice are suckers for peanut butter. You know, I have a system”.
Alice, “Peanut butter?”.
Bob, “Yeah - they like the smell. There is a sticky paper with peanut butter smell. They get stuck on the paper and then you can call the FBI mouse-disposal squad to throw out the paper with the stuck mouse”.
Alice volleys back to Bob.
Alice, “Where do I get this sticky paper?”
Bob closes.
Bob, “It just so happens that I have a box of sticky PB-smelling paper in my backpack. We can do the project after your workout”.
Alice had wanted him to help out with the mouse problem, but being a guy, and an engineer, it took Bob a while to figure this out. After all, why did she tell him she had a mouse problem to begin with?
Alice, “Let me give you the address of my place in Santa Monica. It’s about a 20’ bike ride from here”.
The doorbell rang. Bob was at the door.
Alice opens the door, feeling him up close to her. Smelling the scent of his body.
She’s wearing an FBI t-shirt, shorts and sneakers without socks. Showered and changed before Bob arrived.
Bob looks around. Sees a modern open-space split-level design. Kitchen off the dining room area.
“Where are the kids?”
Alice, “Their grandfather took them to Disneyland. Jerzy was feeling spontaneous. I don’t mind the kids missing school for quality time with Jerzy and fun time with Mickey”.
Alice, “Would you like something cold?”.
Alice comes out of the kitchen with 2 glasses of soda water.
They sit down on the sofa and sip soda.
This is uncharted territory for the 2 of them.
Bob decides to play it safe and focus on the task.
Bob, “Where did you see mouse droppings?”.
Alice, “Around the area of the sink”.
Bob, “Let’s put some sticky paper in the cabinet under the sink and some more at the edges of the kitchen. Do you have any pets?”
Alice smiles, “No - just 3 kids”.
It takes 3’ to lay down the PB-smelling sticky paper.
Alice, “Well, that was easy. Can I make you an espresso?”
Bob, “Espresso is perfect”.
They go back to the sofa and sit down with their espressos and soda. Just looking at each other.
Alice, “You know you can’t stay here. You have to go”.
They stand up. Alice gives Bob a little peck on the check, and Bob leaves. He waves goodbye. She waves back.
Giganet
The team is at the Venice studio apartment celebrating another win - this time with the city of San Jose.
The team is waiting for Barry to say something.
Barry - Tony Soprano look, olive polo shirt, khaki slacks, casual sneakers.
Barry, “We’ve just signed a contract with the city of San Jose. This is great news as it underlines our growth and commitment to cities and the large number of gig workers they employ”.
“The challenge is that we have 30 days to deliver, including Chinese language support. I’m passing the baton to Bob right now”.
Bob sits down with Lena, Yasmin and Justin and walks the team through an impact analysis of the feature.
Bob, “Guy, where do we see gaps and potential blockers to adding Chinese language support?”
Lena, “We don’t have any native Chinese speakers on the team, and the code doesn’t use a central dictionary of words. We’re using React Native for the front-end so it should not be a problem to add internationalization. Uh - and we’ll have to add a language selector in the UI”.
Justin, “Don’t look at me. I know Korean, not Chinese”.
Yasmin is wearing a Wayne blue linen blazer from L’Agence on Rodeo. Another shopping trip with her uber-rich Persian boyfriend.
Yasmin, “I’ll develop the API services on the back-end and work with Lena and Justin on the integration”.
Bob assigns work tasks. They need a React programmer who knows Chinese to build a dictionary of words and dynamically generate the front-end templates after the user selects the interface language.
Justin, “My programming languages instructor at Santa Monica College, Stanley Cheng is a good programmer. Maybe you can talk to him Bob?”.
Stanley passes Lena’s phone screen and they bring Stanley in for an in-office interview loop with Yasmin and Bob.
Stanley does fine. He’s fluent in Chinese and in the React Native framework that Giganet uses for the front-end.
Bob sends him to Iris to sign a contract for a 3 week project.
Stanley takes on the task the next day.
He locks himself in his home office. Starts at 18:00 after teaching and works until 2AM. Silent on slack channels.
Piles of Snickers wrappers and Fanta cans pile up outside his door.
Every day at the daily scrum, Bob asks - “How are you doing with the Chinese support feature?”
Every day, Stanley says, “I’m almost there, I’ll commit a release to Github tomorrow”.
Every day, the same story, for 2 weeks.
Giganet now has their back to the wall.
The Black Hole Anti-Design Pattern
A design pattern is a template for creating solutions in different situations.
For example, an IKEA cabinet with its little tools and instructions for assembling the table is a design pattern. For example, building a sales pipeline is a design pattern.
An anti-design-pattern is a pattern that guarantees failure in different situations.
For example, not reading the IKEA papers and losing the little tools.
The black hole
In the context of software development, the term "black hole" is sometimes used metaphorically to describe a situation or phenomenon where software projects or tasks seem to endlessly consume time, resources, and effort without producing any visible progress or measurable outcomes.
It's a common challenge in relationships as well.
What does it look like?
The company has a star programmer.
He is amazing. 10X faster than the best engineers in the team. He remembers algorithms by heart. He codes solutions in a day that take a mortal a month or or are impossible. Leaps tall buildings in a single bound.
But he gets sucked into a black hole.
Why is this an anti-design pattern?
The star programmer is sucked into a black hole.
Like a black hole in space, information goes in, but nothing comes out
Delivery keeps on being delayed.
Other members of the team wait on the super star.
They start to resent him.
Delivery is threatened.
This does not feel like a good idea to anyone in the team
The team is demoralized for working hard and not delivering
The company doesn’t make their commitment
Loss of revenue and reputation.
Solving “The Black Hole”
Manage Requirements: Invest time upfront in clearly defining and documenting project requirements. Make sure that the super star understands the requirements.
Control Scope: Do 1/2 the features you planned. Prevent scope creep. Make sure that the star programmer is not going off scope with new features, just because he thinks he can do them.
Communication and Collaboration: Insist on open and transparent communication within the development team and with the CEO. Update project status and address issues every 24 hours. Raise black flags on black holes.
Technical Debt Management: Many times - an engineer gets stuck in a black hole when he/she tries to fix old issues. Allocate time to address technical debt and refactor code as necessary. Old issues may not have to be fixed on the critical timeline for the new feature.
Problem-Solving and Skill Development: Encourage knowledge sharing within the team. Encourage seeking external expertise when people get stuck.
Debrief: Use a weekly 1:1 with the star engineer to debrief progress and issues. Work with him to help add, remove, and improve things in his process.
Extreme ownership: Identify and mitigate threats and single points of failure like super star non-delivery. At the end of the day - if an engineer gets stuck in a black hole, it’s the leader's fault and the leader's responsibility to fix.
A "black hole" can be challenging, but with extreme ownership and good project management, you’ll see light.
On a park bench in Venice CA
Mark was the one who began.
Mark, “Bob, tell me what’s happening at Giganet, and what’s new with Alice?”.
Mark remained silent as they sat on the park bench.
In front of them there was the green calm of the park.
A man hungry for an answer, must stock up on patience.
A man in possession of analytical skills needs to listen.
That is why Mark remained silent.
Mark listened carefully to Bob's story for about 15 minutes.
Bob, “I saw Alice this week at her house. It started out really well but at the end, she just told me to leave”.
Mark, “Tell me exactly what she said”.
Bob, “Alice said, you know you can’t stay here. You have to go”.
Bob, “She pecked my cheek and we waved goodbye. I have to admit, I’m confused”.
Mark, “She’s unsure. Something unrelated to you is going on. You love her right?”
Bob, “Yes”.
Mark, “Don’t push. Don’t ask family questions. Just flow. Talk about things you have in common.
You’re stuck in a Black Hole with Stanley guy. You own it. Shake him out of it today”.
Black hole topic good. Story interesting. Analysis at the end good. Story a bit simplistic and chauvinistic. :/
Could be developed more.
Thanks ER!
How would you improve the story of catching the mouse?