41554 blogs ยท [ { "id": "01a0821c-8590-7025-b741-8c3140eeb9b8", "title": "Managing virtualenvs with a little bash", "url": "https://hashman.ca/managing-venvs/", "published_at": "2026-08-09T20:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31418b0448", "title": "A beginner's guide to improving your digital security", "url": "https://hashman.ca/security-101/", "published_at": "2026-01-27T02:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31427af106", "title": "I am very sick", "url": "https://hashman.ca/me-cfs/", "published_at": "2024-05-12T14:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3142d24332", "title": "I'm hosting a Bug Scrub for Kubernetes SIG Node", "url": "https://hashman.ca/sig-node-bsp/", "published_at": "2021-06-17T15:20:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3142dfb638", "title": "Easy risotto", "url": "https://hashman.ca/risotto/", "published_at": "2020-12-17T01:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314319c16a", "title": "Three talks at DebConf 2020", "url": "https://hashman.ca/debconf-2020/", "published_at": "2020-09-05T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3143fe7734", "title": "My term at the Open Source Initiative thus far", "url": "https://hashman.ca/osi-2020/", "published_at": "2020-09-02T16:15:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314436a827", "title": "Presenter mode in LibreOffice Impress without an external display", "url": "https://hashman.ca/libreoffice/", "published_at": "2020-05-28T01:15:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3145350404", "title": "Beef and broccoli", "url": "https://hashman.ca/beef-broccoli/", "published_at": "2020-05-25T23:30:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3146112421", "title": "Repack Zoom .debs to remove the `ibus` dependency", "url": "https://hashman.ca/zoom/", "published_at": "2020-04-09T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31461bbbb1", "title": "Chili", "url": "https://hashman.ca/chili/", "published_at": "2020-03-03T00:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314674dadc", "title": "KubeCon NA 2019 Talk Resources", "url": "https://hashman.ca/kubecon-2019/", "published_at": "2020-01-04T05:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3146b618a0", "title": "My favourite bash alias for git", "url": "https://hashman.ca/git-bash-alias/", "published_at": "2019-08-03T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3147972fe6", "title": "How to grant (Tom Marble) Debian Maintainer access", "url": "https://hashman.ca/dm-access/", "published_at": "2019-07-24T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31488296a9", "title": "PyCon 2019 Talk Resources", "url": "https://hashman.ca/pycon-2019/", "published_at": "2019-05-01T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31490900e4", "title": "I'm stepping down as maintainer of auditwheel", "url": "https://hashman.ca/leaving-pypa/", "published_at": "2019-04-11T02:15:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3149791181", "title": "SREcon19 Americas Talk Resources", "url": "https://hashman.ca/srecon-2019/", "published_at": "2019-03-22T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314a13ce2f", "title": "I'm running for the Open Source Initiative Board of Directors", "url": "https://hashman.ca/osi/", "published_at": "2019-03-02T16:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314ae9487b", "title": "get that (multigrain) bread ๐Ÿž", "url": "https://hashman.ca/multigrain-bread/", "published_at": "2019-02-23T22:15:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314b69f631", "title": "Hot chocolate", "url": "https://hashman.ca/hot-chocolate/", "published_at": "2019-01-09T03:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314c62b631", "title": "Software Freedom Conservancy: Governance & Federation are the Future", "url": "https://hashman.ca/conservancy-2018/", "published_at": "2018-12-27T17:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314ca7c7e9", "title": "I was a podcast guest on The REPL", "url": "https://hashman.ca/the-repl/", "published_at": "2018-10-26T20:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314cba362e", "title": "PyGotham 2018 Talk Resources", "url": "https://hashman.ca/pygotham-2018/", "published_at": "2018-10-13T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314db88273", "title": "Report on the Debian Bug Squashing Party", "url": "https://hashman.ca/nyc-bsp-report/", "published_at": "2018-06-30T19:30:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314ea61958", "title": "Looking back on \"Teaching Python: The Hard Parts\"", "url": "https://hashman.ca/pycon-2016-reflections/", "published_at": "2018-06-13T23:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314eb65e83", "title": "I'm hosting a small Debian BSP in Brooklyn", "url": "https://hashman.ca/nyc-bsp/", "published_at": "2018-06-02T19:20:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314f392ba6", "title": "A tale of three Debian build tools", "url": "https://hashman.ca/debian-build-tools/", "published_at": "2018-04-03T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c314fe3d685", "title": "ClojureSYNC Talk Resources", "url": "https://hashman.ca/clojuresync/", "published_at": "2018-03-17T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3150dad1c8", "title": "Stop streaming music from YouTube with this one weird trick", "url": "https://hashman.ca/youtube-dl/", "published_at": "2018-03-07T05:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3150e12d98", "title": "Brooklyn.js' Fourth Birthday! November 2017", "url": "https://hashman.ca/brooklyn-js-4.0/", "published_at": "2017-11-16T05:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31516c9f09", "title": "Fun Facts About Email", "url": "https://hashman.ca/email-tweets/", "published_at": "2017-10-23T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3151ccd5a8", "title": "AnsibleFest 2017 Talk Resources", "url": "https://hashman.ca/ansiblefest-2017/", "published_at": "2017-09-07T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c3152767fad", "title": "Protect Yo'Self! Jan. 2017 Encryption Workshop Resources", "url": "https://hashman.ca/protect-yoself/", "published_at": "2017-01-28T05:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c315361c05e", "title": "Brooklyn.js' Third Birthday! November 2016", "url": "https://hashman.ca/brooklyn-js-3.0/", "published_at": "2016-11-17T05:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31540f1c31", "title": "UWaterloo Steam Tunnels", "url": "https://hashman.ca/tunnels/", "published_at": "2016-10-29T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c31541d5008", "title": "Open Source Bridge 2016 Talk Resources", "url": "https://hashman.ca/osb-2016/", "published_at": "2016-06-21T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c315455200c", "title": "PyCon 2016 Talk Resources", "url": "https://hashman.ca/pycon-2016/", "published_at": "2016-05-29T04:00:00+00:00" }, { "id": "01a0821c-8590-7025-b741-8c315474ca28", "title": "What is a speech without an audience?", "url": "https://hashman.ca/speech/", "published_at": "2015-06-12T04:00:00+00:00" } ] posts Claim your blog
Back to hashman.ca
Blog ยท corpus.blog/blogs/hashman.ca/posts

hashman.ca

hashman.ca

2026

2024

2021

2020

2019

2018

2017

2016

2015