The Raspberry Pi is a great device for dev side-projects, such as a home media station, an IoT device, or a local server. Here are some of my go-to configurations when setting one up.
Spelling and grammar are very important. However, when in a rush, we tend to neglect these important aspects. Search engines and humans readers usually don’t appreciate content that includes spelling or grammatical errors.
There are many methods to communicating between processes. Many methods work best when only using a single programming language, while others require custom packets and parsing.
Simplicity is key and Redis is an efficient solution. Redis is an open-source in-memory database project implementing a distributed, in-memory key-value store.
Package management is hard. Sometimes in Python package development, your local (development) environment may behave a little differently than a deployment target. Below is a simple method I use to replicate a clean environment and test Python package installs and tests.
git submodule foreach --recursive git reset --hard This command recursively resets all submodules in a git project. This is especially useful for projects with submodules (and maybe even submodules within submodules) when you want to reset your working copy to a completely clean state.
python -m http.server 8000 This will serve index.html in the current working directory.
Sometimes Travis CI builds fail due to sporadic timeouts, network errors, etc. While these non-code errors can be quite annoying, Travis CI has a handy Restart build for when these situations occur, but only users with admin privileges have access to this feature.