<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://fangpenlin.com/posts/2012/08/26/good-logging-practice-in-python/</loc>
<lastmod>2012-08-26T14:45:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2013/06/07/zero-downtime-internet-process-migration-in-same-host/</loc>
<lastmod>2013-06-07T02:03:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2013/09/19/fall-in-love-with-continuous-testing-and-integration-travis-ci/</loc>
<lastmod>2013-09-19T07:55:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2013/09/30/keep-a-readable-git-history/</loc>
<lastmod>2013-09-30T04:29:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2013/10/07/technical-debts/</loc>
<lastmod>2013-10-07T06:43:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2014/02/05/auto-post-commit-pep8-correction/</loc>
<lastmod>2014-02-05T09:29:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2014/08/11/building-docker-image-with-ansible/</loc>
<lastmod>2014-08-11T03:22:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2014/11/13/provision-with-ansible-from-inside-docker/</loc>
<lastmod>2014-11-13T03:11:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2014/11/25/running-docker-with-aws-elastic-beanstalk/</loc>
<lastmod>2014-11-25T21:42:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2015/05/25/anonymous-computing-peer-to-peer-encryption-with-ember-js/</loc>
<lastmod>2015-05-25T19:50:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2016/03/06/mvvm-with-reactivecocoa-4-why-and-how-part-1/</loc>
<lastmod>2016-03-06T21:47:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2016/04/29/uicollectionview-invalid-number-of-items-crash-issue/</loc>
<lastmod>2016-04-29T05:35:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2016/04/29/how-uipushbehavior-instantaneous-mode-works/</loc>
<lastmod>2016-04-29T06:15:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2018/12/01/boost-productivity-with-showcase-driven-development-for-mobile-or-frontend-apps/</loc>
<lastmod>2018-12-01T10:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2019/02/04/syntax-highlight-command-line-tool/</loc>
<lastmod>2019-02-04T10:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2019/08/25/boost-10x-ui-development-productivity-with-sdd/</loc>
<lastmod>2019-08-25T10:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2019/09/03/how-i-learn-programming-by-building-an-mmorpg-from-the-ground-up-7-times/</loc>
<lastmod>2019-09-03T08:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2019/09/18/ninja-speed-vim-like-debugging-with-ergonomic-keyboard-and-trackpad/</loc>
<lastmod>2019-09-18T08:30:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2019/10/07/elliptic-curve-cryptography-explained/</loc>
<lastmod>2019-10-07T08:30:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2021/11/11/why-build-a-messenger-app-only-for-sending-to-yourself/</loc>
<lastmod>2021-11-11T16:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2022/01/20/a-repairable-future/</loc>
<lastmod>2022-01-20T04:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2022/06/27/why-and-how-i-build-and-maintain-multiple-products-simultaneously/</loc>
<lastmod>2022-06-27T15:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2023/03/01/why-I-built-a-self-serving-advertisement-solution/</loc>
<lastmod>2023-03-01T15:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2024/01/14/high-speed-usb4-mesh-network/</loc>
<lastmod>2024-01-14T15:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2024/04/07/how-i-discovered-a-9-point-8-critical-security-vulnerability-in-zeromq-with-mostly-pure-luck/</loc>
<lastmod>2024-04-07T04:19:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2024/12/11/cading-and-3d-printing-like-a-software-engineer-part1/</loc>
<lastmod>2024-12-11T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2024/12/30/my-beancount-books-are-95-percent-automatic/</loc>
<lastmod>2024-12-30T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/01/17/my-rust-esp32-project-failure/</loc>
<lastmod>2025-01-17T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/02/06/maze-how-i-would-build-agi/</loc>
<lastmod>2025-02-06T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/02/18/maze-my-ai-models-are-finally-evolving/</loc>
<lastmod>2025-02-18T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/03/01/nvidia-gpu-on-bare-metal-nixos-k8s-explained/</loc>
<lastmod>2025-03-01T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/06/03/i-built-ai-gen-video-detection-model-and-browser-extension-in-a-month/</loc>
<lastmod>2025-06-03T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/06/11/two-amd-7900xtx-gpus-tinygrad-based-training-workstation-peer-to-peer-pcie-communication/</loc>
<lastmod>2025-06-11T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/07/30/open-source-cakelens-v5/</loc>
<lastmod>2025-07-30T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/08/18/marketplace-my-first-attempt-at-training-without-backprop-on-gpu-efficiently/</loc>
<lastmod>2025-08-18T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/09/02/marketplace-v2-is-all-you-need-a-training-algorithm-on-par-with-backprop/</loc>
<lastmod>2025-09-02T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/09/09/continual-learning-with-marketplace-model-learns-new-data-with-mostly-inference/</loc>
<lastmod>2025-09-09T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2025/11/26/tinyrack-a-3d-printable-modular-rack-for-mini-server/</loc>
<lastmod>2025-11-26T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2026/01/12/manufacturing-as-code-is-the-future/</loc>
<lastmod>2026-01-12T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/posts/2026/03/19/no-llm-is-not-going-to-replace-software-engineers-heres-why/</loc>
<lastmod>2026-03-19T07:00:00+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/about/</loc>
</url>
<url>
<loc>https://fangpenlin.com/books/</loc>
</url>
<url>
<loc>https://fangpenlin.com/</loc>
</url>
<url>
<loc>https://fangpenlin.com/thanks/</loc>
</url>
<url>
<loc>https://fangpenlin.com/works/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page2/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page3/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page4/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page5/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page6/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page7/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page8/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page9/</loc>
</url>
<url>
<loc>https://fangpenlin.com/page10/</loc>
</url>
<url>
<loc>https://fangpenlin.com/legacy-stuff/balanced-payments/presentation.htm</loc>
<lastmod>2026-03-19T07:15:03+00:00</lastmod>
</url>
<url>
<loc>https://fangpenlin.com/legacy-stuff/balanced-payments/presentation_push.htm</loc>
<lastmod>2026-03-19T07:15:03+00:00</lastmod>
</url>
</urlset>
