# Sitemap — https://timothyjordan.com

Agent-friendly index of every page on the site. Each page also has a `.md` mirror reachable by replacing `.html` with `.md` (or appending `.md` to a directory URL).

## Home

- [/](/)
- [/glossary/](/glossary/)

## Resume

- [/resume/](/resume/)

## Blog

- [/blog/](/blog/)
- [/blog/2014/06/03/Hello-World.html](/blog/2014/06/03/Hello-World.html)
- [/blog/2014/09/17/Messaging-Android-Wear.html](/blog/2014/09/17/Messaging-Android-Wear.html)
- [/blog/2015/02/18/Android-Wear-Depth-Flexibility.html](/blog/2015/02/18/Android-Wear-Depth-Flexibility.html)
- [/blog/2015/11/07/DevShow-001.html](/blog/2015/11/07/DevShow-001.html)
- [/blog/2015/11/13/DevShow-002.html](/blog/2015/11/13/DevShow-002.html)
- [/blog/2015/11/21/DevShow-003.html](/blog/2015/11/21/DevShow-003.html)
- [/blog/2015/12/04/DevShow-004.html](/blog/2015/12/04/DevShow-004.html)
- [/blog/2015/12/11/DevShow-005.html](/blog/2015/12/11/DevShow-005.html)
- [/blog/2015/12/18/DevShow-006.html](/blog/2015/12/18/DevShow-006.html)
- [/blog/2016/01/16/DevShow-009.html](/blog/2016/01/16/DevShow-009.html)
- [/blog/2016/01/22/DevShow-010.html](/blog/2016/01/22/DevShow-010.html)
- [/blog/2016/02/04/DevShow-011.html](/blog/2016/02/04/DevShow-011.html)
- [/blog/2016/02/05/DevShow-012.html](/blog/2016/02/05/DevShow-012.html)
- [/blog/2016/02/11/ubiquity-dev-summit.html](/blog/2016/02/11/ubiquity-dev-summit.html)
- [/blog/2016/02/22/DevShow-014.html](/blog/2016/02/22/DevShow-014.html)
- [/blog/2016/02/29/DevShow-015.html](/blog/2016/02/29/DevShow-015.html)
- [/blog/2016/03/08/DevShow-016.html](/blog/2016/03/08/DevShow-016.html)
- [/blog/2016/03/12/DevShow-017.html](/blog/2016/03/12/DevShow-017.html)
- [/blog/2016/03/18/DevShow-018.html](/blog/2016/03/18/DevShow-018.html)
- [/blog/2016/03/25/DevShow-019.html](/blog/2016/03/25/DevShow-019.html)
- [/blog/2016/04/05/DevShow-020.html](/blog/2016/04/05/DevShow-020.html)
- [/blog/2016/04/08/DevShow-021.html](/blog/2016/04/08/DevShow-021.html)
- [/blog/2016/04/16/DevShow-022.html](/blog/2016/04/16/DevShow-022.html)
- [/blog/2016/04/22/DevShow-023.html](/blog/2016/04/22/DevShow-023.html)
- [/blog/2016/05/02/DevShow-024.html](/blog/2016/05/02/DevShow-024.html)
- [/blog/2016/05/06/DevShow-025.html](/blog/2016/05/06/DevShow-025.html)
- [/blog/2016/05/13/DevShow-026.html](/blog/2016/05/13/DevShow-026.html)
- [/blog/2016/06/01/build-vr-rig.html](/blog/2016/06/01/build-vr-rig.html)
- [/blog/2016/06/14/DevShow-028.html](/blog/2016/06/14/DevShow-028.html)
- [/blog/2016/06/17/DevShow-029.html](/blog/2016/06/17/DevShow-029.html)
- [/blog/2016/06/29/DevShow-030.html](/blog/2016/06/29/DevShow-030.html)
- [/blog/2016/07/18/DevShow-033.html](/blog/2016/07/18/DevShow-033.html)
- [/blog/2016/08/05/DevShow-035.html](/blog/2016/08/05/DevShow-035.html)
- [/blog/2016/08/12/DevShow-036.html](/blog/2016/08/12/DevShow-036.html)
- [/blog/2016/09/03/DevShow-038.html](/blog/2016/09/03/DevShow-038.html)
- [/blog/2016/09/09/DevShow-039.html](/blog/2016/09/09/DevShow-039.html)
- [/blog/2016/09/19/DevShow-040.html](/blog/2016/09/19/DevShow-040.html)
- [/blog/2016/09/27/DevShow-041.html](/blog/2016/09/27/DevShow-041.html)
- [/blog/2016/10/03/DevShow-042.html](/blog/2016/10/03/DevShow-042.html)
- [/blog/2016/10/11/DevShow-043.html](/blog/2016/10/11/DevShow-043.html)
- [/blog/2016/11/01/DevShow-046.html](/blog/2016/11/01/DevShow-046.html)
- [/blog/2016/11/15/DevShow-048.html](/blog/2016/11/15/DevShow-048.html)
- [/blog/2016/11/29/DevShow-049.html](/blog/2016/11/29/DevShow-049.html)
- [/blog/2017/01/20/DevShow-054.html](/blog/2017/01/20/DevShow-054.html)
- [/blog/2017/02/01/DevShow-055.html](/blog/2017/02/01/DevShow-055.html)
- [/blog/2017/02/08/DevShow-056.html](/blog/2017/02/08/DevShow-056.html)
- [/blog/2017/02/13/DevShow-057.html](/blog/2017/02/13/DevShow-057.html)
- [/blog/2017/02/22/DevShow-058.html](/blog/2017/02/22/DevShow-058.html)
- [/blog/2017/02/25/DevShow-059.html](/blog/2017/02/25/DevShow-059.html)
- [/blog/2017/03/03/DevShow-060.html](/blog/2017/03/03/DevShow-060.html)
- [/blog/2017/03/11/DevShow-061.html](/blog/2017/03/11/DevShow-061.html)
- [/blog/2017/03/29/DevShow-062.html](/blog/2017/03/29/DevShow-062.html)
- [/blog/2017/04/03/DevShow-063.html](/blog/2017/04/03/DevShow-063.html)
- [/blog/2017/05/09/DevShow-068.html](/blog/2017/05/09/DevShow-068.html)
- [/blog/2017/05/15/DevShow-069.html](/blog/2017/05/15/DevShow-069.html)
- [/blog/2017/06/13/DevShow-073.html](/blog/2017/06/13/DevShow-073.html)
- [/blog/2017/06/21/DevShow-074.html](/blog/2017/06/21/DevShow-074.html)
- [/blog/2017/07/26/DevShow-076.html](/blog/2017/07/26/DevShow-076.html)
- [/blog/2017/08/03/DevShow-077.html](/blog/2017/08/03/DevShow-077.html)
- [/blog/2017/08/11/DevShow-078.html](/blog/2017/08/11/DevShow-078.html)
- [/blog/2017/08/15/DevShow-079.html](/blog/2017/08/15/DevShow-079.html)
- [/blog/2017/09/18/DevShow-081.html](/blog/2017/09/18/DevShow-081.html)
- [/blog/2017/09/28/DevShow-082.html](/blog/2017/09/28/DevShow-082.html)
- [/blog/2017/10/03/DevShow-083.html](/blog/2017/10/03/DevShow-083.html)
- [/blog/2017/10/18/DevShow-084.html](/blog/2017/10/18/DevShow-084.html)
- [/blog/2017/10/31/DevShow-085.html](/blog/2017/10/31/DevShow-085.html)
- [/blog/2017/10/31/DevShow-086.html](/blog/2017/10/31/DevShow-086.html)
- [/blog/2017/11/06/DevShow-087.html](/blog/2017/11/06/DevShow-087.html)
- [/blog/2017/11/15/DevShow-088.html](/blog/2017/11/15/DevShow-088.html)
- [/blog/2017/11/21/DevShow-089.html](/blog/2017/11/21/DevShow-089.html)
- [/blog/2017/11/28/DevShow-090.html](/blog/2017/11/28/DevShow-090.html)
- [/blog/2017/12/05/DevShow-091.html](/blog/2017/12/05/DevShow-091.html)
- [/blog/2017/12/22/DevShow-092.html](/blog/2017/12/22/DevShow-092.html)
- [/blog/2018/01/19/DevShow-093.html](/blog/2018/01/19/DevShow-093.html)
- [/blog/2018/01/19/DevShow-094.html](/blog/2018/01/19/DevShow-094.html)
- [/blog/2018/02/21/DevShow-095.html](/blog/2018/02/21/DevShow-095.html)
- [/blog/2018/02/21/DevShow-096.html](/blog/2018/02/21/DevShow-096.html)
- [/blog/2018/02/22/DevShow-097.html](/blog/2018/02/22/DevShow-097.html)
- [/blog/2018/02/22/DevShow-098.html](/blog/2018/02/22/DevShow-098.html)
- [/blog/2018/02/22/DevShow-099.html](/blog/2018/02/22/DevShow-099.html)
- [/blog/2018/05/18/DevShow-100.html](/blog/2018/05/18/DevShow-100.html)
- [/blog/2018/05/18/DevShow-101.html](/blog/2018/05/18/DevShow-101.html)
- [/blog/2018/05/18/DevShow-102.html](/blog/2018/05/18/DevShow-102.html)
- [/blog/2018/05/18/DevShow-103.html](/blog/2018/05/18/DevShow-103.html)
- [/blog/2018/05/18/DevShow-104.html](/blog/2018/05/18/DevShow-104.html)
- [/blog/2018/05/18/DevShow-105.html](/blog/2018/05/18/DevShow-105.html)
- [/blog/2018/05/18/DevShow-106.html](/blog/2018/05/18/DevShow-106.html)
- [/blog/2018/05/18/DevShow-107.html](/blog/2018/05/18/DevShow-107.html)
- [/blog/2018/05/18/DevShow-108.html](/blog/2018/05/18/DevShow-108.html)
- [/blog/2018/05/18/DevShow-109.html](/blog/2018/05/18/DevShow-109.html)
- [/blog/2018/05/18/DevShow-110.html](/blog/2018/05/18/DevShow-110.html)
- [/blog/2018/05/18/DevShow-111.html](/blog/2018/05/18/DevShow-111.html)
- [/blog/2018/05/29/DevShow-112.html](/blog/2018/05/29/DevShow-112.html)
- [/blog/2018/05/31/DevShow-113.html](/blog/2018/05/31/DevShow-113.html)
- [/blog/2018/06/12/DevShow-114.html](/blog/2018/06/12/DevShow-114.html)
- [/blog/2018/06/19/DevShow-115.html](/blog/2018/06/19/DevShow-115.html)
- [/blog/2018/06/25/DevShow-116.html](/blog/2018/06/25/DevShow-116.html)
- [/blog/2018/07/19/DevShow-117.html](/blog/2018/07/19/DevShow-117.html)
- [/blog/2018/07/19/DevShow-118.html](/blog/2018/07/19/DevShow-118.html)
- [/blog/2018/07/19/DevShow-119.html](/blog/2018/07/19/DevShow-119.html)
- [/blog/2018/07/19/DevShow-120.html](/blog/2018/07/19/DevShow-120.html)
- [/blog/2018/08/02/DevShow-121.html](/blog/2018/08/02/DevShow-121.html)
- [/blog/2018/08/09/DevShow-122.html](/blog/2018/08/09/DevShow-122.html)
- [/blog/2018/08/20/DevShow-123.html](/blog/2018/08/20/DevShow-123.html)
- [/blog/2018/10/17/DevShow-131.html](/blog/2018/10/17/DevShow-131.html)
- [/blog/2018/10/23/DevShow-131.html](/blog/2018/10/23/DevShow-131.html)
- [/blog/2018/10/29/DevShow-132.html](/blog/2018/10/29/DevShow-132.html)
- [/blog/2018/11/12/DevShow-133.html](/blog/2018/11/12/DevShow-133.html)
- [/blog/2018/11/12/DevShow-134.html](/blog/2018/11/12/DevShow-134.html)
- [/blog/2018/11/20/DevShow-135.html](/blog/2018/11/20/DevShow-135.html)
- [/blog/2018/12/12/DevShow-136.html](/blog/2018/12/12/DevShow-136.html)
- [/blog/2018/12/12/DevShow-137.html](/blog/2018/12/12/DevShow-137.html)
- [/blog/2018/12/12/DevShow-138.html](/blog/2018/12/12/DevShow-138.html)
- [/blog/2019/01/14/DevShow-140.html](/blog/2019/01/14/DevShow-140.html)
- [/blog/2019/01/28/DevShow-142.html](/blog/2019/01/28/DevShow-142.html)
- [/blog/2019/07/01/Roll-Your-Own-CD.html](/blog/2019/07/01/Roll-Your-Own-CD.html)
- [/blog/2019/08/23/enabling-mfa.html](/blog/2019/08/23/enabling-mfa.html)
- [/blog/2024/04/16/OSS-NA-Keynote.html](/blog/2024/04/16/OSS-NA-Keynote.html)
- [/blog/2024/05/01/Get-Ready-For-IO.html](/blog/2024/05/01/Get-Ready-For-IO.html)
- [/blog/2024/09/19/origins-Google-Developer-Show.html](/blog/2024/09/19/origins-Google-Developer-Show.html)
- [/blog/2024/10/15/Celebrating-20-Years-of-GSOC.html](/blog/2024/10/15/Celebrating-20-Years-of-GSOC.html)
- [/blog/2024/10/28/ATO-GSOC.html](/blog/2024/10/28/ATO-GSOC.html)
- [/blog/2024/11/01/Google-Prompting-Essentials.html](/blog/2024/11/01/Google-Prompting-Essentials.html)
- [/blog/2025/07/10/DevRel-Lifecycle.html](/blog/2025/07/10/DevRel-Lifecycle.html)
- [/blog/2025/10/25/good-journey.html](/blog/2025/10/25/good-journey.html)
- [/blog/2025/11/03/hello-vercel.html](/blog/2025/11/03/hello-vercel.html)
- [/blog/2026/03/03/Building-Slack-agents-can-be-easy.html](/blog/2026/03/03/Building-Slack-agents-can-be-easy.html)
- [/blog/2026/03/23/agent-readability-spec.html](/blog/2026/03/23/agent-readability-spec.html)
- [/blog/2026/03/27/Make-Your-Docs-Agent-Readable.html](/blog/2026/03/27/Make-Your-Docs-Agent-Readable.html)
- [/blog/all/](/blog/all/)
- [/blog/all/page/10/](/blog/all/page/10/)
- [/blog/all/page/11/](/blog/all/page/11/)
- [/blog/all/page/12/](/blog/all/page/12/)
- [/blog/all/page/13/](/blog/all/page/13/)
- [/blog/all/page/2/](/blog/all/page/2/)
- [/blog/all/page/3/](/blog/all/page/3/)
- [/blog/all/page/4/](/blog/all/page/4/)
- [/blog/all/page/5/](/blog/all/page/5/)
- [/blog/all/page/6/](/blog/all/page/6/)
- [/blog/all/page/7/](/blog/all/page/7/)
- [/blog/all/page/8/](/blog/all/page/8/)
- [/blog/all/page/9/](/blog/all/page/9/)
- [/blog/categories.html](/blog/categories.html)
- [/blog/category/artificial intelligence/](/blog/category/artificial intelligence/)
- [/blog/category/devshow/](/blog/category/devshow/)
- [/blog/category/devshow/page/10/](/blog/category/devshow/page/10/)
- [/blog/category/devshow/page/11/](/blog/category/devshow/page/11/)
- [/blog/category/devshow/page/12/](/blog/category/devshow/page/12/)
- [/blog/category/devshow/page/2/](/blog/category/devshow/page/2/)
- [/blog/category/devshow/page/3/](/blog/category/devshow/page/3/)
- [/blog/category/devshow/page/4/](/blog/category/devshow/page/4/)
- [/blog/category/devshow/page/5/](/blog/category/devshow/page/5/)
- [/blog/category/devshow/page/6/](/blog/category/devshow/page/6/)
- [/blog/category/devshow/page/7/](/blog/category/devshow/page/7/)
- [/blog/category/devshow/page/8/](/blog/category/devshow/page/8/)
- [/blog/category/devshow/page/9/](/blog/category/devshow/page/9/)
- [/blog/category/engineering/](/blog/category/engineering/)
- [/blog/category/events/](/blog/category/events/)
- [/blog/category/open source/](/blog/category/open source/)
- [/blog/category/virtual reality/](/blog/category/virtual reality/)
- [/blog/page/10/](/blog/page/10/)
- [/blog/page/11/](/blog/page/11/)
- [/blog/page/12/](/blog/page/12/)
- [/blog/page/13/](/blog/page/13/)
- [/blog/page/14/](/blog/page/14/)
- [/blog/page/15/](/blog/page/15/)
- [/blog/page/16/](/blog/page/16/)
- [/blog/page/17/](/blog/page/17/)
- [/blog/page/18/](/blog/page/18/)
- [/blog/page/19/](/blog/page/19/)
- [/blog/page/2/](/blog/page/2/)
- [/blog/page/20/](/blog/page/20/)
- [/blog/page/21/](/blog/page/21/)
- [/blog/page/22/](/blog/page/22/)
- [/blog/page/23/](/blog/page/23/)
- [/blog/page/24/](/blog/page/24/)
- [/blog/page/25/](/blog/page/25/)
- [/blog/page/26/](/blog/page/26/)
- [/blog/page/27/](/blog/page/27/)
- [/blog/page/28/](/blog/page/28/)
- [/blog/page/29/](/blog/page/29/)
- [/blog/page/3/](/blog/page/3/)
- [/blog/page/30/](/blog/page/30/)
- [/blog/page/31/](/blog/page/31/)
- [/blog/page/32/](/blog/page/32/)
- [/blog/page/33/](/blog/page/33/)
- [/blog/page/34/](/blog/page/34/)
- [/blog/page/35/](/blog/page/35/)
- [/blog/page/36/](/blog/page/36/)
- [/blog/page/37/](/blog/page/37/)
- [/blog/page/38/](/blog/page/38/)
- [/blog/page/39/](/blog/page/39/)
- [/blog/page/4/](/blog/page/4/)
- [/blog/page/40/](/blog/page/40/)
- [/blog/page/41/](/blog/page/41/)
- [/blog/page/42/](/blog/page/42/)
- [/blog/page/43/](/blog/page/43/)
- [/blog/page/44/](/blog/page/44/)
- [/blog/page/45/](/blog/page/45/)
- [/blog/page/46/](/blog/page/46/)
- [/blog/page/47/](/blog/page/47/)
- [/blog/page/48/](/blog/page/48/)
- [/blog/page/49/](/blog/page/49/)
- [/blog/page/5/](/blog/page/5/)
- [/blog/page/50/](/blog/page/50/)
- [/blog/page/51/](/blog/page/51/)
- [/blog/page/52/](/blog/page/52/)
- [/blog/page/53/](/blog/page/53/)
- [/blog/page/54/](/blog/page/54/)
- [/blog/page/55/](/blog/page/55/)
- [/blog/page/56/](/blog/page/56/)
- [/blog/page/57/](/blog/page/57/)
- [/blog/page/58/](/blog/page/58/)
- [/blog/page/59/](/blog/page/59/)
- [/blog/page/6/](/blog/page/6/)
- [/blog/page/60/](/blog/page/60/)
- [/blog/page/61/](/blog/page/61/)
- [/blog/page/62/](/blog/page/62/)
- [/blog/page/63/](/blog/page/63/)
- [/blog/page/64/](/blog/page/64/)
- [/blog/page/65/](/blog/page/65/)
- [/blog/page/7/](/blog/page/7/)
- [/blog/page/8/](/blog/page/8/)
- [/blog/page/9/](/blog/page/9/)
- [/blog/tag/agents/](/blog/tag/agents/)
- [/blog/tag/ai/](/blog/tag/ai/)
- [/blog/tag/android studio/](/blog/tag/android studio/)
- [/blog/tag/android wear/](/blog/tag/android wear/)
- [/blog/tag/android/](/blog/tag/android/)
- [/blog/tag/app engine/](/blog/tag/app engine/)
- [/blog/tag/artificial intelligence/](/blog/tag/artificial intelligence/)
- [/blog/tag/chrome devtools/](/blog/tag/chrome devtools/)
- [/blog/tag/chrome/](/blog/tag/chrome/)
- [/blog/tag/cloud functions/](/blog/tag/cloud functions/)
- [/blog/tag/cloud identity/](/blog/tag/cloud identity/)
- [/blog/tag/cloud/](/blog/tag/cloud/)
- [/blog/tag/continuous delivery/](/blog/tag/continuous delivery/)
- [/blog/tag/continuous integration/](/blog/tag/continuous integration/)
- [/blog/tag/dart/](/blog/tag/dart/)
- [/blog/tag/developer relations/](/blog/tag/developer relations/)
- [/blog/tag/devfest/](/blog/tag/devfest/)
- [/blog/tag/devshow/](/blog/tag/devshow/)
- [/blog/tag/engineering/](/blog/tag/engineering/)
- [/blog/tag/events/](/blog/tag/events/)
- [/blog/tag/firebase/](/blog/tag/firebase/)
- [/blog/tag/gemma/](/blog/tag/gemma/)
- [/blog/tag/github/](/blog/tag/github/)
- [/blog/tag/go/](/blog/tag/go/)
- [/blog/tag/google cloud build/](/blog/tag/google cloud build/)
- [/blog/tag/google cloud/](/blog/tag/google cloud/)
- [/blog/tag/google data studio/](/blog/tag/google data studio/)
- [/blog/tag/google summer of code/](/blog/tag/google summer of code/)
- [/blog/tag/google/](/blog/tag/google/)
- [/blog/tag/google/page/10/](/blog/tag/google/page/10/)
- [/blog/tag/google/page/11/](/blog/tag/google/page/11/)
- [/blog/tag/google/page/2/](/blog/tag/google/page/2/)
- [/blog/tag/google/page/3/](/blog/tag/google/page/3/)
- [/blog/tag/google/page/4/](/blog/tag/google/page/4/)
- [/blog/tag/google/page/5/](/blog/tag/google/page/5/)
- [/blog/tag/google/page/6/](/blog/tag/google/page/6/)
- [/blog/tag/google/page/7/](/blog/tag/google/page/7/)
- [/blog/tag/google/page/8/](/blog/tag/google/page/8/)
- [/blog/tag/google/page/9/](/blog/tag/google/page/9/)
- [/blog/tag/gpus/](/blog/tag/gpus/)
- [/blog/tag/gsoc/](/blog/tag/gsoc/)
- [/blog/tag/iot/](/blog/tag/iot/)
- [/blog/tag/linux/](/blog/tag/linux/)
- [/blog/tag/llms/](/blog/tag/llms/)
- [/blog/tag/login/](/blog/tag/login/)
- [/blog/tag/machine learning/](/blog/tag/machine learning/)
- [/blog/tag/nvidia/](/blog/tag/nvidia/)
- [/blog/tag/oculus rift/](/blog/tag/oculus rift/)
- [/blog/tag/open models/](/blog/tag/open models/)
- [/blog/tag/open source ai/](/blog/tag/open source ai/)
- [/blog/tag/open source/](/blog/tag/open source/)
- [/blog/tag/ospo/](/blog/tag/ospo/)
- [/blog/tag/pc vr/](/blog/tag/pc vr/)
- [/blog/tag/prompting/](/blog/tag/prompting/)
- [/blog/tag/python/](/blog/tag/python/)
- [/blog/tag/security/](/blog/tag/security/)
- [/blog/tag/spanner/](/blog/tag/spanner/)
- [/blog/tag/sql/](/blog/tag/sql/)
- [/blog/tag/ssh/](/blog/tag/ssh/)
- [/blog/tag/student programs/](/blog/tag/student programs/)
- [/blog/tag/two factor/](/blog/tag/two factor/)
- [/blog/tag/ubiquitous computing/](/blog/tag/ubiquitous computing/)
- [/blog/tag/ubuntu/](/blog/tag/ubuntu/)
- [/blog/tag/virtual reality/](/blog/tag/virtual reality/)
- [/blog/tag/vive/](/blog/tag/vive/)
- [/blog/tag/vr/](/blog/tag/vr/)
- [/blog/tag/wear os/](/blog/tag/wear os/)
- [/blog/tag/wearable computing/](/blog/tag/wearable computing/)
- [/blog/tag/web/](/blog/tag/web/)
- [/blog/tags.html](/blog/tags.html)

