41554 blogs · [ { "id": "01a087af-cbed-7238-906f-5f67ff045883", "title": "Reviews: Refine, or Rebuild?", "url": "https://niels.nu/blog/2026/peer-review/", "published_at": "2026-05-04T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f67ff943648", "title": "From JBake to Astro", "url": "https://niels.nu/blog/2026/from-jbake-to-astro/", "published_at": "2026-04-15T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f67ffa20773", "title": "The Diagnosis I Found Looking For Someone Else", "url": "https://niels.nu/blog/2026/adhd-1-diagnosis/", "published_at": "2026-03-29T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6800421bcb", "title": "A Conversation on What You Are", "url": "https://niels.nu/blog/2026/conversation-on-what-you-are/", "published_at": "2026-03-07T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680081af99", "title": "This Blog is Certified* 100% AI-Free", "url": "https://niels.nu/blog/2026/certified-ai-free/", "published_at": "2026-01-21T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6800d9e9c2", "title": "Custom Converters with Spring Boot", "url": "https://niels.nu/blog/2022/spring-custom-converter/", "published_at": "2022-11-13T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f68015d6624", "title": "File Uploads and Downloads with Spring Boot", "url": "https://niels.nu/blog/2022/spring-file-upload-download/", "published_at": "2022-01-24T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680204a29f", "title": "Nice Random Numbers", "url": "https://niels.nu/blog/2022/nice-random-numbers/", "published_at": "2022-01-10T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6802a0268f", "title": "A Kotlin Retrospective", "url": "https://niels.nu/blog/2021/a-kotlin-retrospective/", "published_at": "2021-01-10T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6802a1e583", "title": "The Road to Independence", "url": "https://niels.nu/blog/2020/road-to-independence/", "published_at": "2020-01-10T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6802a6795b", "title": "Spring and DynamoDB Integration Testing", "url": "https://niels.nu/blog/2018/spring-dynamodb-integration-testing/", "published_at": "2018-11-02T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6802fbe1ac", "title": "Software Architecture in an Agile World", "url": "https://niels.nu/blog/2018/software-architecture-in-an-agile-world/", "published_at": "2018-10-22T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680364012e", "title": "Testing the Architecture", "url": "https://niels.nu/blog/2018/testing-the-architecture/", "published_at": "2018-10-19T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f68036cc8f2", "title": "Lightweight Architecture Decision Records", "url": "https://niels.nu/blog/2018/lightweight-architecture-decision-records/", "published_at": "2018-10-08T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6804431437", "title": "My Move to Kotlin", "url": "https://niels.nu/blog/2018/my-move-to-kotlin/", "published_at": "2018-10-02T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6805351bae", "title": "Serverless Java with AWS Lambda: Introduction", "url": "https://niels.nu/blog/2017/serverless-java-introduction/", "published_at": "2017-10-23T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f68061d115a", "title": "Aspect Oriented Programming with Spring Boot", "url": "https://niels.nu/blog/2017/spring-boot-aop/", "published_at": "2017-06-08T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6806397795", "title": "Spring Cassandra Integration Testing", "url": "https://niels.nu/blog/2017/spring-cassandra-integration-tests/", "published_at": "2017-04-02T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680699d8ed", "title": "A Docker Swarm Bramble on a ClusterHat", "url": "https://niels.nu/blog/2017/docker-swarm-bramble-raspberry-clusterhat/", "published_at": "2017-03-03T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6806f11b4f", "title": "Enabling HTTPS termination in Traefik", "url": "https://niels.nu/blog/2017/traefik-https-letsencrypt/", "published_at": "2017-02-25T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6807e9dd58", "title": "Spring Boot, Docker and Traefik", "url": "https://niels.nu/blog/2017/spring-boot-docker-traefik/", "published_at": "2017-02-19T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6807f760a4", "title": "Continuous Blog Delivery Part 2", "url": "https://niels.nu/blog/2017/continuous-blog-delivery-p2/", "published_at": "2017-02-11T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6808886590", "title": "Continuous Blog Delivery Part 1", "url": "https://niels.nu/blog/2017/continuous-blog-delivery-p1/", "published_at": "2017-02-10T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6808eb0b19", "title": "Spring Boot Microservice Versioning", "url": "https://niels.nu/blog/2017/spring-boot-microservice-versioning/", "published_at": "2017-01-15T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6809b16b63", "title": "Spring Boot Websocket STOMP Example", "url": "https://niels.nu/blog/2017/spring-boot-websocket-client/", "published_at": "2017-01-08T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680a7ead93", "title": "RSA Signing and Encryption in Java", "url": "https://niels.nu/blog/2016/java-rsa/", "published_at": "2016-12-29T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680b2ebfe7", "title": "Controller Advice - Exception Handlers", "url": "https://niels.nu/blog/2016/controller-advice-exception-handlers/", "published_at": "2016-12-24T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680bedb267", "title": "Devoxx Talk", "url": "https://niels.nu/blog/2016/devoxx-talk/", "published_at": "2016-11-12T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680c72f231", "title": "Asynchronous REST results in Spring", "url": "https://niels.nu/blog/2016/spring-async-rest/", "published_at": "2016-10-05T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680cf73550", "title": "Why there are so few women in tech", "url": "https://niels.nu/blog/2016/why-there-are-so-few-women-in-tech/", "published_at": "2016-09-15T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680d534ab5", "title": "Cassandra ResultSet Paging", "url": "https://niels.nu/blog/2016/cassandra-resultset-paging/", "published_at": "2016-07-24T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680dcedefd", "title": "Rate Limiting an API with Cassandra", "url": "https://niels.nu/blog/2016/cassandra-rate-limiting-api/", "published_at": "2016-07-16T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680e75089e", "title": "Cassandra 3 Data Modelling with Materialized Views", "url": "https://niels.nu/blog/2016/cassandra-3-data-modelling-materialized-views/", "published_at": "2016-06-30T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680e7de993", "title": "Micro services - Versioning strategies", "url": "https://niels.nu/blog/2016/microservice-versioning/", "published_at": "2016-05-21T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680f75fd1c", "title": "StringBuilders - How smart is the compiler?", "url": "https://niels.nu/blog/2016/stringbuilder/", "published_at": "2016-04-21T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f680fe810d4", "title": "Build your own Twitter AI using Markov Chains", "url": "https://niels.nu/blog/2016/twitter-markov/", "published_at": "2016-04-05T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6810171361", "title": "Kafka - Creating custom serializers", "url": "https://niels.nu/blog/2016/kafka-custom-serializers/", "published_at": "2016-03-10T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6810d9c146", "title": "Spark of Life", "url": "https://niels.nu/blog/2016/spark-of-life-genetic-algorithm/", "published_at": "2016-03-02T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f68119b279a", "title": "Testing for managers", "url": "https://niels.nu/blog/2016/testing-for-managers/", "published_at": "2016-02-06T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6811e94213", "title": "Sentiment Analysis with Apache Spark", "url": "https://niels.nu/blog/2015/sentiment-spark/", "published_at": "2015-11-19T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6812125fa2", "title": "Command Design Pattern in Java 8", "url": "https://niels.nu/blog/2015/java8-command-design-pattern/", "published_at": "2015-10-14T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f68130e29c1", "title": "Programming Sucks", "url": "https://niels.nu/blog/2015/programming-sucks/", "published_at": "2015-10-08T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6813f88038", "title": "Caching http requests in AngularJS", "url": "https://niels.nu/blog/2015/caching-http-requests-in-angular/", "published_at": "2015-09-30T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f68145fd8c2", "title": "Five ways to count vowels", "url": "https://niels.nu/blog/2015/5-ways-to-count-vowels/", "published_at": "2015-09-15T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f681553c7ea", "title": "Code Challenge \"Vrolijke Framboos\" Postmortem", "url": "https://niels.nu/blog/2015/code-challenge-postmortem/", "published_at": "2015-07-07T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f681623c119", "title": "Top 5 useful hidden Eclipse features", "url": "https://niels.nu/blog/2015/top-5-useful-hidden-eclipse-features/", "published_at": "2015-04-10T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6816eb6cbb", "title": "Communication between Angular Controller and Directive example", "url": "https://niels.nu/blog/2015/angular-directive-communication/", "published_at": "2015-04-08T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f6817cf8622", "title": "Antlr is awesome", "url": "https://niels.nu/blog/2015/antlr-is-awesome/", "published_at": "2015-04-01T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f681877e48c", "title": "JSON Web Tokens", "url": "https://niels.nu/blog/2015/json-web-tokens/", "published_at": "2015-01-28T00:00:00+00:00" }, { "id": "01a087af-cbed-7238-906f-5f681944cc2a", "title": "Baking A Blog", "url": "https://niels.nu/blog/2015/baking-a-blog/", "published_at": "2015-01-25T00:00:00+00:00" } ] posts Claim your blog
Back to niels.nu
Blog · corpus.blog/blogs/niels.nu/posts

niels.nu

niels.nu

2026

2022

2021

2020

2018

2017

2016

2015