James Ward's Avatar

James Ward

@jamesward.com.bsky.social

Just another nerd with a podcast: happypathprogramming.com And a book: effectorientedprogramming.com

2,580 Followers  |  859 Following  |  115 Posts  |  Joined: 29.04.2023  |  2.2397

Latest posts by jamesward.com on Bluesky

I need to investigate running this on the new AgentCore Runtime. In the meantime I just deploy to ECS.

20.07.2025 02:00 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Structured Concurrency by @jamesward.com: Better cancellation & error handling in concurrent code. Covers Java/Kotlin/Scala approaches. Makes fan-out/fan-in easier! youtu.be/XOSR0Asq4h0?...

04.07.2025 12:03 β€” πŸ‘ 5    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
#112 AI Agents Get More 9's with Rod Johnson by Happy Path Programming Rod Johnson, creator of the Spring Framework, has created a JVM-based AI Agent framework called Embabel. We dive in and learn how enterprises can build more reliable Agents using deterministic plannin...

Podcast: creators.spotify.com/pod/show/hap...
Video: www.youtube.com/watch?v=kvIw...

03.07.2025 13:46 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

There has been a huge gap between the world of AI and enterprises' needs. In episode #112 of Happy Path Programming, @bruceeckel.bsky.social and I chat with Rod Johnson about his Embabel Agent Framework and how it helps improve reliability, cost, and other 'ilities when building agents.

03.07.2025 13:46 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 2    πŸ“Œ 0

I’d love to!

27.06.2025 14:11 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

Learn to keep your apps platform-agnostic, scale efficiently, and optimize deployment using Spring and Testcontainers in @jamesward.com ’s and @mmeckes.bsky.social ’s Devoxx UK 2025 talk "Write Once, Deploy Everywhere: From Containers to Serverless."

Watch here - buff.ly/iIlffzZ

03.06.2025 08:03 β€” πŸ‘ 8    πŸ” 3    πŸ’¬ 3    πŸ“Œ 0
Post image

Discover how #PklLang is redefining #InfrastructureAsCode!

Unlike complex #YAML, Pkl uses schemas & constraints for robust configuration management, catching errors early and providing clear feedback.

πŸŽ₯ Watch the video by Dan Chao (Software Engineer, Apple): bit.ly/43ptkpm

#Kubernetes #IaC

23.05.2025 12:59 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

You can use the Ollama models locally. If you do decide to uae Bedrock, check out the pricing and free tier.

21.05.2025 22:23 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

The actual body of the function is in the sample repo. Just left out for the purpose of the blog since it wasn’t relevant.

21.05.2025 22:21 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Spring AI 1.0 Brings AI to the Developer Masses Spring AI 1.0 has been released, enabling millions of developers to quickly and easily add AI to their Java and Kotlin systems.

The Spring AI 1.0 release is a total game changer for millions of developers, enabling them to easily integrate AI & MCP into their Java & Kotlin systems! Check out my blog about why this release is so monumental: community.aws/content/2xLk...

21.05.2025 11:51 β€” πŸ‘ 9    πŸ” 7    πŸ’¬ 2    πŸ“Œ 0
Write Once, Deploy Everywhere: From Containers to Serverless by James Ward & Matthew Meckes
YouTube video by Devoxx UK Write Once, Deploy Everywhere: From Containers to Serverless by James Ward & Matthew Meckes

Here is the recording of the "Write Once, Deploy Everywhere: From Containers to Serverless" presentation that @mmeckes.bsky.social and I did at @devoxx.uk
www.youtube.com/watch?v=8kgN...

16.05.2025 15:05 β€” πŸ‘ 9    πŸ” 3    πŸ’¬ 0    πŸ“Œ 0
A basic MCP server for testing - Built with Spring AI & Kotlin

This could go badly, but I've deployed a public MCP server for testing purposes. Built with Spring AI & Kotlin. Try it out: mcp-test.jamesward.com
Code: github.com/jamesward/he...

14.05.2025 14:58 β€” πŸ‘ 11    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
Preview
Sample-Model-Context-Protocol-Demos/modules/java-mcp-bedrock-agent at main Β· aws-samples/Sample-Model-Context-Protocol-Demos Collection of examples of how to use Model Context Protocol with AWS. - aws-samples/Sample-Model-Context-Protocol-Demos

Of course you can build a multi-turn MCP-based Agent on top of Amazon Bedrock Converse and the MCP Java SDK, just with a lot more code than abstractions (Spring AI, Quarkus, Langchain4j, etc). Here's the code:
github.com/aws-samples/...

12.05.2025 13:50 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Them: "You can build a multi-turn AI Agent connected to MCP servers in only 50 lines of code"
Spring AI: Hold my beer, now watch this:

30.04.2025 14:33 β€” πŸ‘ 8    πŸ” 2    πŸ’¬ 1    πŸ“Œ 0
#111 Wasm & MCP with Steve Manuel by Happy Path Programming We chat with Steve Manuel (of dylibso.com and mcp.run) about LLM "plugins" with Wasm & MCP (Model Context Protocol).Discuss this episode: ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠discord.gg/XVKD2uPKyF⁠⁠

MCP & Wasm are like peanut butter and jelly. In episode 111 of @happypathprogramming.com, we take some bites into the best AI sandwich ever made with @nilslice.bsky.social:
creators.spotify.com/pod/show/hap...

12.04.2025 18:38 β€” πŸ‘ 10    πŸ” 3    πŸ’¬ 1    πŸ“Œ 0
Preview
GitHub - aws-samples/Sample-Model-Context-Protocol-Demos: Collection of examples of how to use Model Context Protocol with AWS. Collection of examples of how to use Model Context Protocol with AWS. - aws-samples/Sample-Model-Context-Protocol-Demos

Just finished upgrading some AWS + Spring AI + MCP samples from Spring AI M6 to the new M7. Pretty straightforward but if you need a reference, check out the samples: github.com/aws-samples/...

11.04.2025 06:24 β€” πŸ‘ 8    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
#110 Unlocking Developer Productivity with Justin Reock by Happy Path Programming Justin Reock has spent a lot of his career thinking about how to help developers be more productive. In this episode we learn about the methodologies that can help developers spend more time in "flow ...

Had a great chat with Justin Reock from @getdx.bsky.social about developer productivity on Episode 110 of @happypathprogramming.com:
creators.spotify.com/pod/show/hap...

10.04.2025 18:39 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Building Agents with AWS: Complete Tutorial (Java, Spring AI, Amazon Bedrock & MCP)
YouTube video by AWS Developers Building Agents with AWS: Complete Tutorial (Java, Spring AI, Amazon Bedrock & MCP)

Check out the end-to-end video and the code:
www.youtube.com/watch?v=Y291...
github.com/aws-samples/...

09.04.2025 16:59 β€” πŸ‘ 16    πŸ” 3    πŸ’¬ 0    πŸ“Œ 0

I'm primarily a back-end developer and I've struggled to understand how to bring AI into my systems. Luckily I was able to sit down with @starbuxman.joshlong.com and learn about how Spring AI makes this all super easy, including integration with MCP servers and RAG with vector data.

09.04.2025 16:59 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 1    πŸ“Œ 1
Post image Post image Post image

The amazon-q-cli package is now in Nix unstable!

06.04.2025 21:55 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Spring Office Hours: S4E9 - Running MCP-Based Agents on AWS with James Ward
YouTube video by SpringDeveloper Spring Office Hours: S4E9 - Running MCP-Based Agents on AWS with James Ward

πŸ“£ Join us LIVE this Monday for Spring Office Hours S4E9!

We're excited to welcome @jamesward.com, Principal Developer Advocate at AWS, to discuss running MCP-Based Agents on AWS with Spring AI. Learn how to build AI applications using MCP and Nova.

πŸ”΄ Watch: www.youtube.com/watch?v=U5JD...

06.04.2025 14:23 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0

Thanks Christian and other Spring AI devs for making it so easy to work with Amazon Bedrock & MCP! Here is the corresponding video that @starbuxman.joshlong.com and I created: www.youtube.com/watch?v=Y291...
And the code: github.com/aws-samples/...

02.04.2025 15:09 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Post image

πŸš€ The MCP Java SDK core module provides default STDIO & SSE client/server transports - no external web frameworks needed!

Build MCP clients/servers in plain Java with both Async (Reactor) & Sync APIs. Spring support is optional.

πŸ”— Minimal deps: central.sonatype.com/artifact/io....

30.03.2025 13:45 β€” πŸ‘ 13    πŸ” 7    πŸ’¬ 0    πŸ“Œ 0

It'd actually make a good addition to my blog or followup to show what the corresponding DSL approach is and what the failure message looks like. :)

20.03.2025 04:24 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I probably need to add some prose in the blog to indicate that :)

20.03.2025 04:03 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Yes, but I needed a failing test to show what the output looks like when a test fails. :)

20.03.2025 04:02 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

ie the .find returns Person?

20.03.2025 03:33 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

The null on the find indicates the find failed to find Ralph. I like that this code is what I’d normally write, not something bespoke only for tests.

20.03.2025 03:32 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
assertTrue("Test DSLs" == "Legacy") Over decades in programming I’ve had a few moments where I make big paradigm shifts, finding it very hard to go back. One of these moments was with Functional Programming and my latest is the move fro...

For test DSLs it is pretty good. I just don't prefer DSLs for this anymore. :) Maybe y'all saw this already but I blogged about why a while back: jamesward.com/2023/09/20/a...

20.03.2025 00:43 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Has anyone made it so I can just use assertTrue in Java yet? (with good failure details like kotlin-power-assert / ZIO Test)

19.03.2025 15:24 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@jamesward.com is following 20 prominent accounts