- Differential backups
- Deduplication
- Encrypted ❤️
- Backup cleaning
- Less than 1€ a month
| So you want to set up remix in cloud run huh? It's pretty simple but i'm going to assume you can figure out most of the GCP UI on your own. | |
| Cloud Run: | |
| Step 1: Create a new service and take note of the service ID | |
| Step 2: Allow all traffic in the /triggers tab | |
| Cloud Build: | |
| Step 1: Set up a Cloud Build trigger on your repo | |
| Step 2: Point the configuration to "cloud build configuration file" at the root of your project | |
| Step 3: Add the following to the substitution variables (so you can keep it safe): |
| #!/usr/bin/awk -f | |
| # This program is a copy of guff, a plot device. https://github.com/silentbicycle/guff | |
| # My copy here is written in awk instead of C, has no compelling benefit. | |
| # Public domain. @thingskatedid | |
| # Run as awk -v x=xyz ... or env variables for stuff? | |
| # Assumptions: the data is evenly spaced along the x-axis | |
| # TODO: moving average |
This is a compiled list of falsehoods programmers tend to believe about working with time.
Don't re-invent a date time library yourself. If you think you understand everything about time, you're probably doing it wrong.
- There are always 24 hours in a day.
- February is always 28 days long.
- Any 24-hour period will always begin and end in the same day (or week, or month).
| { pkgs, lib, config, ... }: | |
| { | |
| networking = { | |
| firewall.allowedTCPPorts = [ | |
| 3000 # grafana | |
| 9090 # prometheus | |
| 9093 # alertmanager | |
| ]; | |
| useDHCP = true; | |
| }; |
The following is a list of Redux resources, as described to me by Dan Abramov.
"Real World Redux" talk
Reselect
Sunil Pai is building an Om Next clone in vanilla JS
Service Worker - offline support for the web
- Service Worker - Revolution of the Web Platform
- The Service Worker is Coming - Look Busy (vid)
- Service Workers: Dynamic Responsive Images using WebP Images
- Is Service Worker ready?
Progressive apps - high-res icon, splash screen, no URL bar, etc.
All of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout*. This is also called reflow or layout thrashing, and is common performance bottleneck.
Generally, all APIs that synchronously provide layout metrics will trigger forced reflow / layout. Read on for additional cases and details.
elem.offsetLeft,elem.offsetTop,elem.offsetWidth,elem.offsetHeight,elem.offsetParent
| function haskell_info() { | |
| cabal_files=(*.cabal(N)) | |
| if [ $#cabal_files -gt 0 ]; then | |
| if [ -f cabal.sandbox.config ]; then | |
| cabal_sandbox_info | |
| elif [ -f stack.yaml ]; then | |
| stack_info | |
| else | |
| echo "%{$fg[red]%}no stack/sandbox%{$reset_color%}" | |
| fi |