Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ Resilience by Design - Business Continuity Through Secure Backup @ Ready 2025
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
⏯ Resilience by Design - Business Continuity Through Secure Backup @ Ready 2025
With InterSystems industry-standard certification exams, you and your team can get certified to validate your skills and demonstrate your expertise in InterSystems technology. Find the right exam for your role!
READY is right around the corner, and this year the Application Services team from InterSystems will be hosting a Embedded Git Users GroupMeeting during the conference!This will be held Thursday, April 30th during breakfast from 7:30 – 8:30 (breakfast will be served at the meeting room starting at 7:00am).
Hi Community,
The InterSystems Learning Website has many important iterative courses.
READY is right around the corner, and this year the Application Services team from InterSystems will be hosting a CCR Users GroupMeeting during the conference!This will be held Wednesday, April 29th during breakfast from 7:30 – 8:30 (breakfast will be served at the meeting room starting at 7:00am).
The 2025.1.4 and 2024.1.6 maintenance releases of InterSystems IRIS® data platform, InterSystems IRIS® for HealthTM, and HealthShare® Health Connect are now Generally Available (GA). These releases include the fixes for a number of recently issued alerts and advisories, including the following:
I'm starting to play more with AI enabled coding.
I've been using Github Copilot inside Visual studio code, which is very good at coming up with autocomplete suggestions that are accurate and useful. (Along with some utter rubbish, naturally).
For web development I'm starting to use Claude Code in VS Code to help create web sites and integrations. I want to see how it can help with IRIS development.
However I can't get claude to read any iris code directly as I'm connected to my server via isfs server connections.
|
Alert ID |
Product & Versions Affected |
Risk Category & Score |
Explicit Requirements |
|
IF-9262 |
InterSystems IRIS® for Health InterSystems Health Connect™ versions |
System Stability Concern: 5 (High) |
FHIR and Health interoperability issues may cause upgrade failures and unexpected or adverse product behavior. |
One of the newest features of .Net core 10 with C# 14 is the file-based apps. This feature allows you to execute C# code in a simple .cs file without the need to create a solution, a project, or any of the related structure.
For example you can create a script.cs file using the notepad with the content:
Console.WriteLine(“This is a script in c#.”);Then in the command line or the terminal you execute the command:
dotnet run script.csThere is plenty of information about this new feature of .net 10.
We didn't start with a big AI strategy.
We had a legacy InterSystems Caché 2018 application, a lot of old business logic, and a practical need: build a new UI and improve code that had been running for years. At first, I thought an AI coding agent would help only with a small part of the work. Maybe some boilerplate, some REST work around the system, and a bit of help reading old ObjectScript.
In practice, it became much more than that.
Hello community,
The Certification Team of InterSystems Learning Services is excited to announce the release of our new InterSystems EMPI Technical Specialist exam. This release is a fully refreshed and updated version of our previous HealthShare Patient Index Technical Specialist exam.
It is now available for purchase and scheduling in InterSystems exam catalog. Potential candidates can review the exam topics and the practice questions to help orient them to exam question approaches and content.
Before finding the best solution for Supply Chain, we need to understand what Supply Chain is. Well, regardless of the language used, the term is known by the name already mentioned. For your information, the translation in Brazilian Portuguese is "Cadeia de Suprimentos" (Supply Chain), sometimes also called "Cadeia Logística" (Logistics Chain), but we will not dwell on the nomenclature, but rather on the meaning.
Hi, every one. Again, it's me!!😀😀
Recently I was trying to organize some learning materials for InterSystems IRIS😆, and realized that the resources are actually quite scattered.🤐
So I put together a list here—grouped by categories—for anyone who:
Also adding some of my own experience on what worked (and what didn’t, may be only not work for me🤫🤐).
If you don’t know where to begin, start here:
While starting with Intersystems IRIS or Cache, developers often encounter three core concepts: Dynamic Objects, Globals & Relational Table. Each has its role in building scalable and maintainable solutions. In this article, we'll walk through practical code examples, highlight best practices, and show how these concepts tie together.
1. Working with Dynamic Objects:
Dynamic objects (%DynamicObject and %DynamicArray) allow developers to manipulate JSON-like structures directly in Objectscript. They are especially useful for modern applications that need to parse, transform or generate JSON.
Over the past year there have been a few DC articles offering MCP servers designed to connect to IRIS and help the AI features of VS Code and its cousins do a better job. For example:
I use cspa24.so Apache module to connect to IRIS. I have notified that idle Apache processes will always result in connections being kept open to the IRIS server, and thus some amount of IRIS processes being kept alive (and dedicated to those apache processes) because of those connections.
Eg: if I have 50 idle Apache processes, I will have 50 IRIS processes being kept alive in IRIS even if there is no client connection being made at that time.
It's even worse with multiple Apache nodes and a load balancer.
Disclaimer: the following tutorial attempts to install qpdf-12.2.0 and libreoffice-25.8.1 for HSCV2025.8
# 1. Download qpdf-12.2.0 AppImage programatically, or manually from https://github.com/qpdf/qpdf/releases/tag/v12.2.0
wget -O qpdf-12.2.0.AppImage https://github.com/qpdf/qpdf/releases/download/v12.2.0/qpdf-12.2.0-x86_64.AppImage
# 2. Make the AppImage executable
chmod +x qpdf-12.2.0.AppImage
# 3. Add executable to system PATH as “qpdf”
sudo mv qpdf-12.2.0.AppImage /usr/local/bin/qpdf
# 4. Verify you’re now running version 12.2.|
Advisory ID |
Product & Versions Affected |
Risk Category & Score |
Explicit Requirements |
|
IF-9396 |
InterSystems IRIS® for Health InterSystems Health Connect™ versions |
System Stability Concern: 3 |
Deployments with non-default path-prefixes will not serve FHIR Server UIs. |
Updated 14/04/26
Before you can start building with InterSystems IRIS, you need a working local or server installation. This guide walks through downloading the distribution and installing IRIS on Windows in a straightforward way, focusing on the steps and decisions that matter in a development setup.
I’ll cover where to get the appropriate version, what prerequisites to check before installing, and how to run through the installer on your platform. The goal is to get you to a clean, usable environment with minimal friction, so you can move on to writing code, exploring the data platform, and integrating with your existing tools.
To download a Community version, please read this article: How to get InterSystems IRIS Community Edition. It explains the different ways to obtain InterSystems IRIS Community Edition, highlighting options for local, containerized, and cloud-based setups. It shows how to use Docker to quickly pull and run a ready-to-use IRIS instance. You can also learn how to deploy IRIS in the cloud via marketplaces like AWS to avoid local installation. What's important here, this guide walks through downloading an install kit from the InterSystems Evaluation Service and selecting the right version and platform.
As part of a recent documentation technical project to optimize the search, I needed to use Embedded Python in my ObjectScript code. The main blocker was passing a Python list from a Python class method to a ObjectScript method. Sending the list by reference to the python method, populating it with the Insert() method, and returning the reference to the ObjectScript method resulted in an list with type %SYS.Python, a process that was straightforward but not efficient.
I explored an alternative method: converting a Python list to an ObjectScript list using JSON as the intermediary format.
This past weekend we ran into something odd. When we failed over our mirror from 2022.1.3 to 2025.1.3 the one of the Business Rules that was on what became the Primary (2025.1.3), had a rule within it that was removed back in January. When the Failover occurred, we had to scramble to backup, disable, and remove the Rule that shouldn't have been there.
Both the Data and Code live within the same IRIS.dat that is the main MIRROR database for that Namespace.
If this happened to one Class file, could it happen to others we do not know about?
READY 2026 is almost here, and we’re really curious to hear what everyone is looking forward to this year 🚀
What are you most excited about? It could be a topic you want to explore, a question you’re hoping to get answered or something you’re simply curious about.
Share your thoughts below! We’d love to hear what’s on your mind and see what others are excited about too 💬
Feel free to read through the replies and like the ones you relate to! 😊
Why do we need this?
Lack of Compiled Context: AI tools only see source code; they don't know what the final compiled routine looks like.
Macro Hallucination: Because AI doesn't see our #include files or system macros, it often makes them up, wasting time during debugging.
The Documentation Gap: Deep logic optimization often requires understanding internal macros that aren't fully covered in public documentation.
Manual Overhead: Currently, the only way to fix this is to manually use the IRIS VS Code extension to find the "truth" in the routine.
Hi Community,
In our two preceding articles, we explored the fundamentals of the Interoperability Embedded Python (IoP) framework, including message handling, production setup, and Python-based business components.
In this third piece, we will examine advanced methodologies and practical patterns within the IoP framework that are pivotal for real-world interoperability implementations.
We will explore the following topics:
✅ DTL (Data Transformation Language) in IoP
✅ JSON Schema Support
✅ Effective Debugging Techniques
Collectively, these features help us create maintainable, validated, and easily troubleshootable production-grade interoperability solutions.
Hey Community!
Have you attended one of the Global Summits or a previous READY 2025? We’d love your help to inspire others to join InterSystems READY 2026!
We’re inviting community members to record a short video (less than 1 minute) answering one or more of these questions:
Your authentic perspective helps future attendees understand the real impact of these events, beyond the agenda.
🎥 To record a short video, follow the link. No preparation needed.
Hi Community,
We're excited to invite you to the next Community webinar presented by George James Software, an InterSystems partner:
🗓️ Date & Time: Thursday, April 9th, 4 pm BST | 11 am EDT
The PACELC theorem was created by Daniel Abadi (University of Maryland, College Park) in 2010 as an extension of the CAP theorem (created by Eric Brewer - Consistency, Availability, and Partition Tolerance). Both help design how to architect the most suitable operation of data platforms in distributed environments under the aspects of consistency versus availability. The difference is that PACELC also allows analysis of the best option for non-distributed environments, making it the gold standard for considering all possible scenarios to define your deployment topology and architecture.
The CAP theorem states that in distributed systems, it is not possible to have consistency, availability, and partition tolerance simultaneously, requiring a choice of two out of three, according to the following diagram.

Source: https://medium.com/nerd-for-tech/understand-cap-theorem-751f0672890e
Hi Community!
We’re building a series of short, hands-on Instruqt tutorials to help newcomers get up to speed with InterSystems technologies faster and more effectively. To kick things off, we’ve just released a new tutorial, “Data Models of InterSystems IRIS,” covering the fundamentals of the IRIS multimodel approach. This is exactly the type of focused, concise, practical learning experience we want to expand. And this is where you come in!
We’d love to hear your ideas for other tutorial topics to help developers new to InterSystems IRIS take their first steps with confidence. Please welcome the new sweepstakes:
💡 Topics for hands-on Instruqt Tutorials 💡

hi 😊,
i'm able to LOAD DATA in IRIS from a rather complex, say Oracle's, query. It works pretty well but requires a target table created aforehand:
LOAD DATA FROM JDBC CONNECTION SOME_OTHER_SERVER QUERY 'complex query here' INTO TargetTableis there a way to base such target table on the same query ?
CREATE FOREIGN TABLE seems to require a column definition which I would prefer to be taken from the query
CREATE TABLE AS SELECT seems to be for local queries and other methods, like Linked Table Wizard or %SYSTEM.SQL.Schema.
Hi Developers!
Currently I have 2000+ lines in a class, and I think it's a lot already? What are the best practices?
if 10K lines OK? How do you cope with it? Please share?
