Generally, people have a finite capacity to “deal with things”. Organisational events and changes exhaust that finite capacity, which makes people over-evaluate any further changes to their work environment as they crave stability. As such, after significant changes such as layoffs, reorgs, pivots, etc., it’s even more critical to over-communicate and communicate with care when doing…
Interviews should be: Consistent Fair Humane As such, here are some things to keep in mind: Ensure that at least 80% of your questions overlap between different candidates. Otherwise, you create an uneven playing field. A memory of an experience fades extremely quickly, so make sure to jot down your feedback ASAP—ideally, on the same day. I usually block off my calendar right after the interview…
Due to extreme demand on my Office Hours I’m opening a paid consulting stream for those that want more of my time and are willing to pay for it - i.e. SRE leaders, Seasoned Professionals and Companies that need advice. Are you a seasoned professional new to the SRE role? Perhaps you lead a team that struggles with a particular operational or culture problem? Are you a startup that needs a nudge in…
Following the example of my friend natwelch@ I decided to try my hand at public office hours. The idea is simple - I have a 60 minute weekly slot that anyone can book through calendly and we can do anything of the following via videochat: Helping people with non-IT/CS backgrounds get into the industry. Because we all stand on the shoulders of giants and I’m not an exception. I came to IT with no…
I got inspired by AffectV post on AWS SSH completion and decided to write something similar for GCP. Here’s the end result: Prerequisites # You use zsh as your main shell You have fzf and its completion set up Writing the module # First, we need to figure out how to get the list of information we want. gcloud provides a somewhat sensible formatting and filtering options for that, e.g. if I want to…
Sublime Text 3 is my casual editor of choice. They recently started pushing SublimeMerge which is a GUI Git Client. I’m a fan of Fork so I’m not really keen on the cluttering the context menu with things I won’t use. I figured out how to remove them and hope the instructions may help others. 1) Install PackageResourceViewer package 2) Type a sublime prompt command (Cmd/Ctrl + P):…
If you work a lot with ephemeral instances you will eventually run into this message: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Today I learned about Match exec config option in ~/.ssh/config which allows you to set…
After rearchitecting my Concourse setup a bit to shard web workers I’ve noticed that fly stopped connecting: λ fly login -t fog --concourse-url https://ci.saragosa.tv:443 (1) logging in to team 'main' could not reach the Concourse server called fog: Get https://ci.saragosa.tv:443/api/v1/info: x509: certificate signed by unknown authority is the targeted Concourse running? better go catch it lol…
The GCP module for Ansible has recently been updated to not rely on libcloud but the docs still continue to be slightly confusing , so I’m publishing a new article on how to set up Ansible GCP dynamic inventory. As last time this assumes you already have: Ansible installed (version >= 2.7) A working python installation Have a service account with Compute Engine API access Exported a JSON key in…
I needed to slurp up some very large files into a ruby app recently and noticed some interesting behaviour in IO.foreach method. While it is supposed to read file line by line without loading it up into memory, memory usage is quite significant compared to reading the files via an offset ( IO.read ). Investigation # 10 MB test file: λ ls -alh xaa -rw-r--r--@ 1 temikus staff 9.5M Feb 18 11:24 xaa…