-
Notifications
You must be signed in to change notification settings - Fork 1
Onboarding Tips and Tricks
This is mostly a collection of notes that I took during my onboarding, which will hopefully be useful for a future developer :). Please add your own!
Since most of our code is intended to run on Linux, and SSHing into MISL-A can be painful. To get around this, I just run a virtual machine with the same operating system (Linux CentOS 7), and transfer the code over when I'm confident it works :).
This also lets you test distributions on different operating systems, so we can make sure that researchers can run our software regardless of their setup.
I've found installing VMWare on my machine has been a huge timesaver: it lets me rapidly switch back and forth testing things on Ubuntu, CentOS, and Mac OS. This is especially useful for testing packaging/distribution steps.
VMWare Fusion is free for University of Washington students, staff, and faculty!
- Install VMWare
Since I’m a Mac native, matching that environment as closely as possible in Linux improves productivity. If that’s true for you too, here are some things I’ve found useful when running Linux VM from Mac
- Change VMWare keyboard profile to Mac
- (VMFusion > Virtual Machine > Settings (⌘E),
- System Settings > Keyboard and Mouse > Profiles
- Choose “Mac Profile”
- If you’re using VSCode as an editor (which I HIGHLY recommend), change the default keybindings to match the Mac ones.
- VSCode extension here: https://marketplace.visualstudio.com/items?itemName=fredhappyface.mackeybindings
- You can also change it from the keybindings window, copying in this JSON: https://github.com/FredHappyface/VSCode.OSKeybindings/blob/master/MarkdownAllInOne.json
Here are my must-have extensions:
- Nix (Not the Baptist BENOIST version, as that one lacks autocomplete). Be sure to enable "Enable Language Server".
- Python
Q: I'm running out of space! / I resized the VM disk size but it's not being reflected! A: Linux VM needs to be explicitly told to resize the VM disk partition: https://support.nagios.com/kb/article/resizing-the-vm-disk-size-for-centos-7-814.html
- Github wikis don't natively support markdown table of contents. Here's a tool that does that for you! https://imthenachoman.github.io/nGitHubTOC/ (found by the discussion here https://github.com/isaacs/github/issues/215)