Shaaf Syed's Avatar

Shaaf Syed

@shaaf.dev

Architect, developer, 🐧 β˜•οΈ , ❀️, open source enthusiast, technical editor @InfoQ, 🏏 coach. @shaaf@fosstodon.org

158
Followers
52
Following
484
Posts
30.10.2024
Joined
Posts Following

Latest posts by Shaaf Syed @shaaf.dev

Preview
Two Essential Patterns for Building MCP Servers When building Model Context Protocol (MCP) servers, I learned two critical design patterns the hard way. What started as a straightforward implementation of a Keycloak administration server quickly…

When I started building my first MCP server, I had a tool explosion to the point where the tool would tell me I was over the limit. This made me restructure the bits. Here are two patterns that I used
#Java #Keycloak #MCP
shaaf.dev/post/2026-01...

08.01.2026 21:02 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

Looking forward to speaking at Devnexus again this year. together with @danieloh30.bsky.social

08.01.2026 18:16 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Keycloak MCP Server: Manage Identity with Natural Language There is always a distinct thrill in learning something new and immediately putting it to the test. My journey with Model Context Protocol (MCP) servers began with a basic β€˜books API’ demo, but I…

An #MCP server for Keycloak IAM, supporting over 45 operations, including user management and realm configuration. Version 0.3 adds JWT authentication, SSE transport, Kubernetes support, containerization, health checks, and Prometheus metrics.https://shaaf.dev/post/2026-01-02-keycloak-mcp-server/

02.01.2026 19:21 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
JUnit 6.0.0 Ships with Java 17 Baseline, Cancellation API, and Kotlin suspend Support Introducing JUnit 6.0.0: a transformative update that unifies versions, elevates minimum requirements to Java 17, and introduces streamlined support for Kotlin suspend tests. Enjoy enhanced testing pe...

Introducing JUnit 6.0.0: a transformative update that unifies versions, elevates minimum requirements to Java 17, and introduces streamlined support for Kotlin suspend tests. Enjoy enhanced testing performance with the new CancellationToken API, built-in JFR listeners and many moreβ€”migrate today!

27.10.2025 19:16 πŸ‘ 13 πŸ” 9 πŸ’¬ 0 πŸ“Œ 0
Vite: The Documentary
Vite: The Documentary "If you're using a JavaScript framework, you're probably using Vite." Created by Evan You (the mind behind Vue.js), Vite began as a frustrated response to slow build times with Webpack. What started…

It’s all starts with fixing a simple thing 🀩
Vite: The Documentary youtu.be/bmWQqAKLgT4?...

16.10.2025 02:02 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Complete local setup development guide for Konveyor Analyzer-lsp πŸš€ Build, test, and develop Kantra rules locally with full JDT-LS and multi-language provider support Modernizing large, complex codebases is a significant challenge. Identifying migration blockers,…

A comprehensive guide for setting up and executing rules with Kantra on your machine #Konveyor #CNCF
shaaf.dev/post/2025-09...

08.09.2025 10:48 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Behind Every β€œSmart” AI Tool Lies a Human Cleaning Up Its Chaos As artificial intelligence platforms flood the internet with β€œsloppy” output, a growing number of human workers are being called upon to fix AIs errors, from clunky code to cringe-worthy art. Once…

Behind Every β€œSmart” #AI Tool Lies a Human Cleaning Up Its Chaos m.economictimes.com/ai/ai-insigh...

06.09.2025 19:47 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
The Hidden Vulnerabilities of Open Source Exhausted volunteers maintaining critical infrastructure alone. From personal experience with contributor burnout to AI-powered future threats, here’s why our digital foundation is crumbling.

A lot of work goes into open-source projects, mostly run by enthusiasts, passionate people. They came across a problem and solved it for all of us. And now with things like #LLMs, the job gets harder. fastcode.io/2025/09/02/t...

03.09.2025 14:12 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
My first 6 hours with Rust TLDR; I took a day off from work today, although still most of my time I ended up doing my travel expenses. Talk about priorities. I am the one to blame here totally. πŸ˜„ So come around lunch time,…

Learning languages is always fun πŸ”‹ 🀩
I spent some time investigating #rust as a #java developer.
shaaf.dev/post/my-firs...

02.09.2025 18:04 πŸ‘ 3 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Post image

Not so far #Java 25. "2025/09/16"
openjdk.org/projects/jdk...

01.09.2025 09:51 πŸ‘ 3 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Python: The Documentary | An origin story
Python: The Documentary | An origin story This is the story of the world's most beloved programming language: Python. What began as a side project in Amsterdam during the 1990s became the software powering artificial intelligence, data…

Wow. This was an interesting documentary about #python and its open source roots.

youtu.be/GfH4QL4VqJ0?...

29.08.2025 18:20 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
We must fight age verification with all we have Age verification laws exploit the moral panic over social media and mental health to repackage old censorship tactics under the guise of protecting children.

Impact: Systematic discrimination, lack of access to information and free speech.

www.usermag.co/p/we-must-fi...

27.08.2025 23:03 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Think in Graphs, Not Just Chains: JGraphlet for TaskPipelines πŸš€ JGraphlet is a tiny, zero-dependency library for building task pipelines in Java. Its power comes not from a long list of features, but from a small set of core design principles that work together…

Directed Acyclic Graphs (DAG), tiny, no dependencies, task pipelines in just #Java.
shaaf.dev/post/2025-08...

27.08.2025 15:00 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - sshaaf/keycloak-mcp-server: An MCP server for Keycloak, designed to work with Keycloak for identity and access management, covering, Users, Realms, Clients, Roles, Groups, IDPs, Authentication. Searching keycloak discourse, Native builds available. An MCP server for Keycloak, designed to work with Keycloak for identity and access management, covering, Users, Realms, Clients, Roles, Groups, IDPs, Authentication. Searching keycloak discourse, ...

Now includes Tools for IDP, Authflows, and integration with Keycloak discourse.
Built with ❀️ for the #Java and #Quarkus community
github.com/sshaaf/keycl...

26.08.2025 12:00 πŸ‘ 4 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

Diving deeper into concurrency! learning and enjoying this latest #java book from @bazlur.ca

22.08.2025 06:24 πŸ‘ 3 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
AI Is a Mass-Delusion Event Three years in, one of AI’s enduring impacts is to make people feel like they’re losing it.

"Good enough has been keeping me up at night. Because good enough would likely mean that not enough people recognize what’s really being builtβ€”and what’s being sacrificedβ€”until it’s too late ..".
www.theatlantic.com/technology/a...

19.08.2025 08:28 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Invitation Is All You Need Ben Nassi*^, Stav Cohen^, Or Yair' *Tel-Aviv University, ^Technion, 'SafeBreach

Security is a common denominator under the ignorance headline! In all new technology advancements; Is that we do not understand the security implications of what we create or we just don't care.
sites.google.com/view/invitat...

18.08.2025 20:27 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
VW introduces monthly subscription to increase car power The German car-maker says its "optional power upgrade" is designed to give customers more choice.

β€œYou get what you see..”. Maybe that was true for *old cars. Now with software upgrades you get new features you never knew existed. Will there be an #opensource car please..

www.bbc.com/news/article...

17.08.2025 21:45 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Some users report Firefox scoffing CPU power : You guessed it: looks like it's a so-called AI

browser.ml.chat.enabled=😬
β€œFirefox now uses a local AI model to read your open tabs' titles and descriptions to suggest more tabs and group names. Everything happens on your device.”

www.theregister.com/2025/08/13/f...

15.08.2025 21:42 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
AI slop and the destruction of knowledge This week I was looking for info on what cognitive scientists mean when they speak of β€˜domain-general’ cognition. I was curious, because the nuances are relevant for something I am researching at t…

β€œWe must protect and cultivate the ecosystem of human knowledge. AI models can mimic the appearance of scholarly work, but they are (by construction) unconcerned with truthβ€”the result is a torrential outpouring of unchecked but convincing-sounding β€œinformation”. At best, such…”

wp.me/p9QQJV-nb

14.08.2025 21:33 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Hah. Always the best feeling.. when this happens πŸ™‚

14.08.2025 20:21 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Build a Sentiment Analysis API in Java with Quarkus and Local LLMs No cloud. No API keys. Learn how to classify text sentiment using Quarkus, Langchain4j, and Ollama.

Protect user privacy while analyzing emotions. Learn how to build a fully local sentiment analysis service using Quarkus, LangChain4j, and Ollamaβ€”no API keys, no external dependencies. #LocalLLM #DevOps #Java

buff.ly/VWHoh8I

10.08.2025 13:39 πŸ‘ 8 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0
Post image

Wow! thats a lot of code, and #AI fixed everything!!
But then the dust settles, maybe time to learn all that was fixed and review πŸ˜€

06.08.2025 15:03 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - sshaaf/keycloak-mcp-server: An MCP server for Keycloak, designed to work with Keycloak for identity and access management, covering, Users, Realms, Clients, Roles, Groups, IDPs, Authenticati... An MCP server for Keycloak, designed to work with Keycloak for identity and access management, covering, Users, Realms, Clients, Roles, Groups, IDPs, Authentication. Searching keycloak discourse, ...

An MCP server for Keycloak built for development use cases.
#Java #Quakrus

github.com/sshaaf/keycl...

04.08.2025 07:59 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Neovim for Java Developers: A Match is made πŸš€ Are you a Java developer who is mesmerized by the power and efficiency of Vim? Do you want to try your development experience to the next level? I mean hands-off the mouse style! If so, you’re in for…

My quest for a "hands-off the mouse" Java IDE using Neovim is on! πŸš€

I created the neovim4j repo to share my setup. It's a work in progress, and I'd love your feedback or contributions. Check it out!

#Java #Vim #Neovim #Developer
shaaf.dev/post/2025-07...

17.07.2025 10:42 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Static Code analysis tutorial with Konveyor and Kantra part - 1 Konveyor Kantra CLI is a command-line tool for analyzing and transforming application source code to aid modernization and migration. It performs static code analysis to detect issues. Kantra can…

Explore Konveyor's Kantra CLI, a command-line tool for analyzing source code to aid updates and migrations. Discover its features and advantages in this detailed blog series.
#Java @Konveyor_io
shaaf.dev/post/2025-07...

15.07.2025 08:29 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Migrating JavaEE apps using Generative AI and Konveyor AI Konveyor AI is a tool used to migrate Java applications to different Java frameworks, such as from JavaEE to Quarkus or Spring or from Spring 5 to 6, using Generative AI and static code analysis. I…

Participating in the #WeAreDevs #WWC25 was a fantastic experience. Check out this blog post and video to kickstart your journey with Konveyor AI: shaaf.dev/post/2025-02...
shaaf.dev/post/2025-02...

13.07.2025 08:01 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Navigating Application Modernization - Leveraging Gen-AI This talk presents an approach that utilizes static code analysis using Konveyor.io (CNCF Sandbox project) coupled with Large Language Models (LLMs) to …

I am grateful to everyone who participated in my presentation today. You can access the slide deck from my talk here: ο»Ώspeakerdeck.com/sshaaf/navig.... Furthermore, our community page is available at: https://konveyor.io/.

11.07.2025 12:02 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Learn about migrating #Java applications using Gen-AI and static code analysis.
Join me at Stage 6 #WeAreDevs #WWC25 "Navigating Application Modernization - Leveraging Gen-AI" @RedHat #devNation

11.07.2025 06:01 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Post image

Join me at #WWC25
Combining static code analysis with LLMs for seamless automated code transformation! Using β€œKai,” we pinpoint & resolve code issuesβ€”no fine-tuning required. See how to migrate legacy apps to Kubernetes with prompt engineering & RAG. Live demo included! #Kubernetes #AI #CNCF #Java

10.07.2025 08:01 πŸ‘ 5 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0