41554 blogs · [ { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84295e448", "title": null, "url": "https://kos.gd/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84f430746", "title": "Tags and Categories", "url": "https://kos.gd/categories/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85e9ce994", "title": "2018 Coderetreat & Game of Life", "url": "https://kos.gd/posts/2018-coderetreat/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85f89bba3", "title": "5 ways to use Python with native code", "url": "https://kos.gd/posts/5-ways-to-use-python-with-native-code/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8645686c1", "title": "Efficient meetings", "url": "https://kos.gd/posts/efficient-meetings/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b865f7b083", "title": "Games with endings", "url": "https://kos.gd/posts/games-with-endings/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b867c8ec9a", "title": "Git adventures: Loose object is corrupted", "url": "https://kos.gd/posts/git-adventures-loose-object-is-corrupted/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b868a7cf73", "title": "Interfaces dissected", "url": "https://kos.gd/posts/interfaces-dissected/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86d37f06e", "title": "Provoking Mersenne Twisters", "url": "https://kos.gd/posts/provoking-mersenne-twisters/", "published_at": "2026-02-16T19:54:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b842e8b58f", "title": "Posts for year 2012", "url": "https://kos.gd/2012/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b843243083", "title": null, "url": "https://kos.gd/2012/10/python-likes-dlls/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8432fc26b", "title": null, "url": "https://kos.gd/2012/11/dont-use-old-opengl/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84422e991", "title": null, "url": "https://kos.gd/2012/12/special-member-lookup-in-python/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84456b3d7", "title": "Posts for year 2013", "url": "https://kos.gd/2013/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8447c15eb", "title": null, "url": "https://kos.gd/2013/01/5-ways-to-use-python-with-native-code/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b844f49f63", "title": null, "url": "https://kos.gd/2013/01/closures-the-cute-pets-that-bite/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8455b4e15", "title": null, "url": "https://kos.gd/2013/01/slicing-traps-in-python-2/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8463791c5", "title": null, "url": "https://kos.gd/2013/01/the-python-gets-gallery/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8464724f4", "title": null, "url": "https://kos.gd/2013/02/git-adventures-loose-object-is-corrupted/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b846b74c4c", "title": null, "url": "https://kos.gd/2013/02/say-hello-to-unicode/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8479df853", "title": null, "url": "https://kos.gd/2013/03/introducing-glory/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84850e2a1", "title": null, "url": "https://kos.gd/2013/04/interfaces-dissected/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b848fd2c7b", "title": null, "url": "https://kos.gd/2013/12/commentary-on-javascript-the-good-parts/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8493b592c", "title": "Posts for year 2014", "url": "https://kos.gd/2014/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b849ee05b1", "title": null, "url": "https://kos.gd/2014/01/bug-vs-feature/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84a408984", "title": null, "url": "https://kos.gd/2014/10/risk-of-rain-a-story-of-a-bug/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84a516f65", "title": "Posts for year 2015", "url": "https://kos.gd/2015/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84ad2e5a8", "title": null, "url": "https://kos.gd/2015/05/on-gamepads-in-pc-gaming-xinput-and-compatibility/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84b324d71", "title": null, "url": "https://kos.gd/2015/09/games-are-generators-of-stories/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84bdaad1b", "title": "Posts for year 2016", "url": "https://kos.gd/2016/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84cb0db26", "title": "Posts for year 2017", "url": "https://kos.gd/2017/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84d9199a7", "title": "Posts for year 2018", "url": "https://kos.gd/2018/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84df4b712", "title": "Posts for year 2019", "url": "https://kos.gd/2019/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84e70386e", "title": "Posts for year 2023", "url": "https://kos.gd/2023/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84ec3ec63", "title": "Posts for year 2025", "url": "https://kos.gd/2025/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84f105f40", "title": "Posts for year 2026", "url": "https://kos.gd/2026/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84f1f784e", "title": null, "url": "https://kos.gd/archive.html", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b84f9eac5a", "title": "Posts about arduino", "url": "https://kos.gd/categories/arduino/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8508976d3", "title": "Posts about asteroids", "url": "https://kos.gd/categories/asteroids/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b850cc05f2", "title": "Posts about books", "url": "https://kos.gd/categories/books/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85129849f", "title": null, "url": "https://kos.gd/categories/dev/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b851376e62", "title": "Posts about diy", "url": "https://kos.gd/categories/diy/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85149c026", "title": "Posts about electronics", "url": "https://kos.gd/categories/electronics/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b851e88a81", "title": "Posts about gamedev", "url": "https://kos.gd/categories/gamedev/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b852e2720b", "title": "Posts about games", "url": "https://kos.gd/categories/games/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b853c548ac", "title": null, "url": "https://kos.gd/categories/gaming/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b853cbf0ff", "title": "Posts about git", "url": "https://kos.gd/categories/git/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8545d349d", "title": "Posts about javascript", "url": "https://kos.gd/categories/javascript/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85480cc6d", "title": "Posts about meetings", "url": "https://kos.gd/categories/meetings/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85555f5a3", "title": "Posts about music", "url": "https://kos.gd/categories/music/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8562422c7", "title": "Posts about nes", "url": "https://kos.gd/categories/nes/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b856e95e52", "title": "Posts about open-source", "url": "https://kos.gd/categories/open-source/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85791b745", "title": "Posts about opengl", "url": "https://kos.gd/categories/opengl/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b857bf932d", "title": "Posts about polyglot", "url": "https://kos.gd/categories/polyglot/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8581a7cf1", "title": "Posts about projects", "url": "https://kos.gd/categories/projects/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b858f150fc", "title": "Posts about puyo", "url": "https://kos.gd/categories/puyo/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b859cb7f8f", "title": "Posts about python", "url": "https://kos.gd/categories/python/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85a775c28", "title": "Posts about retro", "url": "https://kos.gd/categories/retro/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85b261bc7", "title": "Posts about ruff", "url": "https://kos.gd/categories/ruff/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85b9f8e8e", "title": "Posts about self-hosting", "url": "https://kos.gd/categories/self-hosting/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85c673c1d", "title": "Posts about tetris", "url": "https://kos.gd/categories/tetris/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85c894372", "title": "Posts about til", "url": "https://kos.gd/categories/til/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85d0d5741", "title": "kos.gd (old posts, page 1)", "url": "https://kos.gd/index-1.html", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85ddb847e", "title": "kos.gd (old posts, page 2)", "url": "https://kos.gd/index-2.html", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b85e124556", "title": "kos.gd (old posts, page 3)", "url": "https://kos.gd/index-3.html", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86138cb33", "title": "Bug vs feature", "url": "https://kos.gd/posts/bug-vs-feature/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b862444114", "title": "Closures: The cute pets that bite", "url": "https://kos.gd/posts/closures-the-cute-pets-that-bite/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8633e95bc", "title": "Commentary on Javascript: The Good Parts", "url": "https://kos.gd/posts/commentary-on-javascript-the-good-parts/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b863dde2b4", "title": "Don't use old OpenGL", "url": "https://kos.gd/posts/dont-use-old-opengl/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b865aa22b3", "title": "Games are generators of stories", "url": "https://kos.gd/posts/games-are-generators-of-stories/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b866597182", "title": "GIC 2016, Poznań - day one", "url": "https://kos.gd/posts/gic-2016-day-1/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b867293364", "title": "GIC 2016, Poznań - day two, continued", "url": "https://kos.gd/posts/gic-2016-day-2-continued/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b867aef3d4", "title": "GIC 2016, Poznań - day two", "url": "https://kos.gd/posts/gic-2016-day-2/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8685f10c6", "title": "How X-COM: Terror from the Deep builds tension", "url": "https://kos.gd/posts/how-xcom-tftd-builds-tension/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b869366762", "title": "Introducing Glory", "url": "https://kos.gd/posts/introducing-glory/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86b9a636d", "title": "On gamepads in PC gaming, XInput and compatibility", "url": "https://kos.gd/posts/on-gamepads-in-pc-gaming-xinput-and-compatibility/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86c898bca", "title": "Pokémon Go is a subtly broken game, and here is why", "url": "https://kos.gd/posts/pokemon-go-is-a-subtly-broken-game/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86e1f069d", "title": "Python likes DLLs: Starting out with OpenGL and GLFW", "url": "https://kos.gd/posts/python-likes-dlls/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86effee0e", "title": "Risk of Rain: A Story of a Bug", "url": "https://kos.gd/posts/risk-of-rain-a-story-of-a-bug/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86f6b6a7e", "title": "Say hello to Unicode", "url": "https://kos.gd/posts/say-hello-to-unicode/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b86fd0bdcd", "title": "Slicing traps in Python 2", "url": "https://kos.gd/posts/slicing-traps-in-python-2/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8701dec20", "title": "Special member lookup in Python", "url": "https://kos.gd/posts/special-member-lookup-in-python/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8704aa4d4", "title": "The games I play, part 2: Metroidvania", "url": "https://kos.gd/posts/the-games-i-play-metroidvania/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8710cf6db", "title": "The games I play, part 1: Roguelite", "url": "https://kos.gd/posts/the-games-i-play-roguelite/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b8719d83bb", "title": "The games I play, part 3: Shmup", "url": "https://kos.gd/posts/the-games-i-play-shmup/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b87296f999", "title": "The games I play: intro", "url": "https://kos.gd/posts/the-games-i-play/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b872ae31ed", "title": "The Python Gets Gallery", "url": "https://kos.gd/posts/the-python-gets-gallery/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a0d3a5-46b0-71c9-9d3a-a9b872ae5444", "title": null, "url": "https://kos.gd/posts/xcom-terror-from-the-old/", "published_at": "2026-02-16T19:53:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a24ed65e", "title": "Arduino without Arduino", "url": "https://kos.gd/posts/arduino-without-arduino/", "published_at": "2026-02-16T00:00:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a2bb5e72", "title": "The most common Python trap & how to find it", "url": "https://kos.gd/posts/most-common-python-trap/", "published_at": "2025-05-18T00:00:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a382fef9", "title": "My Asteroids Adventures", "url": "https://kos.gd/posts/asteroids/", "published_at": "2025-05-12T00:00:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a3d24118", "title": "I hosted my own music streaming service", "url": "https://kos.gd/posts/music-streaming/", "published_at": "2025-04-05T00:00:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a4ca371c", "title": "A look back at X-COM: Terror From The Deep", "url": "https://kos.gd/posts/a-look-back-at-x-com-tftd/", "published_at": "2023-09-03T12:00:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a5734a57", "title": "Chaos Communication Camp 2019", "url": "https://kos.gd/posts/chaos-communication-camp-2019/", "published_at": "2019-09-18T15:22:40+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a5cb5ca0", "title": "How not to fix burnout", "url": "https://kos.gd/posts/how-not-to-fix-burnout/", "published_at": "2019-02-20T13:21:09+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a6b46aa9", "title": "Multiplayer in retro games", "url": "https://kos.gd/posts/multiplayer-in-retro-games/", "published_at": "2019-01-28T17:18:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a6d69e7d", "title": "Document-Driven Meetings", "url": "https://kos.gd/posts/document-driven-meetings/", "published_at": "2019-01-18T12:35:00+00:00" }, { "id": "01a08796-d2e6-73bb-916a-4309a7588454", "title": "Fun Facts about Tetris", "url": "https://kos.gd/posts/fun-facts-about-tetris/", "published_at": "2019-01-14T12:40:00+00:00" } ] posts Claim your blog
Back to kos.gd
Blog · corpus.blog/blogs/kos.gd/posts

kos.gd

kos.gd

2026

2025

2023

2019