Evgeny Shvarov · Mar 4, 2020

The 1st Programming Contest: InterSystems IRIS, Docker and ObjectScript

Hi Developers!

In March we are starting our first InterSystems IRIS Programming Contest! It's a competition in creating open-source solutions using InterSystems IRIS Data Platform.

The topic for the first contest is InterSystems IRIS, Docker and ObjectScript!

The contest will last three weeks: March 9-31, 2020


There will be money prizes for Experts Nomination - winners will be determined by a specially selected jury:

🥇 1st place - $2,000 

🥈 2nd place - $1,000 

🥉 3rd place - $500

Also, there will be Community Nomination - an application that will receive the most votes in total:

🏆 1st place - $1,000

And we provide winners with high-level badges on Global Masters.

If several participants score the same amount of votes they all are considered as winners and the money prize shared between the winners.  

General requirements:

1. The application should be posted as Open Source under a certain license (e.g. MIT License).

2. The application should be approved and published on Open Exchange.

3. The application should use InterSystems IRIS or InterSystems IRIS for Health.

4. Both existing and new applications can participate in the contest.

5. One contestant can upload an unlimited number of applications.

Who can participate?

Each member registered in the Developer Community from any country can participate in a contest, except for InterSystems employees.


Judges for the Experts Nomination are InterSystems Product Managers, Developer Community Moderators and Global Masters advocates with VIP, Ambassador & Expert levels.

One judge can vote only for one application. The power of the vote is different:

  • PM vote - 3 points
  • Moderator vote - 2 points
  • VIP GM Advocate vote - 2 points
  • Ambassador GM Advocate vote - 1 point
  • Expert GM Advocate vote - 1 point

Judges for the Community Nomination are any registered community members who posted at least once and will have one vote point.

Judges can participate in a contest, but cannot vote for their own applications.

Judgment criteria

In the Experts Nomination, we will choose the best application which:

  1. Makes the world a better place or makes the life of a developer better;
  2. Has the best functionality - how much the application/library does;
  3. Has a readable and qualitative ObjectScript code.

Contest Period: 

March 9-22, 2020: Two weeks to upload your applications to Open Exchange (also during this period, you can edit your projects).

March 23-29, 2020: One week to vote.

All winners will be announced on March 30th, 2020.

The Topic

➡️ InterSystems ObjectScript and InterSystems IRIS in Docker Container ⬅️

We will choose the best application built using InterSystems ObjectScript and which could be launched on either InterSystems IRIS Community Edition(IRIS CE), or InterSystems IRIS for Health Community Edition (IRIS CE4H).

InterSystems IRIS CE Docker and ObjectScript requirement:

If we clone or download the application it should be runnable e.g. with:

$ docker-compose up -d

The application could be implemented as CLI, with execution in the IRIS terminal. e.g.:

$ docker-compose exec iris iris session iris

Node: 981b8e5c8f7a, Instance: IRIS

USER>w ##class(Your.Application).Run()

Here is the sample application.

For a given example the test will be:

$ docker-compose exec iris iris session iris

Node: 981b8e5c8f7a, Instance: IRIS

IRISAPP>w ##class(Contest.ObjectScript).TheQuestionOfTheUniverse()
The answer is 42

The file in the description should contain the section, which describes how the CLI functionality could be tested.

We will accept for the contest GitHub repositories which are recognized by GitHub as ObjectScript, e.g. like here:

To make GitHub introduce this indication store your ObjectScript code in .cls files.

Use ObjectScript Contest Template - create your repository and substitute files in /src folder to your solution, or use it as a GitHub template for your new GitHub repository, or import the set of Docker-enable files to your repository. Learn more.

Watch the related video on how to make a repository from GitHub Template.

Here are a few examples of applications that fit the topic of the contest and match IRIS Community Edition running in Docker requirements: Python GatewayHealthcare XML, Document TemplateGame of Life, ForEachObjectScript Template.

We are starting in March, please ask your questions! 

How to apply for the Contest

Log in to the Open Exchange, open your applications section.

Open the application which you want to apply for the contest and click Apply for Contest.

Make sure the status is 'Published'.

The application will go for the review and if it fits the topic of the contest the application will be listed on the Contest Board.

Stay tuned, the post will be updated.

4 4 27 1,594
Log in or sign up to continue

These two applications also meet the requirements and topic: ObjectScript Math and JSONManyToMany by @Peter Steiwer: there is ObjectScript CLI and you can launch it with

$ docker-compose up -d

and then run and test it with:

$ docker-compose exec iris iris session iris

Node: 981b8e5c8f7a, Instance: IRIS

IRISAPP> w ##class(Math.Math).LeastCommonMultiple(134,382)

Just to give you a few ideas about what you could submit for the contest check the Rosetta Code - there are still a bunch of opportunities to implement this or that popular algorithms which have implementations in different languages but not in ObjectScript.

I want to describe the idea more.

Rosetta Code - is the site with implementations of the same algorithms in different languages.

E.g. check Python - and see hundreds of algorithms implemented.

And check ObjectScript - not that much, but some have an implementation in Python and ObjectScript.

E.g. here is MD5 implementation in ObjectScript and in Python

What you could do is:

Take the algorithm implemented in Python or other languages and introduce the implementation in ObjectScript.

And you are very welcome to participate in the contest with such a project.

How to apply for the Programming Contest

Log in to Open Exchange, open your applications section.

Open the application which you want to apply for the contest and click Apply for Contest.

Make sure the status is 'Published'.

The application will go for the review and if it fits the topic of the contest the application will be listed on the Contest Board.

For those, who start with ObjectScript here are some recommendations from InterSystems Online-Learning team:

Also tagging our Online Learning experts @Michelle Spisak and @Jenny Ames here to share more details.

Hi Developers,

Wonder if you could vote for the solution you like? You can! If you contribute to DC!

Everyone contributing articles, questions and replies is very welcome to give the vote in the Community Nomination. An application that will receive the most votes in total will win in this nomination. 

Prizes are waiting for you, stay tuned! 🚀

Hi Lorenzo,

You're very welcome to join our contest! Don't doubt 😉

We have two winning nominations: 

🏆 Experts Nomination - the best application that will be selected by a special jury of InterSystems Experts.

🏆 Community Nomination - the best application that will be chosen by a majority vote of all DC Contributors. 

So ladies and gentlemen, upload your apps and vote! 

Hey Developers,

One more application is already in the game. Please check our Contest Board!

Full speed ahead! 🔥

Hey Community,

Our Contest Board has been updated again. Two more applications are already participating in the IRIS contest! 

Make your bets! 😉


You have 6 days to submit your application for the InterSystems IRIS Online contest!

Don't hesitate to submit if you didn't finish it - you'll be able to fix the bugs and make improvements during the voting week too!

Hey Developers!

Only 5 days left to upload your apps to our IRIS Contest!

Show your best ObjectScript skills on InterSystems IRIS and earn some $ and glory! 🔥

Yeah + 1 with Dmitriy

I wish to read nice ObjectScript code !


For now, we have 8 applications in the contest! And 3 days left!

Competition is growing! Looking forward to more solutions!

Voting for the best application will begin very soon! Only 3 days left before the end of registration for the IRIS contest.

Don't miss your chance to win! 🏆

Hey Community,

Now we have 11 applications in our Contest Board! And only 2 days left before the start of voting.

Hurry up to upload your application!