<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress.com" -->
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"><url><loc>https://blog.knatten.org/2025/10/31/a-prvalue-is-not-a-temporary/</loc><lastmod>2025-11-21T11:23:47+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/09/28/cppquiz-android-app-now-available/</loc><lastmod>2025-10-15T06:27:57+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2025/04/25/a-taxonomy-of-c-types/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/final.png</image:loc><image:title>final</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/fundamental-types-1.png</image:loc><image:title>fundamental-types</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/fundamental-types.png</image:loc><image:title>fundamental-types</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/floating-point-types.png</image:loc><image:title>floating-point-types</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/integral-types.png</image:loc><image:title>integral-types</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/unsigned-integer-types.png</image:loc><image:title>unsigned-integer-types</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/signed-integer-types.png</image:loc><image:title>signed-integer-types</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2025/04/cpptypes-2.png</image:loc><image:title>CppTypes (2)</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2024/10/arithmetic-types.drawio.png</image:loc><image:title>arithmetic-types.drawio</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2024/10/floating-point-types.png</image:loc><image:title>floating-point-types</image:title></image:image><lastmod>2025-04-14T10:00:20+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2025/03/28/how-to-become-a-conference-speaker/</loc><lastmod>2025-03-27T20:26:03+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2024/11/20/visiting-cppcast/</loc><lastmod>2024-11-20T14:41:36+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2024/09/19/cppquiz-org-is-now-on-c23/</loc><lastmod>2025-04-09T17:36:49+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2024/09/08/c-brain-teasers-book-launch-september-10-livestreaming/</loc><lastmod>2024-09-12T19:34:48+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2024/06/12/i-wrote-a-c-book/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2024/06/20240612_203320.jpg</image:loc><image:title>20240612_203320</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2024/06/cppbrainteasers.jpeg</image:loc><image:title>cppbrainteasers</image:title></image:image><lastmod>2024-06-12T18:38:58+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2024/06/02/help-get-cppquiz-to-c23-and-win-a-book/</loc><lastmod>2024-06-02T15:07:48+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2023/03/17/references-dont-have-top-level-cv-qualifiers/</loc><lastmod>2023-03-19T14:48:29+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2023/01/02/why-we-probably-shouldnt-have-constexpr-conditional-operator/</loc><lastmod>2025-03-06T12:09:32+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2022/08/26/microsoft-c-versions-explained/</loc><lastmod>2025-12-21T08:36:08+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2021/10/15/the-difference-between-no-move-constructor-and-a-deleted-move-constructor/</loc><lastmod>2023-10-23T03:43:03+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/04/02/always-catch-exceptions-by-reference/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2010/03/slicing2.png</image:loc><image:title>Exception copy constructor slices away the SpecialException part of the object</image:title><image:caption>Exception copy constructor slices away the SpecialException part of the object</image:caption></image:image><lastmod>2022-09-10T07:55:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/04/06/trying-out-c17-on-macos/</loc><lastmod>2019-06-30T17:19:42+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2019/05/24/no-one-knows-the-type-of-char-char/</loc><lastmod>2020-05-15T19:08:27+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/10/19/static_assert-in-templates/</loc><lastmod>2018-10-19T07:08:03+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/10/12/1662/</loc><lastmod>2018-11-05T10:31:10+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/10/05/why-you-cant-list-initialize-containers-of-non-copyable-types/</loc><lastmod>2018-09-18T12:23:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/09/21/new-design-for-improved-readability/</loc><lastmod>2018-09-17T07:50:35+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/09/11/cppquiz-org-now-uses-c17/</loc><lastmod>2025-02-24T00:05:31+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/09/07/help-save-cppquiz-org-were-porting-to-c17/</loc><lastmod>2018-09-07T07:39:30+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/07/02/new-job-zivid-labs/</loc><lastmod>2018-07-01T21:13:29+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/03/09/lvalues-rvalues-glvalues-prvalues-xvalues-help/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2018/03/all.png</image:loc><image:title>All</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2018/03/basic.png</image:loc><image:title>Basic</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2018/03/orthogonal.png</image:loc><image:title>Orthogonal</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2018/03/move.png</image:loc><image:title>Move</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2018/03/c98.png</image:loc><image:title>C++98</image:title></image:image><lastmod>2023-08-16T05:34:18+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2018/03/02/non-virtual-destructors/</loc><lastmod>2018-03-02T09:02:52+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2016/07/22/how-to-contribute-questions-for-cppquiz-org/</loc><lastmod>2023-10-17T06:39:07+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/08/26/dont-be-afraid-of-returning-by-value-know-the-return-value-optimization/</loc><lastmod>2017-01-20T18:54:21+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/09/26/installing-and-using-googletest-with-visual-studio/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/09/dependencies.png</image:loc><image:title>dependencies</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/09/projects.png</image:loc><image:title>projects</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/09/readonly.png</image:loc><image:title>readonly</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/09/runtime.png</image:loc><image:title>runtime</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/09/msvc.png</image:loc><image:title>msvc</image:title></image:image><lastmod>2017-01-23T12:45:56+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/11/02/efficient-pure-functional-programming-in-c-using-move-semantics/</loc><lastmod>2024-05-28T17:56:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/06/25/the-simplest-possible-introduction-to-traits/</loc><lastmod>2014-08-04T07:51:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2014/06/08/all-c-talks-from-ndc-now-available/</loc><lastmod>2014-06-11T05:45:08+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2014/05/11/very-strong-c-track-at-the-ndc-conference/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2014/05/ndc.png</image:loc><image:title>ndc</image:title></image:image><lastmod>2014-06-09T16:19:21+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/rss-2/</loc><lastmod>2014-03-19T20:56:33+00:00</lastmod><changefreq>weekly</changefreq><priority>0.6</priority></url><url><loc>https://blog.knatten.org/2013/12/18/new-job/</loc><lastmod>2013-12-18T19:41:56+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2013/11/19/cppquiz-org-officially-launched/</loc><lastmod>2015-10-22T05:07:37+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/09/26/notes-from-my-googletest-demo/</loc><lastmod>2013-10-16T17:54:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2013/10/13/prefer-using-references-with-range-based-for-loops/</loc><lastmod>2024-07-25T06:47:24+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2013/04/12/fighting-fud-introducing-c11-to-legacy-programmers/</loc><lastmod>2013-04-22T11:41:14+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/11/30/how-to-avoid-includes-in-headers/</loc><lastmod>2016-06-27T06:39:34+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/11/09/another-reason-to-avoid-includes-in-headers/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/10/ex5.png</image:loc><image:title>ex5</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/10/ex4.png</image:loc><image:title>ex4</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/10/ex3.png</image:loc><image:title>ex3</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/10/ex1.png</image:loc><image:title>ex1</image:title></image:image><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/09/ex1_no_timing.png</image:loc><image:title>ex1_no_timing</image:title></image:image><lastmod>2021-04-25T15:49:53+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/10/26/a-bad-excuse-for-private-inheritance/</loc><lastmod>2022-06-18T15:21:33+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/09/23/new-software-community-and-google-test-demo/</loc><lastmod>2012-09-23T17:36:35+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/09/14/c-puzzle-1-initialization-order/</loc><lastmod>2012-09-20T16:53:46+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/09/20/private-inheritance/</loc><lastmod>2012-09-20T12:57:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/08/03/why-return-codes-make-me-mad/</loc><lastmod>2018-04-09T10:27:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/06/15/avoiding-heap-allocations-with-static-thread-locals/</loc><lastmod>2012-06-17T09:28:54+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/05/04/why-we-should-see-an-uptake-in-algorithm-usage/</loc><lastmod>2012-05-12T07:54:15+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/05/11/a-string-literal-is-not-a-string/</loc><lastmod>2012-05-14T10:57:00+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/04/13/zero-overhead-test-doubles-mocks-without-virtual/</loc><lastmod>2018-09-28T14:15:00+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2012/03/23/basic-gloox-tutorial/</loc><image:image><image:loc>https://blog.knatten.org/wp-content/uploads/2012/03/pidgin-screenshot.png</image:loc><image:title>pidgin-screenshot</image:title></image:image><lastmod>2017-02-26T15:35:28+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/11/11/disempower-every-variable/</loc><lastmod>2011-11-21T18:33:31+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/11/04/undefined-behaviour-%e2%80%94-worse-than-its-reputation/</loc><lastmod>2011-11-04T12:22:12+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/10/28/the-difference-between-unspecified-and-undefined-behaviour/</loc><lastmod>2014-02-09T16:11:02+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/03/26/c0x-highlights-0-range-based-for-loop/</loc><lastmod>2011-08-08T19:11:01+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/04/30/be-careful-with-static-variables/</loc><lastmod>2015-06-13T16:37:26+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/07/30/book-review-effective-c-by-scott-meyers/</loc><lastmod>2011-08-08T19:10:35+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/10/29/what-i-have-against-precompiled-headers/</loc><lastmod>2014-07-15T06:58:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/04/01/the-minesweeper-kata-in-15-lines-of-c/</loc><lastmod>2011-08-08T19:10:16+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/08/19/use-boost-list_of-if-you-cant-have-uniform-initialization-yet/</loc><lastmod>2013-10-29T13:15:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/08/12/modify-visibility-in-a-subclass-to-allow-testing/</loc><lastmod>2011-08-13T14:06:11+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/03/19/the-returning-function-that-never-returned/</loc><lastmod>2011-08-08T18:22:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/07/01/the-order-of-include-directives-matter/</loc><lastmod>2022-08-04T20:18:30+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/09/17/compiling-boost-with-stlport-on-windows/</loc><lastmod>2011-08-08T18:19:18+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/03/25/uniform-initialization-simplifies-testing/</loc><lastmod>2011-08-08T18:17:52+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/08/05/make-a-derived-class-to-allow-testing-an-abstract-class/</loc><lastmod>2021-10-22T12:06:13+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2011/01/10/what-ive-been-working-on/</loc><lastmod>2011-01-10T21:26:34+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/11/17/i-am-taking-a-hiatus/</loc><lastmod>2010-11-17T13:04:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/10/22/on-the-importance-of-fitting-in/</loc><lastmod>2010-10-25T14:14:32+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/03/19/quick-tip-ensuring-proper-indentation-in-vim/</loc><lastmod>2010-10-20T12:24:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/04/09/friends-vs-dependency-injections/</loc><lastmod>2010-10-20T12:24:36+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/04/16/how-c-can-be-faster-than-c/</loc><lastmod>2010-10-20T12:24:33+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/04/23/make-apis-hard-to-use-incorrectly/</loc><lastmod>2010-10-20T12:24:29+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/05/07/arrays-are-initialized-on-definition/</loc><lastmod>2010-10-20T12:24:24+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/05/14/why-initializer-lists-dont-work-with-base-members/</loc><lastmod>2010-10-20T12:24:20+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/05/21/puzzle-0-call-sequence/</loc><lastmod>2014-02-09T16:10:00+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/05/28/why-member-functions-are-not-virtual-by-default/</loc><lastmod>2020-03-29T19:32:09+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/06/18/why-you-shouldnt-throw-in-destructors/</loc><lastmod>2010-10-20T12:23:11+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/07/09/use-your-head-before-using-using-in-headers/</loc><lastmod>2015-02-25T18:40:04+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/07/16/dont-put-all-includes-in-the-hxx/</loc><lastmod>2015-02-05T18:16:52+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/10/01/allow-the-compiler-to-do-copies-for-you/</loc><lastmod>2010-10-20T12:19:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/10/15/minimize-the-scope-of-each-variable/</loc><lastmod>2010-10-20T12:19:03+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/10/08/an-interface-is-more-than-names-and-arguments/</loc><lastmod>2010-10-07T17:42:59+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/09/10/show-me-your-signature-and-ill-tell-you-who-you-are/</loc><lastmod>2010-09-10T07:33:01+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/09/03/a-summary-of-const-part-one/</loc><lastmod>2015-06-09T13:17:33+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/08/20/please-make-member-functions-const-whenever-possible/</loc><lastmod>2012-01-21T02:38:59+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/08/27/changing-the-unchangeable/</loc><lastmod>2010-08-26T08:43:27+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/08/13/static-and-dynamic-polymorphism-siblings-that-dont-play-well-together/</loc><lastmod>2010-08-25T08:44:11+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/08/06/new-job-and-windows-survival-101/</loc><lastmod>2013-02-02T11:55:51+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/06/11/why-algorithms-need-two-iterators/</loc><lastmod>2010-06-16T18:41:45+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/06/04/whats-the-point-of-function-try-blocks/</loc><lastmod>2010-06-10T18:41:20+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/05/24/new-sourcecode-formatting/</loc><lastmod>2010-05-24T10:20:01+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/04/11/a-quick-and-simple-worklog/</loc><lastmod>2010-05-24T09:54:35+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/03/20/xp-meetup-97-things-every-programmer-should-know/</loc><lastmod>2010-03-19T00:30:07+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org/2010/03/18/hello-world/</loc><lastmod>2010-03-19T00:18:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.knatten.org</loc><changefreq>daily</changefreq><priority>1.0</priority><lastmod>2025-12-21T08:36:08+00:00</lastmod></url></urlset>
