Announcement
· 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

 Prizes:

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.

Judgment:

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
IRISAPP>

The README.md 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.

Discussion (27)2
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

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

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! 🚀

Want more?

Enjoy watching the new video on the InterSystems Developers YouTube, specially recorded by @Evgeny Shvarov for the IRIS contest:

⏯ How to Create and Submit an Application for InterSystems IRIS Online Programming Contest 2020

 

https://www.youtube.com/embed/qyUT195Pic0
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

Stay tuned! 

Please welcome the new video specially recorded for the IRIS contest:

⏯ How to Enable Docker and VSCode to Your InterSystems IRIS Solution

 

https://www.youtube.com/embed/tlnoxcGzNJg
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

This video describes how you can add InterSystems IRIS Docker and VSCode environment to your current repository with InterSystems ObjectScript using iris-docker-dev-kit.

Enjoy!