Now that IRIS 2021.1 is available as a preview version, I would like to demonstrate a "new" feature. The Java Gateway has been around for a while now but in 2021.1 it has new skills. External Language Servers are available for Java, DotNet, and Python. Here is a quick - very quick - demo of using the External Java Server. Please don't focus solely on what this demo is doing but rather on what is happening in this demo. First, I acquire a gateway connection oref. This gateway connection is connected to the External Java Server - one of the External Language Servers.
set java = $system.external.
Hello community,
First of all thanks for reading this post:
Because of you are more experienced, pragmatic, and have a lot of knowledge and good know-how; please consider to read and answer some question, if you would like:
Why did you choose to become a software engineer / developer?
How and when did you start to generate a "flow state of mind" during your career?
What are recommend habits inside and outside, during you own time and during your work time, to be focused during you coding session and daily tasks?
📍🙏📌Thanks for reading and answering
A Minute Of Laughter on the Developer Community with #InterSystemsMemes

Meme author: @Mathieu Delagnes
Have your own idea for a meme? Submit in this challenge on Global Masters.
I am aware that we have 5 License Units on Community Edition. But I have issues figuring out how it's working.
I have Community Edition
USER>write $system.License.KeyCustomerName() InterSystems IRIS Community
Freshly started system, only terminal session open, so, only one license units used, and 4 left. As expected
USER>write $system.License.LUConsumed() 1 USER>write $system.License.LUAvailable() 4
Quote from documentation - $SYSTEM.License.MaxConnections() returns the maximum number of connections a user can make while consuming one license unit.
USER>write $system.License.MaxConnections() 25
Has anyone had any success reading barcodes from PDFs or images in a Cache/IRIS application? I've been looking at some possible solutions for this, including the open source ZXing libraries. I know we have the ability to create them in Zen and Intersystems Reports, but as far as I know, there's nothing built in to actually read data from a barcode. If anyone has suggestions on how to go about this, I'd love to hear them.
In our specific case, we print reports with a Code 128 barcode on them.
I would say it is a post of pain after years of using InterrSystems IRIS Docker images in many projects.
And I hope InterSystems will hear me and do something with it.
We have a lot of issues with Docker images, but I see no progress in solving them.
- containers.intersystems.com - any new releases substitute previous versions, makes build useless
- ARM64 images have separate names, and it makes a pain to use them
- flags in iris-main, appears and disappears from version to version, which may fail the start the container
- healthcheck does not work as expected
What will the ideal learning path for a DataScience & AI aspirant ?
Hi,
Is there a nice cheat sheet for the IRIS command line (terminal) application?
Leet (or "1337"), also known as eleet or leetspeak, is a system of modified spellings used primarily on the Internet. It often uses character replacements in ways that play on the similarity of their glyphs via reflection or other resemblance. Additionally, it modifies certain words based on a system of suffixes and alternate meanings. There are many dialects or linguistic varieties in different online communities. Wikipedia
You'll have to translate a string into a LeetSpeak. As usual shortest solution wins.
Hi developers. I often miss the ZPM program on a clean system. Nothing complicated? Take and install. And in one line? Especially in a docker container. There is a solution. I'm very happy with it;) Maybe the line can be shortened?
set $namespace="%SYS", name="DefaultSSL" do:'##class(Security.SSLConfigs).Exists(name) ##class(Security.SSLConfigs).Create(name) set url="https://pm.community.intersystems.com/packages/zpm/latest/installer" Do ##class(%Net.URLParser).Parse(url,.comp) set ht = ##class(%Net.HttpRequest).%New(), ht.Server = comp("host"), ht.Port = 443, ht.Https=1, ht.Hi All,
I am preparing for InterSystems IRIS Core Solutions Developer Specialist Certification. I have completed the desired syllabus. Does anyone have any questions dumps. I have already completed the practice paper on Intersystems website.
I am going to take the IRIS Core Solutions Developer Specialist Certification at Global Summit on Monday. Anyone got any tips or suggestions?
Thanks
We need to send some coordinates to a spaceship through a laser beam. To do that we have to encode it, and beam it out into space. Your mission is to implement the encoder with a compression standard. As usual shortest solution wins.
Task
You will receive a string of comma-separated integers and you will return a new string of comma-separated integers and sequence descriptors.
In various tests I used both and found no real reason to prefer the one or the other.
Eventually I missed some limits. At least I didn't hit any.
What is the general opinion?
Where to use the one or the other?
An anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once. For example, the word anagram itself can be rearranged into nag a ram, also the word binary into brainy and the word adobe into abode. Wikipedia
You will receive two strings returning true if the two arguments given are anagrams of each other. As usual shortest solution wins.
I am sure I came across this in the past with Cache and just saw this again in IRIS.
When rebuilding or swapping a DAT file for a database it retains the Resource of the DAT file, not the Resource of the Database it is being used for.
For instance, if I have a local Database called APP with a resource %DB_APP and I want to refresh the data from another Database called TEST that has a Resource %DB_TEST I can just copy the DAT file from the TEST folder to the APP folder.
No Database settings are changed and it is all done with either IRIS down or the databases dismounted.
This year at Global Summit we will have several members of the InterSystems internal applications team (AppServices) on site to present topics of interest to developers. There will be General Sessions that we teach on a number of topics related to tools we're launching to the OEX, knowledge gained based on migrating our Caché app portfolio to InterSystems IRIS, best practices for following OWASP Top 10 with ObjectScript, and a survey of the application landscape offering services to our customers and prospects.
InterSystems has always provided -- with each maintenance release -- a document that describes all the changes in that maintenance release. This document is known informally as the relnotes or (now) the MRNotes*. Here’s a link to one of them, just to make sure we’re on the same page: https://docs.intersystems.com/iris20211/csp/docbook/relnotes/index.html
Could you please comment here and tell us if you use this document and how you use it and what you use it for?
We've been tasked with developing a file upload module as part of our wider system, storing scanned documents against a patients profile. Our Intersystems manager suggested storing those files in the DB as streams would be the best approach and it sounded like a solid idea, it can be encrypted, complex indexes, optimized for large files and so on. However the stake holder questioned why would we want to do that over storing them in windows folders and that putting it in the DB was nuts. So we were wondering what everyone else has done in this situation and what made them take that route.
New month, new code golf!
You will receive a string with a label code with numbers and letters. Our challenge is to check if this code begins with 1, 2, or 3 and ends with A, B, C, S, or R. It should return true(1) if so or return false(0) otherwise. As usual shortest solution wins.
##Input
"198739A79D9R"
##Output
1
##Note
- The string only contains numbers and upper-case letters. No other special characters.
- Use this code to check the solution length
- You also can use this test case here
Rules
- The signature of the contest entry MUST be:
Class codeGolf.Hi anyone hs any experience sharing with migrating from Oracle to IRIS? Thx!
Let's consider you would like to efficiently store your historical data in a similar structure than the one used for your current data, but without sharing the same physical storage (ie : not in the same global). What is the most efficient way to do it ?
Below a simple class of your current data :
Class data.current.person Extends (%Persistent, %Populate)
{
Parameter DEFAULTGLOBAL = "^on.
I am surprised with the performance (poor) of Native API for .NET
Following code (where ^testGlobal,node1 has 50 records) takes 5 seconds to run. Anyone else think there is room for the improvement?
string global = "^testGlobal";
object[] Subs = new object[1];
Subs[0] = "node1";
try
{
IRISIterator iter = iris.GetIRISIterator(global, Subs);
foreach (var item in iter)
{
Console.WriteLine((string)(iter.Hi, I’m recently decided to stay for some months in Dubai. And looking for new opportunities here, as well as even would like to meet in person with local people who works with InterSystems. I can share my knowledge and experience. What do you think? Do we have somebody from Dubai, or other from other parts of UAE?
You will receive a string of comma-separated integers whose elements have both a negative and a positive value, except for one integer that is either only negative or only positive, our challenge will be to find that integer. As usual shortest solution wins.
##Input
"1,-1,2,-2,3"
##Output
3
3has no matching negative appearance
##Note
- The only-positive or only-negative integer may appear more than once
- Use this code to check the result length
- You also can use this test case here
Rules
- The signature of the contest entry MUST be:
Class CodeGolf.For me the best moments were:
1 - Global Masters WON the 2021 Influitive BAMMIE Award for Most Passionate Community
2 - Tech Article contests
3 - InterSystems Programming Contests
4 - 10,000+ DC members
5 - Partner directory and business services
6 - 500+ applications on OEX
7 - Open Virtual Summits
8 - Prizes from GM points
9 - Free online learning courses
10 - Discord channels
11 - Innovations from IRIS Data Platform
12 - Multilanguage communities, including portuguese, spanish and chinese community
13 - Advent of Code
Hi developers!
We launched the datasets contest.
And one of the important questions that need to be covered is dataset licensing.
There are two general cases:
a) a dataset you take from another place in public Internet or private network/person.
b) a dataset you create by yourself or own for any other reason.
We decided to follow the principles and considerations that data.world site introduces for datasets' licensing.
I would like to watch a webseminar about debug objectscript techniques into vscode to rest api, productions and embedded python, specially using docker instances and remote servers.
Intersystems recently announced a partnership with unqork. I would like to know if someone already used this tool, or another tool, and how was the experience. Is there within the intersystems ecosystem (partners) any low-code tool that generates COS? Tks


