RC W2D4 - The product-minded engineer

Open source

Today's open source event was on contributing to Kubernetes (hereafter, k8s). First, I should mention how open source contributors own the copyright over their contributions. If the maintainers want to change the type of licence, say, all contributors need to agree. Thus having a agreement to assign the copyright beforehand as a requirement is actually quite sensible (so not like signing an NDA).

Julian shared his experience on making open source contributions, and he's clearly into k8s. Given the number of different areas, he suggested choosing between them by first information-gathering - attending the meetings and following conversations on Slack to get a sense what the issues are. Plus k8s has lots of clients in different languages, so you can contribute even if you're less familiar with Go. Listening to his suggestions definitely makes contributing more approachable.

WebAssembly

I had planned to spend more time with urllib3, then realized I was hosting the Front End Hack and Tell. Conveniently getting WebAssembly to run in the browser had been elusive, thus something to hack on. It turns out the instructions missed out including the edition to the Cargo.toml file (source here). The package will compile with the change, and running it in the browser simply requires a web server be set up.

It's not clear to me why a web server is needed (since it's just importing a set of instructions), but repeating this for my rocket game from last week got it to run on repl.it - it's playable here (repl here)! Navigate the rocket with arrow keys and shoot with the space bar. The rocket game was featured in David Beazly's mind-blowing talk, where he livecodes a WebAssembly interpreter in Python from scratch.

Content: Product management

The extra content last week was on data science, this week we feature product management.

https://blog.pragmaticengineer.com/the-product-minded-engineer

At the end of the day, we use software to solve business problems. The better we understand the context of the problem, the more impact our solution will have.