how2 / h2.io is just a collection of tools, guides, personal projects and interests in the form of a quick web reference.
It’s just what’s catching our eye, what’s interesting to us at one time or another… it’s really just out preference but it’s informed by many years of battle.
who are we
Ee started working with linux prior to y2k, worked on our own companies for 20+ years, on various web/linux projects, worked for some corporate clients for a while …
Our projects and interests might be evolving but some of the tools we use seem to follow us around … this is their story.
what we use / why we use it
We mainly prefere open source because we like the freedom.
It’s also nice to avoid the “polish” of the propriatary software.
If it can’t be helped we use whatever proprietary tools we must. Some are really nice, most are not.
the tools
The tools we use every day are really important … we might as well learn to use them well. We test new tools every day, some we use for a while but some we use all the time.
OS: linux
Almost any linux will do … you can always switch to another one with very little trouble.
Ubuntu, NixOS, Gentoo, Arch, Alpine … you can use one or more at the same time.
cli + terminal emulators & multiplexors
You use the command line interface (cli) to do almost anything in linux.
It might seem difficult or quaint at first but it’s actually the best thing ever :) You can automate the cli, it’s fast, you can easily do it remotely and it’s as close to the actual problem as possible.
Cli essential tools: neovim, screen/tmux/zellij, mc, grep, find, sed, … Terminal emulators: alacritty, wezterm, kitty, ghostty
file editor: neovim
qed (quick editor, 1967) -> ed (simplified) / sed (stream editor)-> ex (extended) -> vi (visual) -> vim (improved) -> neovim
Essential for editing files to hard core programming … it’s a must!
Nothing else comes close (you can use other editors but just learn this as well … you’ll never stop learning)
version control
git remembers everything for you so you don’t have to Very usefull in programming teams … also essential just yor yourself
network tools
ngrep, tcpdump, wireshark, host, dig, tracert
security
When using linux you have allot of control over your system but so does a hacker if he can gain access
To protect your systems you might want to use: ufw, opensnitch, aide, auditd, lynis, snoopy, chkrootkit & rkhunter, falco
For backup you might use: timeshift or …
For vpn: tailscale, zerotier, wireguard, …
containers
You can and should isolate various resources for a number of reasons. Tools: docker/podman, kubernetes(k3s, k8s, k9s, k3d, …), containerd, …
frontend / backend (for web)
For services needed to be accessed in a browser there are quite allot of options … too many really! Some of the ones we use:
the cloud
It might seem nice to forget about the infrastructure and concentrate on the software but nice it is not. It is free or cheap to start using it but it quiclky becomes a huge expense. You don’t have to handle your own servers but you do have to handle “cloud” issues … and huge cost issues! Half the time you struggle to move into the cloud, another half you struggle to migrate to some other magical cloud … The third half you strugle to get out of the cloud because 10x the cost at 1/3rd the performance really isn’t what you wanted.
what else ?!
We’ll just add to this page so it’s easy to see everything at a glance and also search it. There is allot more but we try to keep it as compact as possible.