# README

## analytics

[convert json perline to panads data frame](https://til.yulrizka.com/analytics/convert-json-perline-to-panads-data-frame)\
[hierarchical data format](https://til.yulrizka.com/analytics/hierarchical-data-format)\
[pandas format custom date in data frame](https://til.yulrizka.com/analytics/pandas-format-custom-date-in-data-frame)

## bash

[bash forloop](https://til.yulrizka.com/bash/bash-forloop)\
[parameter expansion](https://til.yulrizka.com/bash/parameter-expansion)\
[prompt confirmation in bash](https://til.yulrizka.com/bash/prompt-confirmation-in-bash)

## db

[disabling foreign key when importing dump](https://til.yulrizka.com/db/disabling-foreign-key-when-importing-dump)\
[postgres add object to jsonb array from the same column](https://til.yulrizka.com/db/postgres-add-object-to-jsonb-array-from-the-same-column)\
[postgres audit log trigger](https://til.yulrizka.com/db/postgres-audit-log-trigger)\
[postgres naming trigger](https://til.yulrizka.com/db/postgres-naming-trigger)\
[postgres rename enum](https://til.yulrizka.com/db/postgres-rename-enum)\
[postgres reset sequence after import](https://til.yulrizka.com/db/postgres-reset-sequence-after-import)\
[postgres skip table from restore](https://til.yulrizka.com/db/postgres-skip-table-from-restore)\
[set a column with value from different table](https://til.yulrizka.com/db/set-a-column-with-value-from-different-table)

## dgraph

[dgraph docker compose whitelist ip](https://til.yulrizka.com/dgraph/dgraph-docker-compose-whitelist-ip)

## docker

[docker compose make sure postgres is ready before starting other service](https://til.yulrizka.com/docker/docker-compose-make-sure-postgres-is-ready-before-starting-other-service)

## fish

[edit last command in editor](https://til.yulrizka.com/fish/edit-last-command-in-editor)

## git

[checkout last branch](https://til.yulrizka.com/git/checkout-last-branch)\
[different between two dots and three](https://til.yulrizka.com/git/different-between-two-dots-and-three)\
[force fail commit on master](https://til.yulrizka.com/git/force-fail-commit-on-master)\
[git finish helper script delete current branch and update master](https://til.yulrizka.com/git/git-finish-helper-script-delete-current-branch-and-update-master)\
[git mergetool and diff with p4merge](https://til.yulrizka.com/git/git-mergetool-and-diff-with-p4merge)\
[global gitignore file](https://til.yulrizka.com/git/global-gitignore-file)\
[intellij as diff and mergetool](https://til.yulrizka.com/git/intellij-as-diff-and-mergetool)\
[push only current branch](https://til.yulrizka.com/git/push-only-current-branch)\
[reset email multiple commit](https://til.yulrizka.com/git/reset-email-multiple-commit)\
[sign commit with pgp](https://til.yulrizka.com/git/sign-commit-with-pgp)\
[worktree switching branch without stash](https://til.yulrizka.com/git/worktree-switching-branch-without-stash)

## go

[default math.rand.source is thread save while rand.new source is not](https://til.yulrizka.com/go/default-math.rand.source-is-thread-save-while-rand.new-source-is-not)\
[deploying go to a vpn ubuntu server with github and ssl](https://til.yulrizka.com/go/deploying-go-to-a-vpn-ubuntu-server-with-github-and-ssl)

## k8s

[copy file to pod](https://til.yulrizka.com/k8s/copy-file-to-pod)\
[getting cpu and memory usage for container](https://til.yulrizka.com/k8s/getting-cpu-and-memory-usage-for-container)\
[how cert manager and letsencrypt challenge works](https://til.yulrizka.com/k8s/how-cert-manager-and-letsencrypt-challenge-works)\
[kubernetes resource short name](https://til.yulrizka.com/k8s/kubernetes-resource-short-name)\
[scale deployment](https://til.yulrizka.com/k8s/scale-deployment)\
[view secret](https://til.yulrizka.com/k8s/view-secret)

## linux

[boot zfs root filesystem on grub](https://til.yulrizka.com/linux/boot-zfs-root-filesystem-on-grub)\
[clearing up swap space](https://til.yulrizka.com/linux/clearing-up-swap-space)\
[connect bluetooth device from cli](https://til.yulrizka.com/linux/connect-bluetooth-device-from-cli)\
[free and vmstat command](https://til.yulrizka.com/linux/free-and-vmstat-command)\
[get full argument from a process](https://til.yulrizka.com/linux/get-full-argument-from-a-process)\
[merge multiple pdf into a single file](https://til.yulrizka.com/linux/merge-multiple-pdf-into-a-single-file)\
[removing old kernel](https://til.yulrizka.com/linux/removing-old-kernel)\
[symbolic vs hard link](https://til.yulrizka.com/linux/symbolic-vs-hard-link)\
[zfs auto snapshot](https://til.yulrizka.com/linux/zfs-auto-snapshot)\
[zfs external backup drive with snapshot and encryption](https://til.yulrizka.com/linux/zfs-external-backup-drive-with-snapshot-and-encryption)

## net

[dnssec](https://til.yulrizka.com/net/dnssec)\
[html form submit to different action depending on properties](https://til.yulrizka.com/net/html-form-submit-to-different-action-depending-on-properties)\
[ldap list users](https://til.yulrizka.com/net/ldap-list-users)

## osx

[checksum a file from a url](https://til.yulrizka.com/osx/checksum-a-file-from-a-url)\
[cluster ssh in iterm2 with i2cssh](https://til.yulrizka.com/osx/cluster-ssh-in-iterm2-with-i2cssh)\
[list open port](https://til.yulrizka.com/osx/list-open-port)\
[manage clipboard easily with jumpcut](https://til.yulrizka.com/osx/manage-clipboard-easily-with-jumpcut)\
[pipe output to clipboard with pbcopy and pbpaste](https://til.yulrizka.com/osx/pipe-output-to-clipboard-with-pbcopy-and-pbpaste)\
[show hidden file](https://til.yulrizka.com/osx/show-hidden-file)\
[sign application with self certificate](https://til.yulrizka.com/osx/sign-application-with-self-certificate)\
[starting program on startup with login items](https://til.yulrizka.com/osx/starting-program-on-startup-with-login-items)

## python

[count frequency with lambda](https://til.yulrizka.com/python/count-frequency-with-lambda)\
[dijkstra algorithm shortest path](https://til.yulrizka.com/python/dijkstra-algorithm-shortest-path)\
[double slash arithmetic operator](https://til.yulrizka.com/python/double-slash-arithmetic-operator)\
[min and max of dict values](https://til.yulrizka.com/python/min-and-max-of-dict-values)\
[python3 match case](https://til.yulrizka.com/python/python3-match-case)\
[reduce and opeator](https://til.yulrizka.com/python/reduce-and-opeator)

## react

[react named export vs default export](https://til.yulrizka.com/react/react-named-export-vs-default-export)\
[react useeffect](https://til.yulrizka.com/react/react-useeffect)\
[react.useref](https://til.yulrizka.com/react/react.useref)

## unix

[bulk renaming multiple file](https://til.yulrizka.com/unix/bulk-renaming-multiple-file)\
[convert pdf to text using ocr](https://til.yulrizka.com/unix/convert-pdf-to-text-using-ocr)\
[diff output of 2 command](https://til.yulrizka.com/unix/diff-output-of-2-command)\
[encryption with gpg](https://til.yulrizka.com/unix/encryption-with-gpg)\
[extend letsencrypt certificate with dns challenge](https://til.yulrizka.com/unix/extend-letsencrypt-certificate-with-dns-challenge)\
[ffmpeg monitor and restart stream when it hung or stall](https://til.yulrizka.com/unix/ffmpeg-monitor-and-restart-stream-when-it-hung-or-stall)\
[file size older than x days](https://til.yulrizka.com/unix/file-size-older-than-x-days)\
[filtering json with jq](https://til.yulrizka.com/unix/filtering-json-with-jq)\
[find lines that matches on 2 different sorted file](https://til.yulrizka.com/unix/find-lines-that-matches-on-2-different-sorted-file)\
[find out what is using swap](https://til.yulrizka.com/unix/find-out-what-is-using-swap)\
[fish environment variables from 1password](https://til.yulrizka.com/unix/fish-environment-variables-from-1password)\
[fix gpg warning unsafe permissions on homedir](https://til.yulrizka.com/unix/fix-gpg-warning-unsafe-permissions-on-homedir)\
[formatting or parse json in command line](https://til.yulrizka.com/unix/formatting-or-parse-json-in-command-line)\
[get all line except n last one](https://til.yulrizka.com/unix/get-all-line-except-n-last-one)\
[grep print only matched](https://til.yulrizka.com/unix/grep-print-only-matched)\
[grep using input file as pattern to search other file](https://til.yulrizka.com/unix/grep-using-input-file-as-pattern-to-search-other-file)\
[jq counting lenght of an array](https://til.yulrizka.com/unix/jq-counting-lenght-of-an-array)\
[jq extracting properties to arrays from json row line](https://til.yulrizka.com/unix/jq-extracting-properties-to-arrays-from-json-row-line)\
[keep n recent item in folder](https://til.yulrizka.com/unix/keep-n-recent-item-in-folder)\
[open last command in the editor with fc](https://til.yulrizka.com/unix/open-last-command-in-the-editor-with-fc)\
[parsing epoch timestamp to date](https://til.yulrizka.com/unix/parsing-epoch-timestamp-to-date)\
[pbcopy alternative for copying to clipboard](https://til.yulrizka.com/unix/pbcopy-alternative-for-copying-to-clipboard)\
[process pipe operator](https://til.yulrizka.com/unix/process-pipe-operator)\
[record a web stream to youtube](https://til.yulrizka.com/unix/record-a-web-stream-to-youtube)\
[regex for validating password](https://til.yulrizka.com/unix/regex-for-validating-password)\
[rename tmux window](https://til.yulrizka.com/unix/rename-tmux-window)\
[repeat content of text x time](https://til.yulrizka.com/unix/repeat-content-of-text-x-time)\
[replacing last command and execute it](https://til.yulrizka.com/unix/replacing-last-command-and-execute-it)\
[reusing last command argument](https://til.yulrizka.com/unix/reusing-last-command-argument)\
[sending curl post with file](https://til.yulrizka.com/unix/sending-curl-post-with-file)\
[send slack message from command line](https://til.yulrizka.com/unix/send-slack-message-from-command-line)\
[sort file inline](https://til.yulrizka.com/unix/sort-file-inline)\
[specify compression level in tar gzip](https://til.yulrizka.com/unix/specify-compression-level-in-tar-gzip)\
[zsh ctrl p same behavior as up arrow](https://til.yulrizka.com/unix/zsh-ctrl-p-same-behavior-as-up-arrow)

## vim

[paste yanked text on command buffer](https://til.yulrizka.com/vim/paste-yanked-text-on-command-buffer)

## web

[this article is published to dev to with github action](https://til.yulrizka.com/web/this-article-is-published-to-dev-to-with-github-action)
