Map [1]
| Operation | Time Complexity |
|---|---|
| Access | O(log n) |
| Search | O(log n) |
| Insertion | O(n) for <= 32 elements, O(log n) for > 32 elements [2] |
| Deletion | O(n) for <= 32 elements, O(log n) for > 32 elements |
| #!/bin/sh | |
| FILES="${@}" | |
| USERTAG="@KarlVoit" | |
| no_files_found() | |
| { | |
| echo "No files found. Please do give me some Org-mode files as parameter" >&2 | |
| exit 1 | |
| } |
When writing a string of multiple utility classes, always do so in an order with meaning. The "Concentric CSS" approach works well with utility classes (i.e,. 1. positioning/visibility 2. box model 3. borders 4. backgrounds 5. typography 6. other visual adjustments). Once you establish a familiar pattern of ordering, parsing through long strings of utility classes will become much, much faster so a little more effort up front goes a long way!
Always use fewer utility classes when possible. For example, use mx-2 instead of ml-2 mr-2 and don't be afraid to use the simpler p-4 lg:pt-8 instead of the longer, more complicated pt-4 lg:pt-8 pr-4 pb-4 pl-4.
Prefix all utility classes that will only apply at a certain breakpoint with that breakpoint's prefix. For example, use block lg:flex lg:flex-col lg:justify-center instead of block lg:flex flex-col justify-center to make it very clear that the flexbox utilities are only applicable at the
| * Blogs | |
| ** neeasade | |
| https://notes.neeasade.net/rss.xml | |
| ** yiufung | |
| https://yiufung.net/index.xml | |
| ** alanthird | |
| https://github.com/alanthird/idiocy.org/commits/master.atom | |
| ** codesections | |
| https://www.codesections.com/rss.xml | |
| ** xenodium |
| #!/bin/sh | |
| # Set up Rails app. Run this script immediately after cloning the codebase. | |
| # Exit if any subcommand fails | |
| set -e | |
| # Copy over configs | |
| if ! [ -f .env ]; then | |
| cp .sample.env .env |
CODE!
npm install -g diff-so-fancy).gitconfig file:[core]
pager = diff-so-fancy | less --tabs=1,5 -R
.gitconfig or not.[color "diff"]
meta = "yellow bold"
The standard way of understanding the HTTP protocol is via the request reply pattern. Each HTTP transaction consists of a finitely bounded HTTP request and a finitely bounded HTTP response.
However it's also possible for both parts of an HTTP 1.1 transaction to stream their possibly infinitely bounded data. The advantages is that the sender can send data that is beyond the sender's memory limit, and the receiver can act on
| #encoding:UTF-8 | |
| #!/usr/bin/env ruby | |
| # This regex helps with copying failed entries: (.*$)(?=\n.*<title>405 Not Allowed</title>) | |
| # You also need to remove surrounding quotes from failed entries and replace \" with " and \\ with \ | |
| require 'rubygems' | |
| require 'csv' | |
| require 'httparty' | |
| require 'json' |