leadership architecture opensource
Picking a license. Was trying to remember why we selected the Mozilla Public License (MPL) for Woolpert’s open source work. Rediscovered https://choosealicense.com/licenses/mpl-2.0/ which helps you make the right choice depending on your decision drivers.
Use boring technology. Writing a client proposal and remembered the phrase ‘boring technology’. Searched it and discovered that I’d read about it in the past: boringtechnology.club. Key idea: innovation tokens.
“Let’s say every company gets about three innovation tokens. You can spend these however you want, but the supply is fixed for a long while. You might get a few more after you achieve a certain level of stability and maturity, but the general tendency is to overestimate the contents of your wallet. Clearly this model is approximate, but I think it helps.
If you choose to write your website in NodeJS, you just spent one of your innovation tokens. If you choose to use MongoDB, you just spent one of your innovation tokens. If you choose to use service discovery tech that’s existed for a year or less, you just spent one of your innovation tokens. If you choose to write your own database, oh god, you’re in trouble. …
The nice thing about boringness (so constrained) is that the capabilities of these things are well understood. But more importantly, their failure modes are well understood.”
Notes on Engineering Leadership.https://kellanem.com/notes/. Kellan was mentioned in the boring technology post as an influential manager and technology leader. Followed the links and found some absolute gold Notes On Engineering Leadership.
Feynmann Method. https://fs.blog/2021/02/feynman-learning-technique/. I was thinking how to get up to speed on Google Cloud Identity quickly, from a perspective of being able to educate people on it. Like magic, the Farnam Street weekly newsletter landed in my inbox and gave me a tool. The short version goes like this:
- Pretend to teach a concept you want to learn about to a student in the sixth grade.
- Identify gaps in your explanation. Go back to the source material to better understand it.
- Organize and simplify.
- Transmit (optional).