After dismissing Java for eight years as a “passing trend for developers who couldn’t handle real programming,” one developer’s 25-year journey reveals how Java evolved from a language he distrusted to the foundation of his career, and why he believes it’s still one of the most valuable investments you can make in 2025.
-
Understanding MCP Through Raw STDIO Communication
Table of Contents Deep Dive into the Model Context ProtocolUnderstanding MCP Through Raw STDIO CommunicationWhy STDIO? The Power of Universal CommunicationUnderstanding the JSON-RPC Message FlowClient → Server: Initialization RequestServer → Client: Initialization ResponseThe Message Type HierarchyBidirectional Communication: Beyond Request-ResponseThe Complete …
-
Foojay Podcast #75: JCON Report, Part 4 – Tips and Tricks for Java Devs
Table of Contents VideoPodcast (audio only)Content This is the final part of the JCON 2025 interviews with a lot of tips and tricks! In the three previous podcasts, we featured interviews from the JCON conference on “Being a better Java …
-
GenAI blood, sweat, and tears: Loading data to Pinecone
Table of Contents Getting startedIssue #1: APIs, SDKs, and rapid changeIssue #2: ConfigIssue #3: JSON formatIssue #4: Loading data to Pinecone1. Metadata keysAlternative embeddings – Book descriptionsWrapping up!Resources As someone who is pretty familiar with relational and graph databases, I …
-
Optimizing the Garbage Collector when Migrating Cloud Workloads
Table of Contents Why GC Tuning Matters on ArmOpenJDK VersionChoosing the Right Garbage CollectorHeap Size and GC Pause TimeAdaptive Heap SizingClosing the feedback loopDeveloper Education for the Java CommunityNeed Assistance from Experts? Introduction to Java on Arm You might associate …
-
Sliding Window Log Rate Limiter (Redis & Java)
Table of Contents How It Works1. Define a Time Window2. Track Requests3. Remove Expired Entries4. Rate Limit CheckHow to Implement It with Redis and Java1. Log Each Request (If Allowed)2. Remove Expired Entries3. Count Requests in the Time WindowImplementing it …
-
Fixed Window Counter Rate Limiter (Redis & Java)
Table of Contents How It Works1. Define a Window Interval2. Track Requests3. Reset Counter:4. Rate Limit Check:How to Implement It with Redis and Java1. Use the INCR command to increment the counter in Redis each time a request is allowed2. …
-
Foojay Podcast #64: Interviews at JFall about open source, OpenJDK evolutions, Project Loom, JVM, and more!
Table of Contents VideoPodcast (audio only)GuestsContent Let’s wrap up this year with more interviews from the JFall conference. In this episode you’ll learn more about Foojay, JVM internals and writing your own programming language, Project Loom and structured concurrency, learning …
-
Exploring New Features in JDK 23: Module Design Pattern with JEP-476
Table of Contents Module design pattern before Java 9Pushing modularization forward with JEP-476ConclusionReferences Although the module design pattern can be implemented in many different ways, the main motivation behind using it remains the same. This is the isolation of a …
-
Exploring New Features in JDK 23: Just-Write-And-Run prototyping with JEP-477 not only for beginners
Table of Contents It seems like it’s never been easier to start writing a simple program that can be turned into a more advanced one as development progresses. Let’s explore possibilities delivered by JDK 23 release.Analyzing, Parsing and understanding dataConclusionReferences …
-
Book Review: Mastering the Java Virtual Machine
Table of Contents Part 1: Understanding the JVMPart 2: Memory Management and ExecutionPart 3: Alternative JVMsPart 4: Advanced Java TopicsConclusionRecommendation Otávio Santana’s “Mastering the Java Virtual Machine” takes readers on an insightful journey through the inner workings of the JVM. …