# Log 2022-07-15
## Breakfast links
I found this article about how [[golang]] [[Concurrency]] is not easy. I am actually going to start doing the [[C2 wiki]] thing: [[ZK - 2g3a - golang Concurrency is not easy]].
- [Chris's Wiki :: blog/programming/GoConcurrencyStillNotEasy](https://utcc.utoronto.ca/~cks/space/blog/programming/GoConcurrencyStillNotEasy)
This article links to [GitHub - google/gops: A tool to list and diagnose Go processes currently running on your system](https://github.com/google/gops) which seems like a great tool.
I found the link above in [[Hillel Wayne]]'s in finding [[goroutine]] bugs using [[TLA+]].
- [Finding Goroutine Bugs with TLA+ • Hillel Wayne](https://www.hillelwayne.com/post/tla-golang/)
Found through twitter, a video about building [[Fuzzing|fuzzers]] (in [[Python]] ?):
- [Building great fuzzers in 5 minutes](https://ultv.univ-lorraine.fr/video/12395-cyber/)
I think I will also start to create more "grown-up" topics. It needed some confidence that I have slowly been building.
- [[Software Engineering Antipatterns]], inspired by [[GergelyOrosz - 1542883308715053058 - Team Antipatterns]]
An article with some thoughts about [[Interviewing]], and how it is "mapping the potato". I'm not really sure what it is about, honestly. That you should be conscious of bias when interviewing? That interviewing has multiple axis?
- [Lowering the bar – Moishe Lettvin](https://www.moishelettvin.com/2015/12/16/lowering-the-bar/)
An article about [[Emacs]] macros, and a bit of [[Emacs Lisp]]. Seeing how pleasant it was to work in [[Emacs]] while doing my [[Prolog]] interpreter lately, I think investing some time into [[Emacs Lisp]] might really be worth it. Especially if I get back to [[Common Lisp]] in a bigger way.
- [Keyboard Macros are Misunderstood - Mastering Emacs](https://masteringemacs.org/article/keyboard-macros-are-misunderstood)
Looking for donations to support LGBTQ+ rights:
- [The HRC Foundation seeks to fundamentally change the way LGBTQ+ people are treated in our everyday lives. - HRC Foundation](https://www.thehrcfoundation.org/)
- [National Center for Transgender Equality](https://transequality.org/)
- [Transgender Law Center](https://transgenderlawcenter.org/)
- [TLDEF - Transgender Legal Defense & Education Fund - Transgender Legal Defense And Education Fund, Inc.](https://www.transgenderlegal.org/)
- [Home | Trans Lifeline](https://translifeline.org/)
- [Homepage | GLSEN](https://www.glsen.org/)
An article about being a "line engineer" or a "[[Staff Engineer]]", after a [[Rands Slack]] donut yesterday. I remember reading this a while ago, but I don't remember the exact take aways. The article itself is actually quite recent, so maybe I am mixing things up.
- [The Other Kind of Staff Software Engineer - Earthly Blog](https://earthly.dev/blog/line-staff/#:~:text=Staff%20and%20line%20are%20names,specialized%20advisory%20and%20support%20functions.)
Adam Fowler has a series of youtube videos about building a [[Databases|Database]] from the ground up in C++ (a simple in-memory key/value store, although I think the key values can be persisted):
- [002 GroundUpDB C++ API Design Part 1 Includes & Namespaces - YouTube](https://www.youtube.com/watch?v=1-x2sIfkusU)
Found this nice tool to see if you are talking too much in a [[Remote Meetings]]. I wonder how useful it is for say, [[Pair Programming]]:
- [[Unblah]]
Going over ![[oliverjumpertz - 1542865071533072385 - Top ten repositories to grow as a software developer]]
Adding a few of those links to for example [[Software Mentorship]].
This repository has a long list of projects for [[Project based learning]]. They are really nice!
- [GitHub - practical-tutorials/project-based-learning: Curated list of project-based tutorials](https://github.com/practical-tutorials/project-based-learning)
For example, this would be a good project to get back into [[C]], I think. This is about building a tiny tiny [[LISP]] in 99 lines of C. It's probably good to get acquainted with [[libowfat]].
- [tinylisp/tinylisp.pdf at main · Robert-van-Engelen/tinylisp · GitHub](https://github.com/Robert-van-Engelen/tinylisp/blob/main/tinylisp.pdf)
```mermaid
sequenceDiagram
participant VoteCounter
participant Alice
participant Bob
note Left of VoteCounter: Start Program
VoteCounter ->> Alice: Start
VoteCounter ->> Bob: Start
Alice ->> Alice: wait 10 seconds
note Left of VoteCounter: After 10 second
Alice ->> VoteCounter: Submit Vote
VoteCounter ->> VoteCounter: Increment counter
note Left of VoteCounter: After 10 second
Bob ->> Bob: wait 20 seconds
Bob ->> VoteCounter: Submit Vote
VoteCounter ->> VoteCounter: Increment counter
```
## More links
A link about [[Staff Engineer]], and what the role is supposed to be. This is kind of the common question, and honestly I don't think there will ever be an answer. The best I can think of is just all the archetypes listed by [[Will Larson]] in [[BOOK - Staff Engineer - Will Larson]] under [What do Staff engineers actually do? | StaffEng](https://staffeng.com/guides/what-do-staff-engineers-actually-do) and [Staff archetypes | StaffEng](https://staffeng.com/guides/staff-archetypes).
The part about how staff+ might be expected to [[Lead with influence]], and how pernicious that expectation is for someone who doesn't yield structural power really resonated with me: [A Staff-shaped Hole – Lead With Influence](https://squanderingti.me/blog/2022/06/29/a-staff-shaped-hole.html#lead-with-influence), since I think that is pretty much what happened. The person with structural power used it to block most technical proposals in my area of responsibility. In fact I got later blamed for the decisions that were made for me.
Regardless of perception, (almost) nobody has an effective Staff+ program (yet).
- [A Staff-shaped Hole – Squanderingtime/Chris Chandler](https://squanderingti.me/blog/2022/06/29/a-staff-shaped-hole.html)
## Systems software is like road planning
Writing up my thoughts about [[ZK - 2a0a2 - Systems software is like road planning]] and asking what people think on [[Rands Slack]]
## Dev Log
[[Dev Log 2022-07-15]]
## Private Log
[[Private Log - 2022-07-15]]
## RC presentations
Idea: make a page that has a timer in the tab name! Can this be done in codepen?
### Critterm
Written in golang, probably uses charm.sh?
Evolution of critters in the terminal. Mutations evolve an internal graph by adding / removing nodes.
![[2022-07-15-1657915972691.jpeg]]
## More random links
From [The Only 3 Writing Tips That Actually Matter — Emergency Creative](https://www.emergencycreative.com/blog/the-only-3-writing-tips-that-actually-matter), a funny piece of advice I will have to try out:
> [!quote] Print your work
## EInk display
Here is a video with a lot of data about [[E-Ink]] displays:
- [E-paper hacking: fastest possible refresh rate - YouTube](https://www.youtube.com/watch?v=MsbiO8EAsGw)
## Evening links
Here is a page about how to create a pared down application for [[Bug Reporting]], which is an important part of [[Debugging]] and asking for help:
- [Short, Self Contained, Correct Example](http://sscce.org)
I am going to start creating an order of magnitude more ZK entries. I understand now why you would like to use numbers in the name of ZK cards.
- [[ZK - Use a Short, Self Contained, Correct Example When Asking for Help]]
- [[ZK - Don't Be Afraid of Asking Stupid Questions]]
Starting to number things in order to have folgezettel behaviour.
- [[ZK - 5b1 - Steve Jobs Won Over His Suppliers At Next By Providing Realtime Metrics To Them]]