How to work from home, Codam edition. 2020-03-13
The Codam staff has recommended everyone to work from home if possible. Because not everyone has a development environment setup to work from home, I thought I would create a quick guide.
In order to collaborate with your peers, screen sharing could be useful. For this, you can use the “Start a call” button at the top right of any slack channel. Anyone who is on that channel can join your call. One person can share their screen at a time and everyone can draw on that screen to e.g. point to code.
If you wish to share more then one screen at a time you could use Discord.
If you use vscode you can also use the Live Share plugin to collaborate as if you shared an iMac.
Migrating from vogsphere to GitHub
If you only have your code on vogsphere you can push it to GitHub in a few steps.
- Create a GitHub repository
cdto the folder on your iMac where you have your repo.
git remote add github https://github.com/your_name/your_repo_name
git push -u github master
If you have 2FA on your GitHub you need to use SSH instead of https.
How to setup.
The url will look like
If you don’t have a macOS device (like me) and want to work from home you probably want to use Linux. Windows users can use WSL to get a Linux environment.
I recommend Ubuntu for new Linux users. First, you want to install Git and the
sudo apt install git build-essential
build-essential contains all the required tools to compile C code on Linux.
You may also choose to use the
clang compiler instead of
gcc, which will give
more similar error messages to what we use at Codam. To do so, install the
sudo apt install clang lldb
If your makefile uses the
$(CC) variable instead of calling
directly, you can choose which compiler to use by setting the
variable. See my Makefile tutorial for details.
In some cases, the Linux code and macOS code need to be different. For this you
can use the
#ifdef statement. For example, if you want
PATH_MAX you need to
include it like this:
#include <ft_printf.h> #include <libft.h> #ifdef __linux__ # include <linux/limits.h> #else # include <limits.h> #endif #include <unistd.h> #include "env.h" #include "builtin.h"
Articles from blogs I follow
My favorite operating system is Plan 9 from Bell Labs. The simplicity and cohesive design throughout really stands out. In my opinion, Plan 9 is much, much better than any other operating system I’ve used, and I’ve used a lot of operating systems. Plan 9 is …via Blogs on Sourcehut 2020-05-11
Tim Bray’s excellent “Bye Amazon” post inspired me to take this article off of my backlog, where it has been sitting for a few weeks. I applaud Tim for stepping down from a company that has demonstrated itself incompatible with his sense of right and wrong, …via Drew DeVault's Blog 2020-05-05
What a response! I want to start with an enormous thank you to the thousands of Go developers who participated in this year’s survey. For 2019, we saw 10,975 responses, nearly twice as many as last year! On behalf of the rest of the team, I …via The Go Programming Language Blog 2020-04-20
Generated by openring