Keywords: Vibe coding, Windsurf, IRIS, TIE
Why not?
Has anyone not been trying "vibe coding" so far? Even merely 3 years ago, if anyone asked
- "Could I do IRIS implementation for NHS TIE in English or Spanish just Chinese ?", or
- "Can I just instruct TIE in English to build itself an e2e route, to pick up a PDF report then turn into ORU/MDM message and submit into the PAS ?",
- "Could we query IRIS database in English only, and build up dashboard or ad hoc report of my own by English instructions?"
you would probably have laughed, tried not to be offended, found a chair and started to count how many man*days or man*weeks just those analysis/SoW/requirement/design/test/service docs would take, as well as hands-on engineering efforts.
Yet as the foundation models leaping and progressing, it certainly gets more realistic by today.
I also wish to know how others are playing with it. Below just a rushed-up casual note from myself.
Scope:
- IDE: Windsurf (yes it's still there) or Cursor etc (about 20+ popular/powerful ones now) or just VSCode with such extensions.
- VSCode Extension: Intersystems IRIS Extension Pack
- TIE Server: IRIS Health Connect
- CVS Repo: Github/Gitlab
- OS: Windows or MacOS
Nothing unusual here.
The proper approach?
By end of 2025 the popular fashion would be "multi-agentic AI ecosystems", "Remote MCP with enterprise security", DSPy-alike features, LLMLite-alike gateways, legacy RAG or GAG, and "self-evolving systems" like AlphaEvlve style evaluators. We might need some feature engineering like them, however hope we can exchange such designs next time.
But in the meantime, is there also a lightweight approach with minimum engineering overhead, mostly surfing on LLM's evolving capabilities?
The minimalism approach?
Or, the short list in the scope might be sufficient to start with?
1. Download and install Windsurf
I happened to use Windsurf for a year now - no particular reason, but just was impressed by its auto-execution at very first try.
No - it's not fading away yet, I am still using its Pro subscription. But free version using its free models would work too.
Download Windsurf Editor and Plugins | Windsurf
When it runs
.png)
2. Install Intersystems IRIS Extension Pack
Various Intersystems extensions are all helpful but for this one this single pack would be sufficient to start with for all "vibe coding" needs.
.png)
3. Connect into IRIS server
Click the Intersystems icon on IDE's left toolbar, connect into an IRIS server. Explore its namespaces, and open some Projects to explore.
I happened to use IRIS 2022.x but newer version would all work.
.png)
4. Move the IRIS project package(s) into workspace
Click the Explorer icon on left toolbar to open Workspace, then simply pick some IRIS project and drag-and-drop it into your local workspace within the IDE.
This step is simple. But it helps - it would move those IRIS service items (classes, schema and lookup tables etc) into current local working folder being used by Windsurf etc, so it can find these files and start to work on them per your instructions in English etc on the right chat panel, called "Cascade" in Windsurf.
.png)
5. Start the vibe coding any tasks
Now, you can do anything with really simply or comprehensive instructions in any natural language, for any quick customer demands, brief demos, or real-world enterprise grade NHS clinical requirements.
I normally just set the Cascade to "Code" mode instead of "Chat", then select a free LLM such as GPT5.1 ().png)
6. What could we try now?
Why don't we try some quick asks as listed in the initial "Why Not" use cases? Or any use case throughout the release life--cycle of a real-world requirements, such as
- Analysis: Ask it to conduct a comprehensive code analysis and reverse it to a detailed design or implmentation guide in MD format?
- Productisation and reusability: State your new clinical requirement, and ask it to search through all available project repo items to identify anything similar that could be reused or refactored?
- Implementations: Ask it to do new TIE implmentation for you, by stating specific requirements, such as changing PAS or RIS providers by attaching the new vendor's interface specs and sample messages?
- Documentation - requirement spec, design spec, test spec, plans, and services specs: Ask it to do proper requirements or architecture design docs with embedded drawings for you, per your organisation's template or outlines?
- Development: Develop a new web app by CSP for a bespoke message search tool on IRIS, or display a nice dashboard in React then connect into IRIS?
- Tests: Ask to generate some auto-executable Unit/System/Integration/RFO/NFR test script coverages for you.
- Supports: Ask it to look into the IRIS message logs and identify issues
- Release Management and Change Control: Ask it periodically check in mini releases and code/config changes into GitHub or Gitlab, or any legacy CVS you got. You don't even need Git experiences - just by English to the most tricky git operations including merge?
- DevOps: Create a Gitlab CI pipeline that auto provision into EKS or AKS? It could assist well too.
You can add in your own MCP servers for IRIS DB or local resources etc, or even your local RAG and KAG etc APIs wrapped in remote MCPs, but you don't have to. Windsurf has its own built-in "agentic AI capabilities", which are actually more generalised than normal enterprises' in-house tools.
In today's AI/GenAI world, minimalism is not less capable than those heavily engineered or over-engineered in-house agentic AI solutions, in most real-world enterprise use cases, which turn out more costly and difficult to grow with the evolving fonudation models. It probably sounds somehow similar to investment probably - most of the actively managed funds actually perform worse than major indexes.
6. Data Governanceds
Be aware of data compliance requirements as usual. A good practice is to start with your local dev instance outside controlled data environemnts, to make sure only codes, configs and docs are provisioned. Starts with some fun - why not.
7. Outcome quality
The engineering quality depends on yourself, the engineer, more than the LLM.
One frequent quote is: Terrence Tao (a Satanford math professor) could use ChatGPT to assit him solving some real math challenges. Can we, given exactly the same tool? No, we can't. We don't even understand the problem, let along solution approaches and options.
The same is to Healthcare Interopreability or IRIS implementation. It won't replace anyone by today, (thank God), it only amplifies your specialty. If you are en experienced archietct, it makes you a lot more efficient - deliver a few design docs with quality in a day, rather than each in a few days or weeks, because you know what the ourcome should look like. If you are a COS specialist, it can code in your style with much more productivity, because you have a lot reuable code repos of high quality from the past.
Reflections?
- Intelligence is being outsourced now, just like Computation was being oursourced 15 years ago. It sounds scary. It's another topic whether we trust a handful of unicorns really own the Intelligence as a Service for everybody.
- AI/GenAI starts to bridge up the abyss among human and machine languages. That opens all possibilities - some would sound crazy.
- This post doesn't touch on the self-evolving software yet. Yet again, it would still depend on our own optimisation targts; your own capability.
- By today it still doesn't do COS as well as you would hope (it's not LLM's fault - don't blame it). But LLM also turns out to be a pretty good logical abstractor, so if you have established code bases with good quality, ask it to reuse/refactor/refer to them. It worked well for me.
- Don't over-engineer in-house solutions - think more about strategy while still diving-in for fun. Minimulism is not necessarily less effective than over-engineered agentic solutions in AI/GenAI world. Sometimes we want to build the boats that surf the seas and get us somewhere, instead of creating rigid structures that stuck on the sea bed waiting for being submerged by rising sea levels, particualrly today's transfomer based LLMs are still bad at engineering certainty and consistency.
Apologies in advance if anyone else mentioned the above already. It might look too simple, too bare and too basic to start with, without any fancy tricks, yet I had so many discussions on topics, so think it might be helpful to record them just in case some have to be repated all the time. Anyway. It's pretty hard today to identify anything that can't be assited by AI at all; and it's certainly one of the few posts I typed in manually over the past 2-3 years.
I assume the 10 means 10 year anniversary - congratulations. This is certainly one of my favorite community - found quick answers to so many issues, and a lot eaiser to edit/publish some quick notes than Medium.
.jpg)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)