Clear filter
Announcement
Olga Zavrazhnova · Feb 8, 2024
Hi Developers,
Our first Online Developer Roundtable of 2024 will take place on March 5th at 9 am ET | 3 pm CET.
Tech talks:
ObjectScript Unit Testing Tools, Techniques and Best Practices - by @Timothy Leavitt , Development Manager, Application Services, InterSystems
Monitoring and Alerting Capabilities of InterSystems IRIS - by @Mark.Bolinsky , Principal Technology Architect, InterSystems Mark's presentation is rescheduled for the roundtable in April.
▶ Update: watch the recording of the roundtable below:
📅 Date: March 5
🕑 Time: 9:00 am ET | 3:00 pm CET
Do you have additional questions which you'd like to discuss on this roundtable? Please share them in the comments to this post.
Not a Global Masters member yet? Sign in with your InterSystems SSO credentials. Hi Developers, don't forget to register for this event. After you register, I will send you a calendar hold. >> RVSP in this Global Masters challenge << Is a recording available, @Olga.Zavrazhnova2637? I'm also interested, @Olga.Zavrazhnova2637 :) Hi @Raj.Singh5479. @José.Pereira yes, just published in this post - and here on YouTube channel Mentioned links/comments during the call: Added product idea "Implement or incorporate a mocking framework to complement %UnitTest class" please upvote 👍 if you support the idea.Article: Unit Tests and Test Coverage in the InterSystems Package Manager by Tim LeavittEvgeny Shvarov: "if you want unittest for irisbi you can leverage isc-dev module
UnitTest_RuleSet Open Exchange solution, Unit Tests for HL7 Routing in IRIS Integration
Article
José Pereira · Sep 1, 2021
This article explains how to use the InterSystems IRIS platform to write a basic IMAP client. First, we present an overview of IMAP, then we discuss the main IMAP commands and client implementation. Finally, we offer a simple use of this IMAP client on the IRIS interoperability application.
Note that this article isn’t a detailed IMAP explanation. For more detailed information, please check the references of this article.
IMAP Overview
The Internet Message Access Protocol (IMAP) lets users retrieve emails. Mark Crispin proposed IMAP in the 1980s, and since then, the protocol has been published and revised in RFC 3501. At the time of writing this article, its current version is IMAP4rev1.
It’s important to note that this protocol is designed for retrieving only. You must use another protocol, the Simple Mail Transfer Protocol (SMTP), if you need to send emails. There’s also an older protocol for email retrieval that’s as popular as IMAP, called Post Office Protocol version 3 (POP3).
Trying Basic IMAP Commands
Like POP3, IMAP is a plaintext protocol. You can easily try some of its commands by yourself, using a TCP client like Telnet or OpenSSL.
First, you need your IMAP host and email server port. For instance, at the time of writing this article, this is the host and port to connect to the Microsoft Outlook service:
outlook.office365.com:993
Let’s connect to this server using our TCP client. Enter the command below and hit ENTER. Note the use of the -crlf flag. This flag is mandatory for IMAP as carriage return and line feed (CRLF) is its line terminator.
$ openssl s_client -connect outlook.office365.com:993 -crlf -quiet
After you hit enter, the IMAP server shows you some information and stays waiting for input.
depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert ...
* OK The Microsoft Exchange IMAP4 service is ready. [...]
Now we can perform our first IMAP command: CAPACITY. As its name suggests, this command presents features that the server can provide. Note that the first line is the IMAP command itself, and the others lines are its output - this is the same for all other IMAP commands presented here.
TAG1 CAPABILITY
* CAPABILITY IMAP4 IMAP4rev1 AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+
TAG1 OK CAPABILITY completed.
Note the token before the CAPABILITY command: TAG1. A tag must precede every IMAP command and is any string you want. They identify what command instance the server is responding to. Generally, a simple counter with a prefix fits all your needs.
The IMAP server finishes the response with the tag you used to issue the command and a flag indicating the command’s status, followed by miscellaneous information related to the command and status. The statuses allowed are: OK (success), NO (failure), and BAD (wrong command).
The command LOGIN expects user and password as arguments. First, let’s check how the server responds if someone gives an invalid username and password:
TAG2 LOGIN user@outlook.com wrong-password
TAG2 NO LOGIN failed.
Note the NO status after the command tag.
Now, let’s proceed to a valid login:
TAG3 LOGIN user@outlook.com password
TAG3 OK LOGIN completed.
Now we’re logged in. To finish our session, we use the LOGOUT command:
TAG4 LOGOUT
* BYE Microsoft Exchange Server IMAP4 server signing off.
TAG4 OK LOGOUT completed.
We need other commands to implement our IMAP client, so we need to reconnect and log into our IMAP server again.
Let’s get some information about the inbox next.
First, we must tell the server which mailbox we want to access, INBOX in this case.
TAG5 SELECT "INBOX"
* 14 EXISTS
* 0 RECENT
...
TAG5 OK [READ-WRITE] SELECT completed.
Now we are ready to access messages in our inbox, but we need a way to refer to them first. There are two ways to do that: by message number or by a unique identifier (UID).
Message numbers are just counters, starting from 1 and going up to the number of messages within the inbox. When you delete a message, all following messages have their numbers decremented by 1. You can think of this as an array that has one of its elements removed.
UIDs, on the other hand, keep their value whatever happens to the other messages.
You can get UIDs using the UID SEARCH command. This command accepts a message number if you'd like to get a specific UID or the ALL parameter to get all UIDs in the directory.
In the example below, we search for UID for message number 1, which is 483.
TAG6 UID SEARCH 1
* SEARCH 483
TAG6 OK SEARCH completed.
Now let’s retrieve message information, like headers, body, and attachments. We use the FETCH command for this. This command has plenty of parameters, which you can explore in detail on RFC 3501. In this article, we only address parameters related to the needs of the IMAP client implementation.
The first information we need for this demonstration is the message size. We can get this information using the RFC822.SIZE parameter:
TAG7 FETCH 1 RFC822.SIZE
* 1 FETCH (RFC822.SIZE 70988)
TAG7 OK FETCH completed.
This indicates that the size of message number 1 is 70,988 bytes.
Note that it’s also possible to use UIDs rather than message numbers to fetch message information:
TAG8 UID FETCH 483 RFC822.SIZE
* 1 FETCH (RFC822.SIZE 70988 UID 483)
TAG8 OK FETCH completed.
You can also get the basic From, To, Date, and Subject message headers:
TAG9 FETCH 1 (FLAGS BODY[HEADER.FIELDS (FROM TO DATE SUBJECT)])
* 1 FETCH (FLAGS (\Seen) BODY[HEADER.FIELDS (FROM TO DATE SUBJECT)] {157}
Date: Thu, 22 Apr 2021 15:49:05 +0000
From: Another User <anotheruser@outlook.com>
To: user@outlook.com
Subject: Greetings from Another User!
FLAGS (\Seen))
TAG9 OK FETCH completed.
Now let’s retrieve the message body. We can retrieve all the body content using this command:
TAG10 FETCH 1 BODY[]
* 1 FETCH (BODY[] {9599}
...
MIME-Version: 1.0
--00000000000041bd3405c3403048
Content-Type: multipart/alternative; boundary="00000000000041bd3205c3403046"
--00000000000041bd3205c3403046
Content-Type: text/plain; charset="UTF-8"
...
--00000000000041bd3405c3403048
Content-Type: image/png; name="download.png"
Content-Disposition: attachment; filename="download.png"
...
TAG10 OK FETCH completed.
We can see in this code that some blocks are delimited by hex numbers between -- --, called parts. A message with parts is called a multipart message. It’s possible to get such parts directly by passing the part index to the command.
In order to delete messages, the protocol has the commands STORE and EXPUNGE, which mark a message as deleted and commit such an operation.
TAG11 STORE 1 +FLAGS (\Deleted)
* 0 EXISTS
* 0 RECENT
TAG11 OK [READ-WRITE] SELECT completed; now in selected state
TAG12 EXPUNGE
EXPUNGE: TAG12 OK EXPUNGE completed
The last command is simple: NOOP. This command does nothing but is used to implement a keep-alive strategy. By default, the IMAP session closes after 30 minutes without commands. So, issuing the NOOP command keeps the connection active.
TAG17 NOOP
TAG17 OK NOOP completed.
And this finishes our IMAP overview. If you’d like more information, there are a lot of good articles on the Web (I've selected some in resources section), and of course always remember the RFC 3501.
Resources
Atmail’s IMAP 101: Manual IMAP Sessions
Fastmail’s Why is IMAP better than POP?
IETF’s Internet Message Access Protocol
IETF’s Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies
Nylas’ Everything you need to know about IMAP
Next part, you'll use those commands within IRIS and see them in action!
See you!
Announcement
Anastasia Dyubaylo · Dec 9, 2021
Hey Developers,
Learn about the recent changes to InterSystems HealthShare Unified Care Record and what is coming next:
⏯ InterSystems HealthShare Unified Care Record
Presenters:🗣 @Sebastian.Musielak, Product Manager, HealthShare Operations, InterSystems🗣 Melanie Davies, Product Manager, Unified Care Record, InterSystems
Subscribe to the InterSystems Developers YouTube channel and stay tuned!
Announcement
Anastasia Dyubaylo · Dec 27, 2021
Hey everyone,
Lots of new content to read! Thanks to our wonderful participants of the 2nd InterSystems Tech Article Contest!
🌟 25 AMAZING ARTICLES 🌟
So it's time to announce the best of them!
Let's meet the winners and their articles:
⭐️ Expert Awards – winners selected by InterSystems experts:
🥇 1st place: Data anonymization, introducing iris-Disguise by @henry
🥈 2nd place: IntegratedML hands-on lab by @José.Pereira
🥉 3rd place and two winners:
VSCode-ObjectScript on GitHub by @Dmitry.Maslennikov
Invite the FHIR® Accelerator Service to your Kubernetes Microservice Party by @sween
⭐️ Community Award – winner selected by Community members, article with the most likes:
🏆 Data anonymization, introducing iris-Disguise by @henry
Hope this win will be a great Christmas present for all of the winners!
⭐️ This time, we'd like to reward some more authors for the number of contributions:
@Yuri.Gomes: 4 articles!
@MikhailenkoSergey: 3 articles!
These guys will get Apple AirPods Pro OR Amazon Kindle 8G Paperwhite OR Raspberry Pi 4 8GB with InterSystems IRIS Community Edition ARM installed!
And...
Let's congratulate all our heroes at https://community.intersystems.com/contests/2:
@Robert.Cemper1003
@Henrique
@Muhammad.Waseem
@Rob.Tweed
@John.Murray
@alex.kosinets
@Iryna.Mykhailova
@Oliver.Wilms
@Rizmaan.Marikar2583
THANK YOU ALL! You have made an incredible contribution to our Dev Community!
Happy Holidays to everyone! 🎅
The prizes are in production now. We will contact all the participants when they are ready to ship Thanks my reward and congrats for the participants, great articles! Congratulations everyone. Very impressive! 
What a wonderful surprise!!
Thank you all community and congratulations to all participants Congratulations all, and happy new year Congratulations to ALL. It was nice competition Congratulations to the authors :-) Thanks everybody!!! Congratulations!
We're lucky to have airpods as the third place prize. Those were easy to split equally between the tied contestants :-) Congratulations! Well done everyone! And now we have beautiful badges for all the winners on Global Masters tied to levels - so these badges will help you to move up through GM levels! Congrats and Happy New Year! Dear participants, regarding prizes and swag delivery: we will be in touch with you at the beginning of January - shortly after the Holidays.
Announcement
Anastasia Dyubaylo · Sep 10, 2022
Hey Community,
In this demonstration you will see the building blocks of an integration in InterSystems IRIS for Health and HealthShare and see how messages are received, processed, and sent—including messages in the HL7 format:
⏯ Overview of Basic Components for InterSystems Integration Solutions
Don't miss the latest videos for InterSystems developers on our DC YouTube!
Announcement
Anastasia Dyubaylo · Apr 6, 2022
Hey Developers,
Good news! One more upcoming in-person event is nearby.
We're pleased to invite you to join "J On The Beach", an international rendezvous for developers and DevOps around Big Data technologies. A fun conference to learn and share the latest experiences, tips & tricks related to Big Data technologies, and, the most important part, it’s On The Beach!
🗓 April 27-29, 2022
📍Málaga, Spain
This year, InterSystems is a Gold Sponsor of the JOTB.
We're more than happy to invite you and your colleagues to our InterSystems booth for a personal conversation. As always, there will be some surprises on it... 😁
In addition, on the first day of the Conference @David.Reche and @Eduardo.Anglada will give a talk called "Captain Kirk, exoplanet found on route using Auto Machine Learning.
🎯 More details can be found at jonthebeach.com
Looking forward to seeing you soon!
Announcement
Anastasia Dyubaylo · Aug 26, 2022
Hey Developers,
New video is already on InterSystems Developers YouTube channel:
⏯ Using the Business Process Designer in InterSystems IRIS
See how to construct a new business process, which provides business logic and routing capabilities within an InterSystems production. Learn how to build a BPL business process using the Business Process Designer in the Management Portal. Also, try building one yourself using an InterSystems IDE.
Enjoy watching!
Announcement
Anastasia Dyubaylo · Aug 30, 2022
Hey Developers,
Meet the new video on InterSystems Developers YouTube channel:
⏯ Creating Complex Decision Logic with InterSystems IRIS
Using the graphical interface of the Business Rule Editor in InterSystems IRIS data platform, nontechnical users can set up business rules to better process records and untangle complex data.
Like and share! Very helpful and nice use of features. I appreciate the real-world use case and thorough explanation!
Article
Monika Stepanova · Sep 1, 2022
In this article, I’d like to tell you about a startup Nanteo which is one of the first batch of startups at InterSystems FHIR startup incubator — Caelestinus.
Who are we and what do we do?
We are a small team from the Czech republic with a great vision. We aim to bring fast, easy, and enjoyable preventive care close to our home/work thanks to our portable lab called MALIA which enables early detection of disease. 🏠 Our goal is to change the approach to health care and we want to show you that taking care of yourself can be as easy as making coffee in a capsule coffee machine. ☕ Our solution will help to stop the underestimation of preventive care and it will make treatment less expensive and more effortless. Or even better, MALIA can help to prevent the treatment. Because prevention is better than cure. 🥰
We are developing a portable lab called MALIA which can evaluate various diseases (markers based on antigens and antibodies) from a drop of blood within 18 minutes. 🩸 MALIA is around the size of a bigger capsule coffee machine, and its accuracy achieves the qualities of high-volume random access analyzers (RAA) thanks to the use of specially modified magnetic particles and CLIA (chemiluminescence) detection. Thanks to its super ease of use, MALIA can be used for self-testing.
We expect MALIA to be placed in pharmacies, gas stations, or any other places and like this, we will create „MALIA points“. 📍 With us, preventive care doesn’t have to take place only at the doctor’s office anymore. 😎
Instead of trying to get you to the doctor’s, we aim to bring prevention close to you. 🏠 How does it work? If you feel like something is wrong or you just want to improve the quality of your life, you can choose the closest MALIA point, get self-tested and you are free to go. Within 18 minutes your health results will be automatically sent to your phone and also to your doctor. Through this, you’ll be able to track your health and analyze all of your previous results. This in turn will allow you to improve your healthcare and make your doctor's job easier. 👩⚕️💙
Here you can watch a DEMO of our product to better imagine what your self-testing may look like. 👀
Our solution supports automatization, digitalization, and miniaturization and is also customer-centric = a portable lab for self-testing close to your home/work. 💙
How do we use FHIR and how is MALIA connected to FHIR?
Our device has two QR/Line readers - for cartridge and patient identification. 🧑 So MALIAcan easily read the necessary information about the test and about the person who is tested. After 18 minutes, when the test is done, the results are automatically sent to FHIR Server. 🔥 Then the data can be shared with health apps, doctors, and other concerned individuals. Thus both patient and doctor can track health status and analyze the previous results. 📈 You and your doctor will have the results any time you need them, you can see your past result as well and track them over time. This would improve your health care and give you more control over your health as well. MALIA also aims to support doctors and give them more information about you for better and faster decisions. 💙
How do we collaborate with InterSystems?
Currently, we mostly use InterSystems cloud services and its FHIR API, delivered by InterSystems cloud native FHIR Server, therefore its role is primarily database and storage of HL7 structured data. ☁️ We also expect that InterSystems’s products will help us to integrate our system with other healthcare protocols and systems.
Now, let's look at the process and workflow that we designed, how we interact with InterSystems services, and what resources we use. 😉
Our devices use the HL7 FHIR library to communicate and exchange data with our assigned FHIR Server deployment, each device is set up with an API key and FHIR backend URL. After boot-up it registers itself via Device resource and its unique persistent identifier and marks itself as ACTIVE. ✅
The next part is measurement method/protocol definition, for which we use the ActivityDefinition resource nested together with RelatedArtifact and Attachment resources that contain protocol parameters and data that devices can directly interpret to carry out the specific measurement on an inserted cartridge. To be more specific, our biochemists design a measurement method and then store it in the cloud service so any of our devices can use it – cartridges could be marked with QR codes that specify methods to be applied to them. After the cartridge is inserted, the device scans its code, downloads the required method (if missing), and is ready to start performing the measurement. ✨
In cases where measurements are related to patients, we use Task resources to plan them.
Operators can create tasks for any registered device from our web application. At the same time, a user selects a patient for which the measurement is done, a cartridge code, a protocol to use (also by scanning cartridge QR), and an optional description. Each device is periodically checking for new tasks. So after the task is submitted and requested, an operator could insert the cartridge and execute that task from the device interface. Cartridge (QR) and task codes should match so this is used as an error-checking mechanism. This scenario is intended for medical or laboratory use. 🏥
If the measurement was executed based on a task, then the result is stored in the FHIR backend in the form of an Observation resource nested with Attachment and Media resources containing raw output data and also with a reference to the patient specified in the task. From the device perspective, patients are processed just as identifiers (anonymity) so other parties and applications can easily implement task submission into our system.
If you are interested, you can check out our testing app here: https://med.nanteo.cz/ 🤗
Right now we are searching for an investor so we can speed up the market entry process. Partners who like to join our journey are welcome as well! 🤝
If you could recommend some contacts or you have suggestions on how to improve our product – feel free to get in touch with us in the comments and contact us via email (monika.stepanova@nanteo.cz). We will be more than happy to answer your questions. 💬
We are also very happy we can be part of the Caelestinus incubator and cooperate with InterSystems. We got the opportunity to participate in the InterSystems Global Summit 2022 in Seattle and it was a great experience for us. We met many inspiring and motivating people and will be more than happy to stay in touch. 😍
Be safe and remember that prevention is better than cure! 💙 sounds quite promising! Great to see Caelestinus getting some traction :) What makes Nanteo unique from Theranos Hello Aasir, the biggest problem with Theranos was the strategy "Fake it, until you make it." Faking test results is a no-go. They also wanted to develop a pocket-size analyzer that would be able to detect any disease. That means that they either had to miniaturize all the proven methods and put them in one device or come up with their new one. And that didn't work.
We focus on the detection of antibodies and antigens thanks to a chemiluminescence immunoassay (CLIA) which is a proven method. To sum it up, we are not trying to bring a new methodology but we can bring miniaturization, automatization, and digitalization into preventive care. 😊 That's great, the world needs solutions that are more within the reach of the population, especially the less affluent, who do not always have access to complete health systems. Congratulations for the initiative! Thank you very much, Marcelo. 😊
Announcement
Anastasia Dyubaylo · Jun 19, 2022
Hey Developers,
Join us for a discussion guide of current operational tasks to reduce storage and an overview of new features coming in InterSystems HealthShare 2021.2, including stream, database, and journal compression abilities:
⏯ InterSystems HealthShare Storage Footprint Reduction
🗣 Presenter: @Mark.Bolinsky, InterSystems Corporation Principle Technology Architect
Enjoy watching on InterSystems Developers YouTube channel! Hi @Mark.Bolinsky , this is very useful and helpful for our China custs, and we'd really appreciate if you could help do an article for this becoz we Chinese users cannot access Youtube. Thx a lot for your big favor!
Announcement
Evgeny Shvarov · Jun 22, 2022
Hi developers!
Here are the bonus points for the experts voting for your applications in the Fullstack contest 2022:
Here we go!
Climate Change - 5
isc.rest package - 2
isc.ipm.js package - 2
Embedded Python - 3
Adaptive Analytics (AtScale) Cubes usage - 3
Docker container usage - 2
ZPM Package deployment - 2
Online Demo - 2
Unit Testing - 2
First Article on Developer Community - 2
Second Article On DC - 1
Code Quality pass - 1
Video on YouTube - 3
Climate Change - 5 points
Collect the bonus if your solution will help to fight the global warming and climate change problems. Join the Climate Change Full Stack contest kick-off on Monday 27th for more information.
isc.rest package - 2 points
Use isc-rest package in your full-stack application to collect the bonus. Check the isc-perf-ui application to see how it works.
isc.ipm.js package - 2 points
Use isc-ipm-js package in your full-stack application to collect the bonus. Check the isc-perf-ui application to see how it works.
Embedded Python - 3 points
Use Embedded Python in your application and collect 4 extra points. You'll need at least InterSystems IRIS 2021.2 for it.
Adaptive Analytics (AtScale) Cubes usage - 3 pointsInterSystems Adaptive Analytics provides the option to create and use AtScale cubes for analytics solutions.
You can use the AtScale server we set up for the contest (URL and credentials can be collected in the Discord Channel) to use cubes or create a new one and connect to your IRIS server via JDBC.
The visualization layer for your Analytics solution with AtScale can be crafted with Tableau, PowerBI, Excel, or Logi.
Documentation, AtScale documentation
Training
Docker container usage - 2 points
The application gets a 'Docker container' bonus if it uses InterSystems IRIS running in a docker container. Here is the simplest template to start from.
ZPM Package deployment - 2 points
You can collect the bonus if you build and publish the ZPM(InterSystems Package Manager) package for your Full-Stack application so it could be deployed with:
zpm "install your-multi-model-solution"
command on IRIS with ZPM client installed.
ZPM client. Documentation.
Online Demo of your project - 2 pointsCollect 2 more bonus points if you provision your project to the cloud as an online demo. You can do it on your own or you can use this template - here is an Example. Here is the video on how to use it.
Unit Testing - 2 points
Applications that have Unit Testing for the InterSystems IRIS code will collect the bonus.
Learn more about ObjectScript Unit Testing in Documentation and on Developer Community.
Article on Developer Community - 2 points
Post an article on Developer Community that describes the features of your project and collect 2 points for the article.
The Second article on Developer Community - 1 point
You can collect one more bonus point for the second article or the translation regarding the application. The 3rd and more will not bring more points but the attention will all be yours.
Code quality pass with zero bugs - 1 point
Include the code quality Github action for code static control and make it show 0 bugs for ObjectScript.
Video on YouTube - 3 points
Make the Youtube video that demonstrates your product in action and collect 3 bonus points per each.
The list of bonuses is subject to change. Stay tuned!
Announcement
Anastasia Dyubaylo · Oct 17, 2022
Hello Community,
The 1st InterSystems Idea-A-Thon is over. As a result, 75 brilliant ideas – an absolute success, wow! 🤩
Thank you all for participating with your ideas and contributing with your votes and comments!
And now we're so glad to announce the winners...
Expert Award
🏆 Change Management for Editors inside of Portal submitted by @Scott.Roth
Community Award
To show our appreciation to our participants, we've decided to expand our Community nomination and award several top-voted ideas:
🌟 Nodejs with IRIS a dynamic platform submitted by @Sharafat.Hussain
🌟 E-learning for job submitted by @Andre.LarsenBarbosa
🌟 Code snippets library submitted by @Danny.Wijnschenk
All the winners will receive one of our specially prepared prizes: LEGO Star Wars™ R2-D2™ / BOSE Sleepbuds™ II / BOSE SoundLink Flex Bluetooth® speaker bundle.
🔥 In addition to our winners, we'd like to highlight all our participants and their bright ideas. Let's meet all of them:
Spoiler
Modernize terminal
Use the built-in feature engineering in AutoML to transform datasets
Add a wizard similar to the SOAP wizard to generate a REST client from OpenAPI specification
New reward: IRIS developer license
IRIS and ZPM(Open Exchange) integration
Bare minimum start of IRIS for docker build
New rewards
BPL, DTL, Business Rule Editor in VSCode
Articles and answered questions recommendations
RPMShare - Database solution for remote patient monitoring (RPM) datasets of high density vitals
Move users, roles, resources, user tasks, Mappings (etc) to a seperate Database, other than %SYS, so these items can be mirrored
Create a UI for convenient and easy transfer of projects (classes, globals, applications, users, roles, privileges, grants, namespace mapping, SQLgateways, libraries, etc.) to other system instances for fast deployment.
InterSystems Ideas - Long Term
Cloud Service Starter Kit
PM platform
Tool to convert legacy dot syntax code to use bracket syntax
Add basic tutorial of Docker or point to a Docker tutorial in Documentation
Better handle whitespace in Management Portal Text entry
Reserve licenses
Improve Production Migration From TST to PRD
Data Analyzer
Create front-end package based on CSS and JS to be used in NodeJS and Angular projects
Expose Global Masters Badges
VS Code: Index local workspace folder
Add a chatbot to the Global Masters hub
PDF reports for IRIS BI
Sample code share opportunity
Common Data Modelling
CI/CD support
Journal file analysis/visualization
A Dynamic Cheat Sheet to lookup for Common Core Functions for Reusability
Version History for Classes
Visual programming language
Interoperability Wizard
Connectivity of DeepSee with External Database
Better unicode support
Dark Mode for Studio!
HealthShare Patient Unmerge Ooopses
Editing category of the idea after adding it
Group events for people outside the community
TTTC
Embedded Python: Add a built-in variable to represent class
Create a new model type option for IRIS database: blockchain
Add the option to call class parameters in Embedded Python
A client to export codes from specified packages from IRIS/Cache
Reagent Consumption Module - Auto Consumption of Lab Machine Reagents
Cache Journal Switch Schedule
Colour Background on Ward / Clinical Areas Floorplans
Production Audit Report
Run Jasperreports from ObjectScript and IRIS Adapter
Business Operation Testing mode per namespace
Do not change formatting when compiling through GUI
File Service class to allow multiple instances to share access to one directory
Native RPC API for ObjectScript
change data chapture
Expose internal code elements (classes, routines etc) through SFTP, CIFS/SMB or similar established protocol
LDAP Authentication method by default on Web Applications
Monitoring and Programatic way of Starting/Stoping Gateways
Improve journal display in IRIS admin portal
Adapting tools for people with special needs and/or disabilities 🌐🔰🦽🦼♿
Backup button before importing
Add wizard to create class with its properties
Create query builder
Linux: iris session [command line] get commands from a file
String format to numeric values in ZEN.proxyObject
The ability to export current settings to a %Installer Manifest
Linking I service to JIRA system
I service Flags
Patient Initiated Follow Up - Adding a document to an ROPWL
Mirror Async Member Time Delay in Applying Journals
Please add google oauth authorization to login to the management portal
All Idea-A-Thon participants will get our special InterSystems Branded T-shirt.
OUR BIG CONGRATULATIONS TO ALL WINNERS AND PARTICIPANTS!
Thank you for such great contributions to the official InterSystems feedback portal 💥
Important note: The prizes are in production now. We will contact all the participants when they are ready to ship. Thanks for the opportunity, not being a developer, it was harder to participate in more technical contests. Thank you #InterSystems for arranging #Idea-A-Thon. It is great to keep on track of innovations while carrying the legacy. Congrats winners! Thanks!!! Congratulation to all the winners Congratulations to the winners! Thanks for giving us this opportunity to share our ideas! Congratulations to the winners and all participants! Amazing ideas, unexpectedly large amount of new ideas! It was a great experience for me to participate in organization of this event. Thank you! Congrats to the winners! Thanks for giving us a way to express ideas and changes that we have pondered for years. Isn't it great when your ideas come to life so quickly... Check out our last few posts on the Developer Community, where we have been discussing our new Production component driver for Deltanji source control - a solution for the winning entry!
Great minds think alike @Scott.Roth, congratulations on winning the contest.Link to most recent post here: https://community.intersystems.com/post/source-control-interoperability-productions 75! I'm so surprised by how many bright ideas community kept in secret that were revealed now! Thanks, Ideas Portal team @Anastasia.Dyubaylo @Vadim.Aniskin and @Raj.Singh5479 for running the idea-a-thon!
It looks like the next step is the implementation marathon ;)
Announcement
Anastasia Dyubaylo · Oct 10, 2022
Hi Community!
We'd like to invite you to join our next contest to share your FHIR knowledge:
🏆 InterSystems IRIS for Health Contest: FHIR for Women's Health 🏆
Submit an application that uses InterSystems FHIR or InterSystems Healthcare Interoperability!
Duration: November 14 - December 4, 2022
Prizes: $13,500!
>> Submit your application here <<
The topic
💡 Healthcare Interoperability Solutions – FHIR 💡
Develop any interoperability FHIR solution or Healthcare Interoperability solution or a solution that helps to develop or/and maintain interoperability solutions using InterSystems IRIS for Health, Health Connect, or FHIR server.
In addition, we invite developers to try their hand at solving one of the global issues. This time it will be Women's Health.
We encourage you to join this competition and build solutions aimed at solving the following issues:
You will receive a special bonus if your application can help pregnant patients discover trends in tracking pregnancy symptoms and/or build an integration to share symptoms and pregnancy journal notes with a partner application.
There will also be another bonus if you prepare and submit a FHIR dataset related to women’s digital health in these areas: pregnancy tracking/monitoring, parenthood support, or menopause patient education.
General Requirements:
Accepted applications: new to Open Exchange apps or existing ones, but with a significant improvement. Our team will review all applications before approving them for the contest.
The application should work either on InterSystems IRIS for Health Community Edition or Health Connect Cloud.
The application should be an Open Source application and published on GitHub.
The README file to the application should be in English, contain the installation steps, and contain either the video demo or/and a description of how the application works.
🆕 Contest Prizes:
1. Experts Nomination – winners will be selected by the team of InterSystems experts:
🥇 1st place - $5,000
🥈 2nd place - $3,000
🥉 3rd place - $1,500
🏅 4th place - $750
🏅 5th place - $500
🌟 6-10th places - $100
2. Community winners – applications that will receive the most votes in total:
🥇 1st place - $1,000
🥈 2nd place - $750
🥉 3rd place - $500
Note: If several participants score the same amount of votes, they all are considered winners, and the money prize is shared among the winners.
Important Deadlines:
🛠 Application development and registration phase:
November 14, 2022 (00:00 EST): Contest begins.
November 27, 2022 (23:59 EST): Deadline for submissions.
✅ Voting period:
November 28, 2022 (00:00 EST): Voting begins.
December 4, 2022 (23:59 EST): Voting ends.
Note: Developers can improve their apps throughout the entire registration and voting period.
Who Can Participate?
Any Developer Community member, except for InterSystems employees (ISC contractors allowed). Create an account!
Developers can team up to create a collaborative application. Allowed from 2 to 5 developers in one team.
Do not forget to highlight your team members in the README of your application – DC user profiles.
Helpful Resources:
✓ Example applications:
FHIR Server Template
iris-healthtoolkit-template
interoperability-embedded-python
FHIR HL7 SQL Demo FHIR DropBox
HL7 and SMS Interoperability Demo
IrisHealth Ensdemo
UnitTest DTL HL7
Healthcare HL7 XML
FHIR Interoperability Examples
FHIR-Orga-dt
FHIR Peudoanonimisation Proxy
FHIR-client-java
FHIR-client-.net
FHIR-client-python
FHIR related apps on Open Exchange
HL7 applications on Open Exchange
✓ Online courses:
FHIR Integrations
HL7 Integrations
Learn FHIR for Software Developers
Exploring FHIR Resource APIs
Using InterSystems IRIS for Health to Reduce Readmissions
Connecting Devices to InterSystems IRIS for Health
Monitoring Oxygen Saturation in Infants
FHIR Integration QuickStart
✓ Videos:
6 Rapid FHIR Questions
SMART on FHIR: The Basics
Developing with FHIR - REST APIs
FHIR in InterSystems IRIS for Health
FHIR API Management
Searching for FHIR Resources in IRIS for Health
✓ For beginners with IRIS:
Build a Server-Side Application with InterSystems IRIS
Learning Path for beginners
✓ For beginners with ObjectScript Package Manager (ZPM):
How to Build, Test and Publish ZPM Package with REST Application for InterSystems IRIS
Package First Development Approach with InterSystems IRIS and ZPM
✓ How to submit your app to the contest:
How to publish an application on Open Exchange
How to submit an application for the contest
Need Help?
Join the contest channel on InterSystems' Discord server or talk with us in the comment to this post.
We can't wait to see your projects! Good luck 👍
By participating in this contest, you agree to the competition terms laid out here. Please read them carefully before proceeding. Excited to see the creativity in this challenge! Congrats for this fundamental topic, great! Great topic for the contest. Bravo! It's high time we delved deeper into this topic! Hey Developers,
The recording of the Kick-off Webinar is already available on InterSystems Developers YouTube:
⏯ [Kick-off Webinar] InterSystems FHIR for Women's Health Contest
Developers!
The first application has been added to the contest!
FemTech Reminder by @KATSIARYNA.Shaustruk
Check it out! Hi, Community!
Only 2 days left to register for the contest!
Hurry up to upload your application!
Announcement
Anastasia Dyubaylo · May 30, 2022
Hey Developers,
Let the voting week begin! It's time to cast your votes for the best applications in the Grand Prix Programming Contest!
🔥 You decide: VOTE HERE 🔥
How to vote? Details below.
Experts nomination:
InterSystems experienced jury will choose the best apps to nominate the prizes in the Experts Nomination. Please welcome our experts:
⭐️ @Alex.Woodhead, Technical Specialist⭐️ @Steven.LeBlanc, Product Specialist⭐️ @akoblov, Senior Support Specialist⭐️ @Daniel.Kutac, Senior Sales Engineer⭐️ @Eduard.Lebedyuk, Senior Cloud Engineer⭐️ @Steve.Pisani, Senior Solution Architect⭐️ @Timothy.Leavitt, Development Manager⭐️ @tomd, Product Specialist⭐️ @Andreas.Dieckow, Product Manager⭐️ @Benjamin.DeBoe, Product Manager⭐️ @Carmen.Logue, Product Manager⭐️ @Luca.Ravazzolo, Product Manager⭐️ @Stefan.Wittmann, Product Manager⭐️ @Raj.Singh5479, Product Manager⭐️ @Robert.Kuszewski, Product Manager⭐️ @Jeffrey.Fried, Director of Product Management⭐️ @Dean.Andrews2971, Head of Developer Relations ⭐️ @Evgeny.Shvarov, Developer Ecosystem Manager
Community nomination:
For each user, a higher score is selected from two categories below:
Conditions
Place
1st
2nd
3rd
If you have an article posted on DC and an app uploaded to Open Exchange (OEX)
9
6
3
If you have at least 1 article posted on DC or 1 app uploaded to OEX
6
4
2
If you make any valid contribution to DC (posted a comment/question, etc.)
3
2
1
Level
Place
1st
2nd
3rd
VIP Global Masters level or ISC Product Managers
15
10
5
Ambassador GM level
12
8
4
Expert GM level or DC Moderators
9
6
3
Specialist GM level
6
4
2
Advocate GM level or ISC Employees
3
2
1
Blind vote!
The number of votes for each app will be hidden from everyone. Once a day we will publish the leaderboard in the comments to this post.
The order of projects on the contest page will be as follows: the earlier an application was submitted to the competition, the higher it will be in the list.
P.S. Don't forget to subscribe to this post (click on the bell icon) to be notified of new comments.
To take part in the voting, you need:
Sign in to Open Exchange – DC credentials will work.
Make any valid contribution to the Developer Community – answer or ask questions, write an article, contribute applications on Open Exchange – and you'll be able to vote. Check this post on the options to make helpful contributions to the Developer Community.
If you changed your mind, cancel the choice and give your vote to another application!
Support the application you like!
Note: contest participants are allowed to fix the bugs and make improvements to their applications during the voting week, so don't miss and subscribe to application releases! So! After the first day of the voting we have:
Expert Nomination, Top 3
Docker InterSystems Extension by @Dmitry.Maslennikov
webterminal-vscode by @John.Murray
Water Conditions in Europe by @Evgeniy.Potapov
➡️ Voting is here.
Community Nomination, Top 3
webterminal-vscode by @John.Murray
Docker InterSystems Extension by @Dmitry.Maslennikov
Disease Predictor by @Yuri.Gomes
➡️ Voting is here.
Experts, we are waiting for your votes! 🔥
Participants, improve & promote your solutions! Seems to be some confusion about whose (or which) app was first in Community section after the first day:
Here are the results after 2 days of voting:
Expert Nomination, Top 3
Water Conditions in Europe by @Evgeniy.Potapov
Docker InterSystems Extension by @Dmitry Maslennikov
test-dat by @Oliver.Wilms
➡️ Voting is here.
Community Nomination, Top 3
iris-megazord by @José.Pereira
webterminal-vscode by @John Murray
Docker InterSystems Extension by @Dmitry Maslennikov
➡️ Voting is here.
So, the voting continues.
Please support the application you like! Devs!
Here are the top 5 for now:
Expert Nomination, Top 5
Water Conditions in Europe by @Evgeniy.Potapov
CloudStudio by @Sean.Connelly
iris-fhir-client by @Muhammad.Waseem
iris-megazord by @José.Pereira
Docker InterSystems Extension by @Dmitry Maslennikov
➡️ Voting is here.
Community Nomination, Top 5
iris-megazord by @José.Pereira
webterminal-vscode by @John.Murray
iris-fhir-client by @Muhammad.Waseem
CloudStudio by @Sean.Connelly
Docker InterSystems Extension by @Dmitry Maslennikov
➡️ Voting is here.
Who is gonna be the winner?!😱
Only 1 day left till the end of the voting period. Support our participants with your votes! Last day of voting! ⌛
Don't miss the opportunity to support the application you like!Our contestants need your votes! 📢 Developers!
Last call!Only a few hours left to the end of voting!
Cast your votes for applications you like!
Announcement
Anastasia Dyubaylo · May 16, 2022
Hey Developers,
We're pleased to invite you to the upcoming InterSystems webinar called "What's New in InterSystems IRIS 2022.1"!
Date: Tuesday, May 24, 2022Time: 11:00 AM EDT
In this webinar, we’ll highlight some of the new capabilities of InterSystems IRIS and InterSystems IRIS for Health, including:
Full support for application development using Python
Speed and Scalability enhancements including Adaptive SQL and SQL Loader
Support for Apache Kafka for real-time use cases
New cloud services, and expanded support for cloud adapters and Kubernetes
Support for new and updated operating systems and client frameworks
There will be time for Q&A at the end.
Speakers:🗣 @Benjamin.DeBoe, Product Manager, InterSystems🗣 @Robert.Kuszewski, Product Manager, Developer Experience, InterSystems
➡️ Register for the webinar today!