<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://david.burke.nyc/</loc></url>
  <url><loc>https://david.burke.nyc/blog/divergent-thoughts-on-ai/</loc><lastmod>2026-01-23</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/openapi-typescript-with-angular-resource/</loc><lastmod>2025-01-01</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/monitor-network-endpoints-with-python-asyncio-and-aiohttp/</loc><lastmod>2021-08-06</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/deploy-saleor-e-commerce-with-kubernetes-and-helm/</loc><lastmod>2021-06-04</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/deploy-django-with-helm/</loc><lastmod>2021-02-15</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/wagtail-single-page-app-integration-news/</loc><lastmod>2020-06-28</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/deploy-django-with-helm-to-kubernetes/</loc><lastmod>2020-01-24</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-rest-framework-modelviewsets-with-natural-key-lookup/</loc><lastmod>2019-12-04</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/angular-wagtail-1-0-and-getting-started/</loc><lastmod>2019-10-20</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/talk-integrating-angular-with-headless-wagtail-cms/</loc><lastmod>2019-08-28</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/controlling-a-ceiling-fan-with-simple-fan-control/</loc><lastmod>2019-06-30</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/how-to-set-up-a-hunter-fan-wifi-control-by-decompiling-their-app/</loc><lastmod>2019-06-01</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/using-angular-with-a-headless-wagtail-cms/</loc><lastmod>2019-05-11</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/review-pixel-slate-for-linux-and-web-development/</loc><lastmod>2018-12-24</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/rxjs-check-as-your-type-validation/</loc><lastmod>2018-07-11</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/forms-with-ngrx-nativescript-and-angular/</loc><lastmod>2018-04-09</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/does-your-password-manager-really-need-permissions-to-do-anything-ever/</loc><lastmod>2018-03-17</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/review-dell-xps-13-9370-developer-edition/</loc><lastmod>2018-02-09</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/building-nativescript-on-gitlab-ci/</loc><lastmod>2018-01-27</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/server-side-tracking-with-piwik-and-django/</loc><lastmod>2017-11-26</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/using-libsodium-in-android-and-nativescript/</loc><lastmod>2017-06-20</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/building-a-continuous-integration-workflow-with-gitlab-and-openshift-3/</loc><lastmod>2016-04-01</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/extending-openshifts-source-to-image/</loc><lastmod>2016-03-02</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/finding-near-locations-with-geodjango-and-postgis-part-ii/</loc><lastmod>2015-10-02</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/finding-near-locations-with-geodjango-and-postgis-part-i/</loc><lastmod>2015-10-01</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/review-of-tutanota/</loc><lastmod>2015-09-27</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/mistakes-to-make-when-starting-a-business-with-python/</loc><lastmod>2015-07-18</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/building-an-api-for-django-activity-stream-with-generic-foreign-keys/</loc><lastmod>2015-07-08</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/open-source-chat/</loc><lastmod>2015-06-04</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/the-only-time-i-will-spam-you/</loc><lastmod>2014-10-02</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/docker-in-dev-and-in-production-a-complete-and-diy-guide/</loc><lastmod>2014-09-26</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-rest-and-angularjs-a-dont-repeat-yourself-approach/</loc><lastmod>2014-07-06</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/too-many-ids-in-django-admin-actions/</loc><lastmod>2014-03-11</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/python-convert-documents-doc-docx-odt-pdf-to-plain-text-without-libreoffice/</loc><lastmod>2014-02-04</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/fedora-20-on-chromebook-pixel/</loc><lastmod>2013-12-20</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-1-6-urls-defaults-compatibility-work-around/</loc><lastmod>2013-11-10</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/using-the-gumby-framework-in-django-applications/</loc><lastmod>2013-11-04</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/letter-from-the-moon/</loc><lastmod>2013-10-22</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/review-and-how-to-install-koha-integrated-library-system/</loc><lastmod>2013-06-05</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/my-review-of-the-chromebook-pixel/</loc><lastmod>2013-04-21</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/pure-python-convert-any-spreadsheet-format-to-list/</loc><lastmod>2013-02-13</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/how-to-actually-upgrade-joomla-1-5-to-2-5/</loc><lastmod>2013-01-27</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/puppet-managing-desktop-computers-with-awesomesucky-tools/</loc><lastmod>2013-01-24</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/review-of-ulteo-open-virtual-desktop/</loc><lastmod>2012-12-04</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/buying-new-computers-is-pointless/</loc><lastmod>2012-10-26</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/thoughts-on-zentyal/</loc><lastmod>2012-08-01</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/smart-notebook-bug-breaks-ubuntu/</loc><lastmod>2012-06-16</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/settings-desktop-to-be-documentsdesktop/</loc><lastmod>2012-05-10</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/ubuntu-12-04-deployment-with-active-directory/</loc><lastmod>2012-04-26</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/computer-lab-on-the-cheap/</loc><lastmod>2012-02-26</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-end-user-defined-custom-fields/</loc><lastmod>2011-11-07</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/fully-automatic-backupsync-script-with-unison/</loc><lastmod>2011-08-26</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/mail-merge-in-libreoffice/</loc><lastmod>2011-08-10</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/adding-new-form-in-a-formset/</loc><lastmod>2011-07-25</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-get_or_default/</loc><lastmod>2011-07-23</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-admin-export-foreignkey-subfields-to-xls/</loc><lastmod>2011-05-19</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-admin-better-export-to-xls/</loc><lastmod>2011-05-17</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/232/</loc><lastmod>2011-04-20</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/linux-in-schools/</loc><lastmod>2011-04-16</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/buy-linux-preinstalled/</loc><lastmod>2011-04-09</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/linux-netbooks-fail/</loc><lastmod>2011-03-07</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/recipe-better-than-grandmas-mac-and-cheese/</loc><lastmod>2011-02-16</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/spreadsheet-reporting-in-django/</loc><lastmod>2011-02-13</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/looking-for-a-graphic-designer-intern/</loc><lastmod>2011-02-05</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/cas-in-sugarcrm/</loc><lastmod>2011-01-27</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/sword-propaganda/</loc><lastmod>2010-12-14</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/google-web-store/</loc><lastmod>2010-12-09</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/better-report-writing-with-the-appy-framework/</loc><lastmod>2010-11-20</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/whats-missing-in-linux-today/</loc><lastmod>2010-10-19</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/more-uno-reports/</loc><lastmod>2010-10-13</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/led-lighting/</loc><lastmod>2010-09-23</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-and-openoffice-org-uno-reports/</loc><lastmod>2010-09-21</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/linux-and-active-directory-round-2/</loc><lastmod>2010-09-16</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/creating-a-custom-django-datetimefield-model/</loc><lastmod>2010-09-07</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-models-from-non-django-applications/</loc><lastmod>2010-09-07</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/recipe/</loc><lastmod>2010-09-03</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/introducing-sword/</loc><lastmod>2010-08-20</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/thoughts-on-centrify/</loc><lastmod>2010-07-27</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-and-google-maps/</loc><lastmod>2010-07-01</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django-hack-adding-extra-data-to-admin-interface/</loc><lastmod>2010-05-24</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/new-domain/</loc><lastmod>2010-04-28</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/how-i-use-google-wave-and-what-i-wish-it-could-do/</loc><lastmod>2010-04-21</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/linux-and-active-directory/</loc><lastmod>2010-03-30</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/sunset-park-riders/</loc><lastmod>2010-03-10</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/video-game-video/</loc><lastmod>2010-02-16</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/creating-a-video-game/</loc><lastmod>2010-01-24</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/hacking-the-g1/</loc><lastmod>2009-11-25</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/django/</loc><lastmod>2009-10-06</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/working-away/</loc><lastmod>2009-09-30</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/volunteering/</loc><lastmod>2009-08-24</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/thinking-about-business/</loc><lastmod>2009-08-05</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/evil-evil-video/</loc><lastmod>2009-07-10</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/teaching-programming-part-2/</loc><lastmod>2009-06-28</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/teaching-programming/</loc><lastmod>2009-06-15</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/unbreakablelinuxdesktop/</loc><lastmod>2009-06-07</lastmod></url>
  <url><loc>https://david.burke.nyc/blog/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/2/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/3/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/4/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/5/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/6/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/7/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/8/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/9/</loc></url>
  <url><loc>https://david.burke.nyc/blog/page/10/</loc></url>
</urlset>