Introduction

Nowadays, there is a lot of applications that are using Open Authorization framework (OAuth) to access resources from all kinds of services in a secure, reliable and efficient manner. InterSystems IRIS is already compatible with OAuth 2.0 framework, in fact, there is a great article in the community regarding OAuth 2.0 and InterSystems IRIS in the following link here.

5 1
0 1.3K

Whats NLP Stands For?

NLP stands for Natural Language Processing which is a field of Artificial Intelligence with a lot of complexity and
techniques to in short words "understand what are you talking about".

And FHIR is...???

FHIR stands for Fast Healthcare Interoperability Resources and is a standard to data structures for healthcare. There are
some good articles here explainig better how FHIR interact with Intersystems IRIS.

4 2
0 653
Article
· Aug 26, 2020 3m read
Updating Patient Resource using fhir.js

Hi Community,

I shared my experience working with FHIR for the first time in this article.

In that article, I wrote how I explored the FHIR Resources and talked about the information that I found useful in FHIR documentation.

The first version of my app only shows the information that FHIR Resource provides.

I wanted to make the user able to update the patient details, so I to search for an example of how to do it.

2 2
0 934
Article
· Aug 22, 2020 2m read
My experience working with FHIR

Hi Community,

I want to share my experience creating the iris-fhir-portal with FHIR.

I decided to take a step forward and join the IRIS for Health FHIR contest, but I had never worked with FHIR before.

After the FHIR Contest Kick-Off Webinar, where we got an overview of how the IRIS for Health works with FHIR, I started to looking at the FHIR documentation to create my Patient Chart project.

3 5
1 958

Hi guys.

Recently, I get interest in FHIR in order to run for the IRIS for Health FHIR
contest
. As a beginner on this topic, I've heard somewhat about it, but I didn't know how complex and powerful was FHIR. As pointed out by @Henrique.GonçalvesDias here, you can model several aspects of the patient history and other related entities.

4 5
0 297

Keywords: IRIS, IntegratedML, Machine Learning, Covid-19, Kaggle

Continued from the previous Part I ... In part I, we walked through traditional ML approaches on this Covid-19 dataset on Kaggle.

In this Part II, let's run the same data & task, in its simplest possible form, through IRIS integratedML which is a nice & sleek SQL interface for backend AutoML options. It uses the same environment.

0 0
0 513
Article
· Aug 22, 2020 1m read
Transition from Cache to IRIS: Value Canvas

Some clients ask me about migrate from Cache to IRIS. Why migrate to IRIS? Cache is excellent, stable, has good performance. These clients are right, but in the last years, the digital transformation imposed more complete solutions for the new requirements and InterSystems was a visionary to perceive it and launch IRIS.
It is a data platform ready to this digital transformation challenge. To show this, I created a Value Canvas.

1 0
3 505

Dynamic PoolSize (DPS) Experiment

Purpose:

Enhance Ensemble or IRIS production so it can dynamically allocate pool size for adapter-based components based on their utilization.

Sometimes, an unexpected traffic volume occurs, and default pool size allocated to production components may become a bottleneck. To avoid such situations, I created a demonstrator project some 2 years ago to see, whether it would be possible and feasible to modify production, so it allowed for dynamically modifying its components per their load.

5 3
0 469

Asymmetric cryptography is a cryptographic system that uses pairs of keys: public keys which may be disseminated widely, and private keys which are known only to the owner. The generation of such keys depends on cryptographic algorithms based on mathematical problems to produce one-way functions. Effective security only requires keeping the private key private; the public key can be openly distributed without compromising security.

In such a system, any person can encrypt a message using the receiver's public key, but that encrypted message can only be decrypted with the receiver's private key.

Robust authentication is also possible. A sender can combine a message with a private key to create a short digital signature on the message. Anyone with the sender's corresponding public key can combine the same message and the supposed digital signature associated with it to verify whether the signature was valid, i.e. made by the owner of the corresponding private key. (C) Wikipedia.

0 2
0 619

In the past, reading information from a bar code was limited to a simple alphanumeric code. The creation of a bar code with more than one dimension (2D), especially the QR Code, allowed to increase the amount and variety of data stored in a bar code. While conventional bar codes are capable of storing a maximum of approximately 20 digits, the QR Code is capable of handling several tens to hundreds of times more information. This revolutionized the markets. Now QR codes are everywhere and can be very useful for storing textual, numeric, alphanumeric and even binary data.

4 2
3 1.2K

This is the third post of a series explaining how to create an end-to-end Machine Learning system.

Training a Machine Learning Model

When you work with machine learning is common to hear this work: training. Do you what training mean in a ML Pipeline?
Training could mean all the development process of a machine learning model OR the specific point in all development process
that uses training data and results in a machine learning model.

4 10
2 290
Article
· Aug 2, 2020 1m read
Application Errors Analytics

Hi Developers!

As you know the application errors live in ^ERRORS global. They appear there if you call:

d e.Log() 

in a Catch section of Try-Catch.

With @Robert Cemper's approach, you can now use SQL to examine it.

Inspired by Robert's module I introduced a simple IRIS Analytics module which shows these errors in a dashboard:

3 5
1 298
Article
· Aug 3, 2020 3m read
Global Scanning & Slicing

In most cases, a global used by default storage has just 1 subscript level that represents the IDKEY.
For an index-globals we may see 2 or more subscript levels.
Arrays, or parent-child relationships or persistent classes extending a base data class
are examples where we see more levels. Though all these globals are quite uniform.

7 0
2 374

I studied about developer services offered by main manufactures, and InterSystems is the leader, see:

Better Developer support/services
Feature InterSystems Microsoft Oracle IBM Redhat
Development Community Web Portal 1 1 1 1 1
Discord or twitch developer channel 1 1 0 0 0
Linkedin, Twitter, Facebook developer channel 1 1 1 1 1
YouTube and Podcast Channel 1 1 1 1 1
Certification program 1 1 1 1 1
Developer Open IDE Tools 1 1 1 0 1
Newsletter 1 1 1 1 1
Free e-learning courses 1 0 0 0 0
Online product documentation 1 1 1 1 1
Free product community edition 1 1 1 0 1
Free product instance in the public cloud 1 1 1 1 0
Free Hands-on e-books 0 0 0 1 1
Developer Community Open source solutions portal 1 1 0 0 0
Gamified developer community portal 1 0 0 0 0
Frequent hackthon competitions 1 0 0 1 0
Redeem prizes from developer participation efforts 1 0 0 0 0
Global Developer event 1 1 1 1 1
Public recognition by developer level 1 0 1 0 0
Meetup groups 1 1 1 1 1
Open source initiatives 1 1 1 1 1
Total: 19 14 13 12 12

4 2
1 208

Setting up Management Portal Help Pages for Full WebServers

On each page of the System Management Portal, there is a “Help” button. This takes users to an article in documentation that describes the page functionality and use.

Caché provides local documentation for all of these articles.

InterSystems IRIS does not provide local documentation. Instead, the Help button will redirect users to the articles in the online documentation at docs.intersystems.com.

4 0
0 507

Hi Developers!

Recently we launched InterSystems Package Manager - ZPM. And one of the intentions of the ZPM is to let you package your solution and submit into the ZPM registry to make its deployment as simple as "install your-package" command.

To do that you need to introduce module.xml file into your repository which describes what is your InterSystems IRIS package consists of.

This article describes different parts of module.xml and will help you to craft your own.

I will start from samples-objectscript package, which installs into IRIS the Sample ObjectScript application and could be installed with:

zpm: USER>install samples-objectscript

It is probably the simplest package ever and here is the module.xml which describes the package:

<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
  <Document name="samples-objectscript.ZPM">
    <Module>
      <Name>samples-objectscript</Name>
      <Version>1.0.0</Version>
      <Packaging>module</Packaging>
      <SourcesRoot>src</SourcesRoot>
      <Resource Name="ObjectScript.PKG"/>
    </Module>
  </Document>
</Export>

6 12
6 1.4K
Article
· Jul 27, 2020 2m read
ZPMshow, a helper for tired fingers

The offer of ZPM is growing daily and the short names and
acronyms of the offer are sometimes hard to understand and
also hard to type with my lazy fingers.

So I decided to have

  • a listing with the descriptions from the repository,
  • split in short junks to avoid backscroll,
  • controlled forward / backward scrolling,
  • the option to select my packages by number,
  • to install or uninstall with limited typing.

It runs with do ^zpmshow

A snapshot from the screen:

12 0
0 355

This article is a continuation of Deploying InterSystems IRIS solution on GKE Using GitHub Actions, in which, with the help of GitHub Actions pipeline, our zpm-registry was deployed in a Google Kubernetes cluster created by Terraform. In order not to repeat, we’ll take as a starting point that:

1 1
1 595
Article
· Jul 20, 2020 1m read
Fast JSON formatting (IRIS)

t's also an example for a customized command extension (ZZJSON) in IRIS

IRIS has a nice %JSON.Formatter class.
But for debugging it is not really handy.
see:

ZWRITE js1  
js1="{""Name"":""Cunningham,John C."",""SSN"":""294-11-9150"",""DOB"":""1933-01-08"",""Home"":{""Street"":""4249 Ash Street"",""City"":""Tampa"",""State"":""MD"",""Zip"":""30176""},""FavoriteColors"":\[""White"",""Red"",""Green""]}"   

so you proceed for the most simple case

7 0
0 479
Article
· Jul 20, 2020 1m read
IRIS NativeAPI for Node.js compact

An all-in-1 package of the WebSocket MicroService Demo

To simplify the demo of the WebSocket-Micro-Server (WSockClientMicroSV)
the whole package is now bundled into a single Docker Image

How to use it

From the same terminal start the IRIS based client and prepare your orders

  docker-compose exec iris iris session iris %ZSocket

on WebTerminal it is simply

9 0
0 560
Article
· Jul 20, 2020 2m read
SPOOL as SQL Table

It is a classic Global Mapping exercise presenting ^SPOOL as Class / Table

Background

Device #2 named SPOOL dates back to the predecessors of Caché and IRIS
It was the first "%Stream" like option to buffer output before printing.
It is also the first and till today the most simple way of output redirection.

Solution

This is also an example of a mapped Global.
USE 2 redirects the output into the Global ^SPOOL

11 0
0 340

This is my introduction to a series of posts explaining how to create an end-to-end Machine Learning system.

Starting with one problem

Our IRIS Development Community has several posts without tags or wrong tagged. As the posts keep growing the organization
of each tag and the experience of any community member browsing the subjects tends to decrease.

First solutions in mind

We can think some usual solutions for this scenario, like:

5 11
2 411