41554 blogs · [ { "id": "01a0879a-fa6f-71c1-aae4-4d71c41af64c", "title": "Gleam and BEAM: Looking beyond the JVM (Talk @ JavaZone 2026)", "url": "https://lindbakk.com/blog/gleam-and-beam-javazone-2026", "published_at": "2026-09-03T12:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c492af9d", "title": "No Meat Proxy", "url": "https://lindbakk.com/blog/no-meat-proxy", "published_at": "2026-08-08T09:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c51f5a64", "title": "Riding the Sour Train: Building surtoget.no with Gleam (Talk @ Gleam Gathering 2026)", "url": "https://lindbakk.com/blog/riding-the-sour-train-gleam-gathering-2026", "published_at": "2026-05-22T12:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c5407dc6", "title": "Introducing Brunost: The Nynorsk Programming Language", "url": "https://lindbakk.com/blog/introducing-brunost", "published_at": "2026-04-13T12:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c5f01da0", "title": "I'm tired.", "url": "https://lindbakk.com/blog/im-tired", "published_at": "2026-03-18T12:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c5f1e9cc", "title": "Ensuring correctness through the type system", "url": "https://lindbakk.com/blog/ensuring-correctness-through-the-type-system", "published_at": "2026-03-02T12:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c6ac9f6b", "title": "Is Gleam production ready? (Part 1) (Spoiler: Yes it is)", "url": "https://lindbakk.com/blog/is-gleam-production-ready-part-1", "published_at": "2025-08-12T16:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c6b58beb", "title": "Looking into performance issues with surtoget.no (featuring Gleam)", "url": "https://lindbakk.com/blog/looking-into-performance-issues-with-surtoget-and-gleam", "published_at": "2025-08-02T16:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c7254cc5", "title": "Introducing: Surtoget.no", "url": "https://lindbakk.com/blog/introducing-surtoget_no", "published_at": "2025-07-26T08:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c744c00a", "title": "New year, new site", "url": "https://lindbakk.com/blog/new-year-new-site", "published_at": "2025-02-08T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c764e4a4", "title": "Modern testing - Test more and better with less friction (Talk @ JavaZone 2024)", "url": "https://lindbakk.com/blog/modern-testing-test-more-and-better-with-less-friction-talk-javazone-2024", "published_at": "2024-09-06T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c8432b98", "title": "Interface hell: The Interface Segregation Principle doesn't mean 'Add interfaces everywhere'", "url": "https://lindbakk.com/blog/interface-hell-interface-segregation-principle-doesnt-mean-adding-interfaces-everywhere", "published_at": "2024-02-27T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c91d5f1e", "title": "Object-Oriented Programming: It’s more than 'classes and stuff'", "url": "https://lindbakk.com/blog/object-oriented-programming-its-more-than-classes-and-stuff", "published_at": "2024-02-20T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c9a3c8b1", "title": "Anemic Domain Models", "url": "https://lindbakk.com/blog/anemic-domain-models", "published_at": "2023-08-07T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71c9afc93e", "title": "Observations After a Decade Making Software", "url": "https://lindbakk.com/blog/observations-after-a-decade-of-making-software", "published_at": "2023-08-01T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ca0f7e7d", "title": "The tech-debt death spiral", "url": "https://lindbakk.com/blog/the-tech-debt-death-spiral", "published_at": "2023-03-28T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ca8fe594", "title": "The joy of self-updating dependencies", "url": "https://lindbakk.com/blog/the-joy-of-self-updating-dependencies", "published_at": "2023-03-21T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cb8ed68b", "title": "Why can't we just turn off infrastructure?", "url": "https://lindbakk.com/blog/why-cant-we-just-switch-off-infrastructure", "published_at": "2023-03-14T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cbf800d8", "title": "John’s 9 Traits of Well-built Systems", "url": "https://lindbakk.com/blog/johns-9-traits-of-well-built-systems", "published_at": "2022-12-28T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ccb4e30b", "title": "Authorisation Patterns for Monoliths and Microservices", "url": "https://lindbakk.com/blog/authorisation-patterns-for-monoliths-and-microservices", "published_at": "2021-08-31T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cceac33a", "title": "The exciting new world of AI-generated code (Copilot)", "url": "https://lindbakk.com/blog/the-exciting-new-world-of-ai-generated-code-codepilot", "published_at": "2021-07-03T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cd01b5b2", "title": "Useful tools: Feedly, Pocket & Kobo", "url": "https://lindbakk.com/blog/useful-tools-feedly-pocket-amp-kobo", "published_at": "2021-02-23T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cd0aa60e", "title": "The ultimate developer reading list (according to me)", "url": "https://lindbakk.com/blog/the-ultimate-developer-reading-list-according-to-me", "published_at": "2021-02-19T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cd5de5ab", "title": "ORM framework anti-patterns", "url": "https://lindbakk.com/blog/orm-frameworks-anti-patterns", "published_at": "2020-12-07T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cddea717", "title": "Introducing .toUUID()", "url": "https://lindbakk.com/blog/introducing-touuid", "published_at": "2020-10-09T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ce4243d0", "title": "Blogging on Squarespace is a pain (and here's how I fixed it)", "url": "https://lindbakk.com/blog/blogging-on-squarespace-is-a-pain-and-heres-how-i-fixed-it", "published_at": "2020-10-05T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ce5060dc", "title": "Patterns of Narrow Integration Testing", "url": "https://lindbakk.com/blog/patterns-of-narrow-integration-testing", "published_at": "2020-09-29T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ce6f2f6e", "title": "Spock and JUnit - a comparison", "url": "https://lindbakk.com/blog/spock-and-junit-a-comparison", "published_at": "2020-07-27T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71ced8921e", "title": "Utility and helper classes - a code smell?", "url": "https://lindbakk.com/blog/utility-and-helper-classes-a-code-smell", "published_at": "2020-07-13T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71cfce6282", "title": "The case of the else statement", "url": "https://lindbakk.com/blog/the-case-of-the-else-statement", "published_at": "2020-06-16T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71d02ce5a8", "title": "A brain dump on schema updates", "url": "https://lindbakk.com/blog/a-brain-dump-on-schema-updates", "published_at": "2020-06-09T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71d097000d", "title": "Don’t use transient fields", "url": "https://lindbakk.com/blog/dont-use-transient-fields", "published_at": "2020-06-02T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71d16f4e83", "title": "Useful tools: USE Together - Remote pair programming made easy", "url": "https://lindbakk.com/blog/useful-tools-use-together-remote-pair-programming-made-easy", "published_at": "2020-05-26T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71d1e9331d", "title": "The importance of unit test names", "url": "https://lindbakk.com/blog/the-importance-of-unit-test-names", "published_at": "2020-05-20T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71d2a84bfb", "title": "Useful tools: Vim Vixen", "url": "https://lindbakk.com/blog/useful-tools-vim-vixen", "published_at": "2020-05-18T00:00:00+00:00" }, { "id": "01a0879a-fa6f-71c1-aae4-4d71d363151b", "title": "Code Reviews - easy in theory, difficult in practice", "url": "https://lindbakk.com/blog/code-reviews-easy-in-theory-difficult-in-practice", "published_at": "2020-05-16T00:00:00+00:00" } ] posts Claim your blog
Back to lindbakk.com
Blog · corpus.blog/blogs/lindbakk.com/posts

lindbakk.com

lindbakk.com

2026

2025

2024

2023

2022

2021

2020