Announcement Evgeny Shvarov · Mar 22, 2020

Hi Community!

The registration phase for InterSystems Online Programming Contest ends today and we will start the voting week!

Now we have 20 applications - so you have a set of applications to choose from!

How to vote?

This is easy: you will have one vote, and your vote goes either in Experts nomination or in Community nomination.

7
1 498
Article Evgeny Shvarov · Mar 20, 2020 3m read

Hi colleagues!

Every day Johns Hopkins University publishes new data on coronavirus COVID-19 pandemic status.

I built a simple InterSystems IRIS Analytics dashboard using InterSystems IRIS Community Edition in docker deployed on GCP Kubernetes which shows key measures of the disease outbreak.

This dashboard is an example of how information from CSV could be analyzed with IRIS Analytics and deployed to GCP Kubernetes in a form of InterSystems IRIS Community Edition.

Added the interactive map of the USA:

13
3 1127
Article Evgeny Shvarov · Mar 13, 2020 2m read

Hi developers!

Suppose you have a Github repository with ObjectScript classes but without a Docker environment.

Recently I published a repository with a set of files that form a universal Docker and VSCode environment to let you either import and run your repository in InterSystems IRIS Community Edition on Docker or turn your repository into Docker and VSCode environment for InterSystems IRIS Community Edition.

So in one sentence:

Unpack these files in your folder and you have the Docker and VSCode environment for your InterSystems IRIS ObjectScript application!

See the details below.

0
1 796
Announcement Evgeny Shvarov · Mar 4, 2020

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.

27
4 1959
Announcement Evgeny Shvarov · Mar 4, 2020

Hi Developers!

It's just a statement to let you know who is working for you this year as Developer Community Moderators. Here is our noble team!

English Community:

@Eduard Lebedyuk

@John Murray

@Dmitry Maslennikov

@Robert Cemper

@Jeffrey Drumm

@Scott Roth

Spanish Community:

@Kurro Lopez

@Nancy Martínez

Moderators! thanks for your hard work to make this place busy and helpful!

Developers! You can meet in person all the moderators on InterSystems Global Summit 2020 in Seattle this year and on regional events. 

Stay tuned!

3
0 251
Announcement Evgeny Shvarov · Mar 3, 2020

Hi Developers!

This is the digest of new solutions and applications submitted to InterSystems OpenExchange in February 2020!

New applications in February 2020

EXCEL SUDOKU by alex kosinets

Sudoku game implementation in Excel using InterSystems IRIS as a server

RESTForms2 by Henry Hamon Pereira

RESTForms2 is a framework to create the REST API for InterSystems IRIS persistent objects  automatically

FirstLook-Globals by Evgeny Shvarov

Firstlook example of InterSystems Globals

IRIS Interoperability Message Viewer by Henrique Gonçalves Dias

A new approach for the Interoperability Message Viewer

iKnow by Benjamin De Boe

The iKnow Natural Language Processing technology was originally developed in Belgium and then acquired by InterSystems in 2010. In February 2020, InterSystems published the technology to open source, expanding the possible use cases for it beyond embedded use from the InterSystems IRIS Data Platform. iKnow is open to community contributions to enhance the engine, language models and interfaces for use in-text exploration, information extraction, and machine learning use cases.

0
0 213
Article Evgeny Shvarov · Feb 24, 2020 9m read

Hi Developers!

Many of you publish your InterSystems ObjectScript libraries on Open Exchange and Github.

But what do you do to ease the usage and collaboration to your project for developers?

In this article, I want to introduce the way how to introduce an easy way to launch and contribute to any ObjectScript project just by copying a standard set of files to your repository.

Let's go!

21
6 2521
Article Evgeny Shvarov · Feb 21, 2020 1m read

Hi Developers!

Another way to start using InterSystems ObjectScript Package Manager is to use prebuilt container images of InterSystems IRIS Community Edition and InterSystems IRIS for Health Community Edition.

We deploy this IRIS images on DockerHub and you can run it with the following command:

docker run --rm -p 52773:52773 --init --name my-iris -d intersystemsdc/iris-community:2019.4.0.383.0-zpm

Launch a terminal with:

docker exec -it my-iris iris session IRIS

And install zpm-module as:

USER>zpm 

zpm: USER>install objectscript-math

[objectscript-math] Reload START

[objectscript-math] Reload SUCCESS

[objectscript-math] Module object refreshed.

[objectscript-math] Validate START

[objectscript-math] Validate SUCCESS

[objectscript-math] Compile START

[objectscript-math] Compile SUCCESS

[objectscript-math] Activate START

[objectscript-math] Configure START

[objectscript-math] Configure SUCCESS

[objectscript-math] Activate SUCCESS

zpm: USER>

And use same commands for InterSystems IRIS for Health using the tag: intersystemsdc/irishealth-community:2019.4.0.383.0-zpm

The images are being published on IRIS Community Edition and IRIS Community Edition for Health repositories of Docker Hub.

We will update tags with every new release of IRIS and ZPM.

Happy coding!

0
1 435
Article Evgeny Shvarov · Feb 15, 2020 5m read

Hi Developers!

As you know the concept of ObjectScript Package Manager consists of ZPM client - client application for IRIS which helps you to install packages from the registry. And the code which works "on the other side" is  ZPM Registry - server which hosts packages and exposes API to submit, list and install it. Now when you install the ZPM client it installs packages from community package registry, which si hosted on pm.community.intersystems.com

But what if you want your own registry? E.g. you produce different software packages for your clients and you want to distribute it via private registry?  Also, you may want to use your own registry to deploy solutions with different combinations of packages.

Is it possible? The answer is YES! You can have it if you deploy ZPM registry on your server with InterSystems IRIS.

To make it happen you would need to set up your own registry server.

How to do that?

2
1 1271
Announcement Evgeny Shvarov · Feb 4, 2020

Hi Developers!

This is the digest of new solutions and applications submitted to InterSystems OpenExchange in January 2020!

New applications in January 2020

OUReports by Irina Yaroshevskaya

Online reporting tool for InterSystems IRIS. Online User Reports - automatically analyzes data - generates automated reports - provides interface for ad hoc reports - conducts statistical research. Learn more on OUReports.com

Samples-Aviation by InterSystems

Provides sample data for use in exploring InterSystems IRIS Text Analytics capabilities.

objectscript-package-example by Evgeny Shvarov

ObjectScript Package example with a simplified folder structure to edit/compile/collaborate with InterSystems IRIS, Docker and Github.

Reducing Readmission Risks with Realtime ML by Amir Samary

Patient Readmissions are said to be the Hello World of Machine Learning in Healthcare. We use this problem to show how IRIS can be used to safely build and operationalize ML models for real time predictions and how this can be integrated into a random application.

REST Business Activity Monitoring by Stephen Pisani

Send IRIS Business Metrics to a REST Endpoint, or host a REST API to retrieve Business Metric values

eXTreme for IRIS / Caché Example by Iryna Mykhailova

A console .NET application which shows how to access, create and store globals from a .NET application using eXTreme.

zpm-dockerhub by Evgeny Shvarov

repository for publishing zpm enabled images for InterSystems IRIS via Github Actions

0
0 196
Article Evgeny Shvarov · Jan 25, 2020 4m read

Hi Developers!

"objectscript.conn" :{
      "ns": "IRISAPP",
      "active": true,
      "docker-compose": {
        "service": "iris",
        "internalPort": 52773
      }

I want to share with you a nice new feature I came across in a new 0.8 release of VSCode ObjectScript plugin by @Dmitry Maslennikov and CaretDev.

The release comes with a new configuration setting "docker-compose" which solves the issue with ports you need to set up to make your VSCode Editor connect to IRIS. It was not very convenient if you had more than one docker container with IRIS running on the same machine. Now, this is solved!

Read below how it works now.

8
3 943
Article Evgeny Shvarov · Jan 24, 2020 3m read

Hi Developers!

Recently we released the updated version 0.1.3 of ObjectScript Package Manager (ZPM) which comes with the support of simplified ObjectScript sources folder structure.

What 'simplified' does mean?

Before 0.1.3 ZPM expected the following structure:

/src

---/cls  - for ObjectScript classes

---/cls/package_name/class_name.cls

---/cls/package_name/class_name2.cls

---/mac - or Mac ObjectScript routines

---/mac/package_name/mac_routine.mac

---/mac/package_name/mac_routine2.mac

---/inc - for ObjectScript macro include files.

---/inc/package_name/include_file.inc
3
1 1021
Article Evgeny Shvarov · Jan 18, 2020 2m read

Hi Developers!

Many of you are looking for samples on how to work with InterSystems IRIS Analytics, formerly known as DeepSee.

There is a Samples BI module with Patients and Holefoods examples which is available on Github with source code. The installation steps are clear but take time. 

Recently we added the option to run IRIS Community Edition containers with ObjectScript Package Manager (ZPM) on board. This simplifies the installation to the "run-one-command" step for the modules submitted to ZPM Community Registry. And thus we can benefit the Samples BI installation with ZPM.

And here is how you can run it on your laptop.  Let's go!

1
0 480
Article Evgeny Shvarov · Jan 17, 2020 2m read

Hi Developers!

Recently we published on Docker Hub images for InterSystems IRIS Community Edition and InterSystems IRIS Community for Health containers.

What is that?

There is a repository that publishes it, and in fact, it is the same container IRIS Community Edition containers you have on official InterSystems listing which have the pre-loaded ObjectScript Package Manager (ZPM) client.

So if you run this container with IRIS CE or IRIC CE for Health you can immediately start using ZPM and install packages from Community Registry or any others.

What does this mean for you?

It means, that anyone can deploy any of your InterSystems ObjectScript application in 3 commands:

  • run IRIS container;
  • open terminal;
  • install your application as ZPM package.

It is safe, fast and cross-platform.

It's really handy if you want to test a new interesting ZPM package and not harm any of your systems.

Suppose, you have docker-desktop installed.  You can run the image, which wiil pull the latest container if you don't have it locally:

1
0 373
Article Evgeny Shvarov · Jan 15, 2020 3m read

Hi Developers!

Often when we install a code package we want to make some post-install settings, e.g. call to a method, set up a configuration file.

This article describes how to do this with the ObjectScript Package Manager.

To make any post-install calls you need to add <Invoke> elements into <Invokes> tag to the module.xml. Each <Invoke> element can have nested <Arg> elements if you want to pass params to the method:

<Invokes>

<Invoke Class="Class.Name1" Method="MethodName1">

<Arg>Sting Value</Arg>

<Arg>123</Arg>
</Invoke>

</Invkoes>

Here is an example module.

0
1 642
Article Evgeny Shvarov · Jan 12, 2020 2m read

Hi Developers!

Suppose you published your application on Open Exchange with version 1.00. And then you've added a new outstanding feature and you make a new release.

You can also make a new release of your application on Open Exchange.

Why make releases on Open Exchange? 

This the way for you to highlight the new features of your application. When you publish a new release the following happens:

Release notes appear on the News page of Open Exchange

The version of your app changes

Version History tab is updated

All the followers of you, your application or your company receive an email notification.

0
0 314
Article Evgeny Shvarov · Jan 10, 2020 3m read

Hi Developers!

This post describes how you could publish your InterSystems application on Open Exchange.

What is the InterSystems application?

It could be anything, which is built with InterSystems data platforms or to help work with InterSystems data platforms: InterSystems IRIS, InterSystems IRIS for Health, InterSystems HealthShare, InterSystems Ensemble and InterSystems Caché. This could be tools, frameworks, adapters, examples and business solutions.

Why publish on Open Exchange?

InterSystems Open Exchange is an "App Central" for the solutions in InterSystems. It's the first place where the developer goes to look for tools, frameworks, and examples on InterSystems IRIS. And Open Exchange brings the added traffic to your solution which could be converted into leads.

We are having a set of business development tools for published Open Exchange applications. This definitely makes your InterSystems application more noticed.

Submitting an application

Suppose you have a library with open source published on Github which you want to publish on Open Exchange. For the purpose of a demo, I'll fork this remarkable project of @Peter Steiwer ObjectScript-Math which I forked and renamed to object script-super-math.

2
0 426
Announcement Evgeny Shvarov · Jan 3, 2020

Hi Developers!

This is the digest of new solutions and applications submitted to InterSystems OpenExchange in December 2019!

New applications in December 2019

ObjectScript-Math 

Math library for InterSystems ObjectScript

Author: @Peter Steiwer , OEX Profile

JSONExportManyToMany

Sample for %JSONExport against a class with Many to Many Relationship

Author: @Peter Steiwer , OEX Profile
 

InterSystems ObjectScript zpm-registry

Server-side hosting service for ObjectScript packages installable via ZPM client.

Author: @Evgeny Shvarov, OEX Profile

Publisher: InterSystems Corporation

SUDOKU

SUDOKU game written in InterSystems ObjectScript

Author: @Robert Cemper, OEX Profile

Portlet Samples

Sample DeepSee Portlets showing different ways to implement custom widgets

Author: @Peter Steiwer , OEX Profile
 

Advent of Code ObjectScript Docker Template

A simple template to craft Advent of Code with ObjectScript in InterSystems IRIS

Author: @Evgeny Shvarov, OEX Profile

Ingestion Speed Test
Shows how IRIS can ingest thousands or millions of records per second while allowing for queries on the same cluster. Works on a single IRIS instance or on an IRIS cluster on the cloud.

Author: @Amir Samary, OEX Profile

John Conway's Game of Life

With this class, you could simulate Game of Life world that John Conway invented in 1970. We can see how John Conway universe evolves in our terminal

Author: @Jose-Tomas Salvador, OEX Profile

0
0 172
Question Evgeny Shvarov · Dec 26, 2019

Hi Developers!

I stuck with one interesting problem. 

For example, let's use this template repo. If you build this container A using docker-compose and then run the container it exposes REST-API  which is available on:

localhost:52773/person/all

The question is how to make this REST-API accessible from another docker container B running on the same machine? E.g. with IRIS 2019.4 Community from this repo?

The problem is that for the second container localhost it's something which belongs to container B.

I think I need to set up a network between containers somehow. E.g. using docker-compose. But is there any simpler way?

2
0 383
Discussion Evgeny Shvarov · Dec 24, 2019

Hi Developers!

Recently we updated the look and feel of articles on DC:

The font is bigger, with no ads on aside.

Articles look like that now:

The intent was to make reading process for articles more focused cause sometimes we want to share a deeper thought with article and this needs more concentration and less distraction.

Do you like it?

Share your thoughts, please?

1
0 301