It's a very good season to check-in birds nesting on the cliffs of Muriwai Beach.
A lot of gannets have already hatched chicks.
We're lucky enough to see the whole scene of two gannets mating.
BTW, at the ledge of the cliffs below, there are around 20+ white-fronted terns inhabited, a few chicks included. I never found them before. It's probably because they only present in a short period of time here.
A **telescope** is highly recommended.
Underlying concepts: overlay network, IPIP, NAT, NIC, interrupt & softirq (Linux handling packets).
Useful tools: tcpdump, hping3, bcc, cadvisor, perf record.
Lesson Learned: know the full path inside the network and diagnose each hop.
Read this link, you'll get an overview of the cryptography.
* Three Algorithms: Secret Key Cryptography v/s Public Key Cryptography v/s Hash Functions.
* Key Length matters
* Trust Models: PGP, Kerberos, Certificates.
* Some more algorithms: DH Key Exchange, DES, PGP, IPSec, SSL & TLS, ECC, AES, etc.
* Some basic math: XOR, modulo, Entropy.
1. MarkSthFun is a monolithic app, hosting in a single repo. It'll be deployed as a web app, a worker app, a blog app, etc.
2. Sys dependencies are explicitly specified in ansible/dockerfile. App dependencies are specified in pyproject.toml.
3. Use .env widely. Terraform and ansible shares the same .env file. Docker-compose reads envvars from env_files. Flask reads envvars by `load_dotenv(find_dotenv())`. In production, /var/www/shire/shared/.env contains all envvars app needs.
4. Backing services are merely some envvars for each service.
5. Deploy code in a capistrano-style convention directory.
6. No containers, just processes.
7. Applications are bound to $PORT.
8. Terraform/Ansible provision and setup servers quickly by server roles. A new server will be quickly added to the server pool.
9. Graceful shutdown (gunicorn)
10. Dev env: local docker-compose. Staging env: heroku. Prod env: digitalocean.
11. For troubleshooting, just tail -f.
12. Admin process: poetry run flask shell.
There are two birds watching sheds in the park. We observed pukekos and oystercatchers mating, both having males riding on females.
You'll have a high chance to see birds from South Island in spring/summer, such as oystercatchers, wrybills.
Ansistrano comes from Ansible + Capistrano. I made similar stuff, fapistrano, a Fabric-based Capistrano Python-clone two years ago, but ansistrano is much better by leveraging Ansible, which has larger community and ecosystem.
MarkSthFun manages hosts by Ansible.
* It gets a list of hosts by a dynamic inventory python script, an unmodified version of contrib/inventory/digital_ocean.py.
* Host groups are defined as DigitalOcean tags.
* Ansible-galaxy and ansible-console are heavily used on a daily basis.
MultiTasking war rock monitoring slack-alternative switch json NataliePortman scifi horro prometheus guitar alien tetris zombie comedy security arcade hiking history time drama network bbc #iLoveWikipedia open-source golang chatops pop rock dns templating infrastructure authentication starwar jpop bookmark deployment algorithm novel runningman fantasy cs fiction mango docker 陈凯歌 marksthfun-cost 烂尾剧 WillSmith horror TaylorSwift beach pop 导演 chef Queen database dramas language wellington collaborative poprock linux zoombie python r&b reggae cli cycling puzzle ansible religion pubsub electropop NewZealand nintendo programming cryptography marksthfun-stack KeanuReeves 演员 cyberpunk crime web devops vpn capistrano kubernetes container live testing german