56,966 blogs · [ { "id": "01a0df45-5a58-7154-8102-7ff16acc32dd", "title": "My GitHub Copilot CLI Started at 49% Context Usage. MCP Was the Reason", "url": "https://towardsdev.com/my-github-copilot-cli-started-at-49-context-usage-mcp-was-the-reason-2ace35620424?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T20:36:01+00:00" }, { "id": "01a0df45-5a58-7154-8102-7ff16b0216f6", "title": "Connection & Read Timeouts in a Custom Load Balancer Using Java & Spring Boot", "url": "https://towardsdev.com/connection-read-timeouts-in-a-custom-load-balancer-using-java-spring-boot-f8c85a0457db?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:39:19+00:00" }, { "id": "01a0df45-5a58-7154-8102-7ff16ba200b1", "title": "How to Build a Self-Improving Agent That Beats a Frontier Model", "url": "https://towardsdev.com/how-to-build-a-self-improving-agent-that-beats-a-frontier-model-370391fb9436?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:39:14+00:00" }, { "id": "01a0df45-5a58-7154-8102-7ff16bb6fdb7", "title": "After Years of Writing C#, I Think Union Types May Change How We Design APIs", "url": "https://towardsdev.com/after-years-of-writing-c-i-think-union-types-may-change-how-we-design-apis-5530fde76b91?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:39:08+00:00" }, { "id": "01a0df45-5a58-7154-8102-7ff16bfa9812", "title": "The Three Layers of Data Modeling", "url": "https://towardsdev.com/the-three-layers-of-data-modeling-999bbd679c95?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:39:04+00:00" }, { "id": "01a0df45-5a58-7154-8102-7ff16cda3365", "title": "Your Spring Boot API Loads the Entire Database Table Into Memory — Stop Using findAll() Like…", "url": "https://towardsdev.com/your-spring-boot-api-loads-the-entire-database-table-into-memory-stop-using-findall-like-19b5f880b5c3?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:38:59+00:00" }, { "id": "01a0df45-5a58-7154-8102-7ff16d05346b", "title": "Stop Returning JPA Entities Directly From Your Spring Boot API", "url": "https://towardsdev.com/stop-returning-jpa-entities-directly-from-your-spring-boot-api-24929f3fcdaa?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:38:56+00:00" }, { "id": "01a0df45-5a59-7363-994a-6585e0cf9c23", "title": "Your Spring Boot API Runs 101 SQL Queries for One Request — The JPA N+1 Problem", "url": "https://towardsdev.com/your-spring-boot-api-runs-101-sql-queries-for-one-request-the-jpa-n-1-problem-5b05b7a980b9?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:38:52+00:00" }, { "id": "01a0df45-5a59-7363-994a-6585e14c9db4", "title": "Your Spring Boot @Scheduled Job Runs Multiple Times in Production — Here’s Why", "url": "https://towardsdev.com/your-spring-boot-scheduled-job-runs-multiple-times-in-production-heres-why-6d47c07ad5ac?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:38:49+00:00" }, { "id": "01a0df45-5a59-7363-994a-6585e1e4b1ed", "title": "We Profiled Before Optimizing. The Bottleneck Was Nowhere We Guessed", "url": "https://towardsdev.com/we-profiled-before-optimizing-the-bottleneck-was-nowhere-we-guessed-aed6d1c10bfd?source=rss----a648dc4ecb66---4", "published_at": "2026-09-25T12:38:47+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656aadcc7dd", "title": "The Java Performance Problem I Did Not Notice for Years", "url": "https://towardsdev.com/the-java-performance-problem-i-did-not-notice-for-years-9bbc94952d36?source=rss----a648dc4ecb66---4", "published_at": "2026-09-21T21:06:01+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656ab4a35cb", "title": "What gc_collect_cycles() Actually Frees — And Why It Sometimes Frees Nothing", "url": "https://towardsdev.com/what-gc-collect-cycles-actually-frees-and-why-it-sometimes-frees-nothing-5e567408d7ca?source=rss----a648dc4ecb66---4", "published_at": "2026-09-20T20:46:01+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656ac3d2a16", "title": "Laravel Just Shipped Native Vector Search for MariaDB. If You’re on MySQL, You’re Locked Out", "url": "https://towardsdev.com/laravel-just-shipped-native-vector-search-for-mariadb-if-youre-on-mysql-you-re-locked-out-f8313228e462?source=rss----a648dc4ecb66---4", "published_at": "2026-09-19T20:46:01+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656ad2d384e", "title": "Monolithic vs Microservices Architecture: Choosing the Right Approach", "url": "https://towardsdev.com/monolithic-vs-microservices-architecture-choosing-the-right-approach-401889110fe5?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T20:46:01+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656ad9f56e1", "title": "I Built 21 Free Tools That Send Your Data Nowhere — Here’s Why", "url": "https://towardsdev.com/i-built-21-free-tools-that-send-your-data-nowhere-heres-why-b39294fd4226?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T12:07:15+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656ade0a64c", "title": "Building a Circuit Breaker from Scratch in Java & Spring Boot-Making Our Load Balancer More…", "url": "https://towardsdev.com/building-a-circuit-breaker-from-scratch-in-java-spring-boot-making-our-load-balancer-more-85cabb6ab042?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T12:07:10+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656aec6496e", "title": "Ctrl-Click vs. Magic — Macropay-Solutions PHP Ecosystem", "url": "https://towardsdev.com/ctrl-click-vs-magic-macropay-solutions-php-ecosystem-ce32429df6f7?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T12:07:06+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656aef0e701", "title": "Pattern #007: Moving / Rolling Windows in SQL", "url": "https://towardsdev.com/pattern-007-moving-rolling-windows-in-sql-39f153cd9027?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T12:07:02+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656afbf0222", "title": "ColdFusion ConfigMap Updates Not Applied Without Pod Restart", "url": "https://towardsdev.com/coldfusion-configmap-updates-not-applied-without-pod-restart-bca745b945b2?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T12:06:04+00:00" }, { "id": "01a0d483-aacb-71d2-9c37-8656b01c95be", "title": "ColdFusion RabbitMQ Message Acknowledgment Failures", "url": "https://towardsdev.com/coldfusion-rabbitmq-message-acknowledgment-failures-7bac7fb1c3f3?source=rss----a648dc4ecb66---4", "published_at": "2026-09-18T12:05:58+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7ca9bdfbad", "title": "The Bigger Opportunity: LangGraph Can Help You Make Money", "url": "https://towardsdev.com/the-bigger-opportunity-langgraph-can-help-you-make-money-763cc807d402?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T22:16:01+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7caa357761", "title": "API Security Explained: 7 Proven Techniques to Protect Your APIs", "url": "https://towardsdev.com/api-security-explained-7-proven-techniques-to-protect-your-apis-021e6e10d2a9?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:14:10+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7caa509f95", "title": "MCP Just Changed. Here’s What .NET Developers Actually Need to Know", "url": "https://towardsdev.com/mcp-just-changed-heres-what-net-developers-actually-need-to-know-50c76f0f7a9d?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:13:34+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7caadca725", "title": "ColdFusion CFML Calling Java Module Fails With Module Access Error", "url": "https://towardsdev.com/coldfusion-cfml-calling-java-module-fails-with-module-access-error-1f152764ccdf?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:13:31+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7cab8017cd", "title": "How Graph Databases Actually Store Data", "url": "https://towardsdev.com/how-graph-databases-actually-store-data-e44981db3709?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:13:26+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7cac597bd5", "title": "Sentinel vs Cluster: The Redis Decision Nobody Explains Well", "url": "https://towardsdev.com/sentinel-vs-cluster-the-redis-decision-nobody-explains-well-da43ed387da0?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:13:22+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7cacf4d560", "title": "Spring Boot + MCP: Build an AI Tool Server in Java That Can Actually Do Things", "url": "https://towardsdev.com/spring-boot-mcp-build-an-ai-tool-server-in-java-that-can-actually-do-things-ba8792e60fb1?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:13:18+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7cad299814", "title": "Your Spring Boot Logs Can’t Tell You Why Production Is Slow — Here’s What You’re Missing", "url": "https://towardsdev.com/your-spring-boot-logs-cant-tell-you-why-production-is-slow-here-s-what-you-re-missing-9e91c2488fff?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:13:15+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7cae23f16e", "title": "I Built an AI Agent with Spring Boot — Here’s the Production Architecture", "url": "https://towardsdev.com/i-built-an-ai-agent-with-spring-boot-heres-the-production-architecture-554ea753a71d?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:12:44+00:00" }, { "id": "01a094b0-7f85-7224-9fd5-0f7caec38bce", "title": "Postgres Is My Queue, My Cron, and My Search Engine. Fight Me", "url": "https://towardsdev.com/postgres-is-my-queue-my-cron-and-my-search-engine-fight-me-a1739b24fb46?source=rss----a648dc4ecb66---4", "published_at": "2026-09-11T06:12:25+00:00" }, { "id": "01a084ca-c924-7044-aa7f-6aa73d800cb5", "title": "What and Why MCP?", "url": "https://towardsdev.com/what-and-why-mcp-1722b0da9f84?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T21:06:01+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a01011ee", "title": "Frontend System Design: Pagination — Part 2", "url": "https://towardsdev.com/frontend-system-design-pagination-part-2-040c3e230ce5?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:55:24+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a03748ca", "title": "What Android Studio’s “Migrate to Gradle Daemon Toolchain” Notification Actually Means", "url": "https://towardsdev.com/what-android-studios-migrate-to-gradle-daemon-toolchain-notification-actually-means-8dbc7925b540?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:55:21+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a09137cf", "title": "Stop Using REST for Everything — Why Spring Boot Developers Are Moving to gRPC", "url": "https://towardsdev.com/stop-using-rest-for-everything-why-spring-boot-developers-are-moving-to-grpc-057d3d70affe?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:55:18+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a18e4d43", "title": "Your Spring Boot API Can Be Hacked Through Its HTTP Client — SSRF Explained", "url": "https://towardsdev.com/your-spring-boot-api-can-be-hacked-through-its-http-client-ssrf-explained-78ebd55d7a9e?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:55:15+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a24a8374", "title": "Spring Boot 4 Migration: 15 Breaking Changes That Can Break Your Production App", "url": "https://towardsdev.com/spring-boot-4-migration-15-breaking-changes-that-can-break-your-production-app-935ae9a33894?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:54:51+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a31f0412", "title": "Building a Retry + Fallback Strategy for a Custom Load Balancer in Java & Spring Boot", "url": "https://towardsdev.com/building-a-retry-fallback-strategy-for-a-custom-load-balancer-in-java-spring-boot-2f056eedf1ae?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:54:48+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a3f1cd34", "title": "The Terminal Is Getting Weird Again", "url": "https://towardsdev.com/the-terminal-is-getting-weird-again-443cbc81507f?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:54:45+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a3fbe5dc", "title": "Your GitHub Actions security gate might not be a gate", "url": "https://towardsdev.com/your-github-actions-security-gate-might-not-be-a-gate-ec510b18f0ac?source=rss----a648dc4ecb66---4", "published_at": "2026-09-08T12:54:40+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a40c5813", "title": "Handling File Uploads in Express with Multer", "url": "https://towardsdev.com/handling-file-uploads-in-express-with-multer-928b71ab7ab8?source=rss----a648dc4ecb66---4", "published_at": "2026-09-07T21:51:00+00:00" }, { "id": "01a08219-dcc7-728b-82e3-1d90a43eeb19", "title": "Choosing the Right Amazon Cognito Authentication Flow: SRP vs.", "url": "https://towardsdev.com/choosing-the-right-amazon-cognito-authentication-flow-srp-vs-2e6cee1aeae6?source=rss----a648dc4ecb66---4", "published_at": "2026-09-06T20:36:01+00:00" } ] posts Claim your blog
Back to Towards Dev
Blog · corpus.blog/blogs/towardsdev.com/posts

Towards Dev

towardsdev.com

2026