Contact

Do you have a question or do you need to fix an infrastructure issue?
Feel free to drop me a message kyanh@mydomain.

My domain is viettug.org.

Active projects

             dailyops []          : Tips and Tricks (linux,devops, tech,... on telegram channel)
                  w2w []          : Why people move/use this or that
    bash-coding-style [bash]      : A Bash coding style, which you can also use...
                 gk8s [golang]    : Switch between k8s clusters, designed for teamwork and scripting purpose
              genvsub [golang]    : A better alternative to GNU envsubst, designed for k8s stuff :)
               pacapt [bash]      : An ArchLinux's pacman-like wrapper for many package managers
 google-group-crawler [bash]      : Get (almost) original messages from google group archives.
                                  : Your data is yours.
                 golo [golang]    : Prevents a program from running more than one copy at a time,
                                  : Useful when starting your program with cron.

Educational purpose

                  ido [golang]    : executes your shell command provided as its input, but it
                                  : may wait for you to confirm if there is some potential
                                  : risky pattern in your arguments
              dusybox [dlang]     : I'm learning Dlang :)
               btsync [bash]      : A Bash binding to interactive with your btsync installation (version <= 1.4)
               git_xy [bash]      : Solve the xyproblem dealing with git submodule, git subtree :)
                jaloc [mindset]   : Just another laptop on the cloud (WIP)
k8s-vbox-the-hard-way [bash, ruby]: Bring up k8s cluster using virtualbox, the hard way
       cloudflare_api [bash]      : A Bash binding of Cloudflare API :), still working (with bugs!) since 2015
               bocker [bash]      : Write Dockerfile completely in Bash/Bourne. Extensible and simple

Problems and challenges

* 2023: Build a small garden in Dresden
* 2022: Planning and solving the finance issue
* 2021: Ops, survive covid time?
* 2020: Build my own (jamming) music band The long shorts band
* 2020: Minimal template engine atop kustomize (template-free YAML files for k8s)
* 2020: Minimal yaml parser as part of an alternative to Mozilla sops tool
        (https://github.com/mozilla/sops)
* 2020: 700-line (Bash, Golang) tool as an alternative to fluxcd
* 2019: k8s the hard way atop VirtualBox https://github.com/icy/k8s-vbox-the-hard-way
* 2018: Safely move 1 million S3 objects between aws regions when s3cmd couldn't help.
* 2017: Move Travis projects to Jenkins/Groovy2
* 2015: Re-use Dockerfile by writing them in Bash bocker
* 2015: Simple Linux-based job queue system to handle tasks instructed by Telegram bots
* 2013: Build my own Linux distribution https://github.com/theslinux/
* 2006-2012: Winefish LaTeX Editor https://github.com/viettug/winefish
* 2006: Linear Weingarten surfaces of Bryant type and Björling problem (master thesis, in Vietnamese)