5 Followers · 224 Posts

A programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications.

Article Oleksandr Zaitsev · Jul 3, 2023 3m read

Introduction

A password manager is an important security tool that allows users to store and manage their passwords without the need to remember or write them down in insecure places. In this article, we will explore the development of a simple password manager using the Flask framework and the InterSystems IRIS database.

Key Features

Our password manager application will provide the following key features:

  1. User registration with account creation.
  2. User authentication during login.
  3. Adding new passwords with a title, login, and password.
  4. Encryption and secure storage of passwords in the
1
0 492
Article Pietro Montorfano · May 23, 2023 3m read

Intro

If you ever wondered how to debug some requests that are being made to or from IRIS, well here is a little tutorial on how to do that.

During a complex project, usually you get the specifications and implement the communication between IRIS and other things based on that. But from the paper to the real world there's usually a huge gap and you need to know why you are receiving an error on a parameter, on a header, you are not receiving the data and so on.

If the connection is a plain http connection there's no problem, you can always fire up tcpdump and capure the traffic, but what about

1
2 624
Article John Murray · Feb 6, 2023 2m read

Strap on this jetpack to boost your developer experience in Visual Studio Code.

DX Jetpack for VS Code was my entry for the 2023 Developer Tools Contest, where it achieved 2nd place in the Experts vote and 5th place in the Community vote. It is an extension pack for VS Code, bundling three entirely new extensions created by me, plus a couple that we at George James Software published previously.

The new extensions are:

If you're reluctant to install DX Jetpack right away, why not try it using a dev container? In the dev container is an InterSystems IRIS Community environment augmented with InterSystems Package Manager (IPM) and the isc-codetidy package.

2
1 621
Article Dmitry Maslennikov · Feb 6, 2023 4m read

Let me introduce my new project, which is irissqlcli, REPL (Read-Eval-Print Loop)  for InterSystems IRIS SQL 

  • Syntax Highlighting
  • Suggestions (tables, functions)
  • 20+ output formats
  • stdin support
  • Output to files 

Install it with pip

pipinstallirissqlcli

Or run with docker

dockerrun-itcaretdev/irissqlcliirissqlcliiris://_SYSTEM:SYS@host.docker.internal:1972/USER

Connect to IRIS

$ irissqlcli iris://_SYSTEM@localhost:1972/USER -W
Password for _SYSTEM:
Server:  InterSystems IRIS Version 2022.3.0.606 xDBC Protocol Version 65
Version: 0.1.0
[SQL]_SYSTEM@localhost:USER> select $ZVERSION
+---------------------------------------------------------------------------------------------------------+
| Expression_1                                                                                            |
+---------------------------------------------------------------------------------------------------------+
| IRIS for UNIX (Ubuntu Server LTS for ARM64 Containers) 2022.3 (Build 606U) Mon Jan 30202309:05:12 EST |
+---------------------------------------------------------------------------------------------------------+
1 row in set
Time: 0.063s
[SQL]_SYSTEM@localhost:USER> help
+----------+-------------------+------------------------------------------------------------+
| Command  | Shortcut          | Description                                                |
+----------+-------------------+------------------------------------------------------------+
| .exit    | \q                | Exit.                                                      |
| .mode    | \T                | Change the table format used to output results.            |
| .once    | \o [-o] filename  | Append next result to an output file (overwrite using -o). |
| .schemas | \ds               | List schemas.                                              |
| .tables  | \dt [schema]      | List tables.                                               |
| \e       | \e                | Edit command with editor (uses $EDITOR).                   |
| help     | \?                | Show this help.                                            |
| nopager  | \n                | Disable pager, print to stdout.                            |
| notee    | notee             | Stop writing results to an output file.                    |
| pager    | \P [command]      | Set PAGER. Print the query results via PAGER.              |
| prompt   | \R                | Change prompt format.                                      |
| quit     | \q                | Quit.                                                      |
| tee      | tee [-o] filename | Append all results to an output file (overwrite using -o). |
+----------+-------------------+------------------------------------------------------------+
Time: 0.012s
[SQL]_SYSTEM@localhost:USER>
20
2 967
Article water huang · Mar 19, 2023 9m read

1.Background

        1.1 I met a few project that their interface servers were crashed. Cutoms wanted resume server as fast as we can. their servers are running at lan,and they can't use git,there are some namesapce in the server running different service,and usualy there is only one server.

        1.2 In the message,it has property in type of characterstream,as you know,the message search page doesn't support filtering with  property of characterstream,so it's so hard to find the messge you want.

        1.3 Other workmate may update the code on the server,and mybe their is something wrong.

2.Ch

11
2 736
Article Heloisa Paiva · Feb 22, 2023 4m read

Why I've decided to write this

Once again I had a challenge that costed me some time and a lot of testing to reach the best solution. And now that I've managed to solve it, I'd like to share a little bit of my knowledge.
 

What happened?

In a namespace there were a lot of similar classes, so to make them simpler there were a superclass with comon properties. Also, there are relationships between them. I had to export one of them to JSON, but I couldn't change the superclasses, or I would break down the flow of many other integrations.

What made it all difficult was the problem that my JSON

0
2 486
Article Oliver Wilms · Feb 2, 2023 1m read

Messages.log file contains lots of useful information about IRIS. Sometimes the file gets big, and it is not easy to get to the data I am interested to review. It would be nice to jump to a specific date and time we suspect a problem may have started.

Whenever I need support from InterSystems, WRC will ask to send them messages.log file. Dependent on where IRIS is deployed, it may be cumbersome to obtain messages.log file for sending it to InterSystems.

My team works on deploying IRIS containers in Kubernetes in the cloud.

1
0 305
Announcement Evgeny Shvarov · Feb 9, 2023

Hi Developers!

Here is the score of technical bonuses for participants' applications in the InterSystems Developer Tools Contest 2023!

Project

Idea Implementation

Python

Docker

ZPM

Online Demo

Code Quality

First Article on DC

Second Article on DC

Video on YouTube

First Time Contribution

Total Bonus

Nominal 3 3 2 2 2 1 2 1 3 3 22
gateway-sql 3   2 2 2 1         10
xml-to-udl     2     1 2   3 3 11
iris-persistent-class-audit     2 2   1 2   3 3 13
GlobalStreams-to-SQ
35
0 485
Announcement John Murray · Feb 10, 2023

I just released an update of the gj :: codeSpex extension containing a new feature - Exclusions.

There's now a short video demonstrating how exclusions can help you focus on the packages you're less familiar with. The video also illustrates how with the ObjectScript Class View extension you can easily explore the inheritance of your classes.

Both extensions are members of the DX Jetpack, my entry in the 2023 Developer Tools contest. Voting closes very soon, so if you like what I've created please encourage me to do more by VOTING FOR ME here.

0
0 206
Announcement Laurel James (GJS) · Feb 10, 2023

If you haven’t already please give @John Murray your vote in the Developer Tool contest >> http://bit.ly/3XcxyeS


🚀 DX Jetpack boosts your developer experience when using VS Code with InterSystems platforms. 🚀


This extension pack includes: 

gj :: codeSpex - showing help using VS code's commenting feature.

 

ObjectScript class view - View and navigate all class members plus where they are inherited from.

 

ServerDiff - See the difference between the code you are editing in VS Code and the server copy.

 

You can vote here >> http://bit.ly/3XcxyeS

1
0 236
Announcement Evgeny Shvarov · Jan 26, 2023

Here're the technology bonuses for the InterSystems Developer Tools Contest 2023 that will give you extra points in the voting:

  • Embedded Python usage
  • Docker container usage
  • ZPM Package Deployment
  • Online Demo
  • Code Quality pass
  • Article on Developer Community
  • The second article on Developer Community
  • Video on YouTube
  • First Time Contribution
  • Community Idea Implementation

See the details below.<--break->

Embedded Python - 3 points

Use Embedded Python in your application and collect 3 extra points. You'll need at least InterSystems IRIS 2021.2 for it.

Docker container usage - 2 points

The application

4
0 451
Announcement Laurel James (GJS) · Feb 7, 2023

Listen to CEO George James chat with Derek Robinson, host of the InterSystems DataPoints podcast talk about source control, developer tools and how our solutions are beneficial for InterSystems IRIS users.

 

In this short 17 minute episode, George and Derek discuss our work with developer tools, and how choosing the right source control can provide users with a seamless solution - which is why Deltanji is seen as the go-to source control for InterSystems IRIS users.

Listen now on the InterSystems website > https://bit.ly/3Jp5py5
or wherever you get your podcasts - just search for 'InterSystems DataPoints'.

0
0 248
Announcement Anastasia Dyubaylo · Jan 13, 2023

Hey Developers,

We'd like to invite you to join our next contest dedicated to creating useful tools to make your fellow developers' lives easier

🏆 InterSystems Developer Tools Contest 🏆

Submit an application that helps to develop faster, contributes more qualitative code, and helps in testing, deployment, support, or monitoring of your solution with InterSystems IRIS.

Duration: January 23 - February 12, 2023

Prize pool: $13,500

 

14
2 2394
Article Daniel Aguilar · Feb 5, 2023 2m read

Hi Community!

I want to share with you mi first Open Exchange application.

It's a tool to made our developments easier. It's a micro service in a IRIS docker that help us in our new features giving us a way to add short links in our SMS, Email campaigns and for links of the different stores for our apps.

It's very easy to use it.

Simply clone this repo:

https://github.com/daniel-aguilar-garcia/cos-url-shortener.git

Open the folder in VSCode and start the docker.

 

After that you can create short link version of any link via api request. For example with Postman:

Body: Long url that you want make

0
0 414
Article Robert Cemper · Jan 30, 2023 2m read

The similarity between JSON objects + arrays and Globals in IRIS or Caché is evident.
With small and medium size JSON objects navigation across %Dynamic Objects is comfortable.
But with large and/or deep cascaded objects it becomes a challenge.

The presented tool offers 3 variants

  • loading an already existing %Dyamic object or Array into a global of your choice
  • loading a %Stream containing a JSON object into a global of your choice
  • loading an external File containing a JSON object into a global of your choice
1
2 351
Article Eduard Lebedyuk · Feb 19, 2016 12m read

Suppose you have developed your own app with InterSystems technologies stack and now want to perform multiple deployments on the customers' side. During the development process you've composed a detailed installation guide for your application, because you need to not only import classes, but also fine-tune the environment according to your needs.
To address this specific task, InterSystems has created a special tool called %Installer. Read on to find out how to use it.

9
4 4668
Announcement Laurel James (GJS) · Nov 4, 2022

Thank you to everyone who joined our User Group Session yesterday!

It was great showing off the new Deltanji Production Component driver that facilitates source control of interoperability productions, and we had some really insightful discussions as well.

If you missed out on the session and would like a copy of the recording, feel free to drop me a message. 

0
0 277
Announcement Laurel James (GJS) · Oct 27, 2022

Hi developers!

If you missed our presentation at the InterSystems UK&I Summit and our demo during the Source Control roundtable, but you still want to find out more about source control for Interoperability Productions... there’s another chance to see it at our User Group Session next Thursday, November 3rd at 3pm (GMT)

The new driver enables highly granular management of Interoperability Productions with tight integration into the InterSystems IRIS management management portal. 

Sign up via eventbrite here >> https://bit.ly/3yqzfvS

0
0 233
Article Murray Oldfield · Oct 25, 2022 4m read

YASPE is the successor to YAPE (Yet Another pButtons Extractor). YASPE has been written from the ground up with many internal changes to allow easier maintenance and enhancements.

YASPE functions:

  • Parse and chart InterSystems Caché pButtons and InterSystems IRIS SystemPerformance files for quick performance analysis of Operating System and IRIS metrics.
  • Allow a deeper dive by creating ad-hoc charts and by creating charts combining the Operating System and IRIS metrics with the "Pretty Performance" option.
  • The "System Overview" option saves you from searching your SystemPerformance files for system details or common configuration options.

YASPE is written in Python and is available on GitHub as source code or for Docker containers at:


1
5 885
Announcement Laurel James (GJS) · Oct 13, 2022

We’ll be hosting our bi-annual virtual User Group Session on Thursday, November 3rdat 3pm (GMT). We will demonstrate the new Production component driver for Deltanji - it enables highly granular management of Interoperability Productions with tight integration into the management portal. 

The session is also an opportunity for us to help to problem-solve any issues you're having, and a chance for you to offer your feedback on our tools.

Those interested in finding out more about Deltanji source control are welcome to join us too.

Sign up for free on Eventbrite >> https://bit.ly/3yBVYVO

0
0 307
Article Paul Hurley · Aug 17, 2022 1m read
IrisStat options
a All
b bits
c counters
d dump processes
e error log
f global module flags
g ^GLOSTAT info
h irisstat usage
j journal
k prefetch daemons
l LRU global buffers
m GFILETAB
n network
o clear irisstat
p processes
q hibernation semaphores
s irisstat exe directory
t run irisstat in loop
u locks
v Check versions
w write daemon queues
   
B Blocks in GBFSPECQ
C inter-job comms
D sample block collisions
E cluster status
G
0
0 459
Discussion David Hockenbroch · Aug 5, 2022

Has anyone had any success reading barcodes from PDFs or images in a Cache/IRIS application? I've been looking at some possible solutions for this, including the open source ZXing libraries. I know we have the ability to create them in Zen and Intersystems Reports, but as far as I know, there's nothing built in to actually read data from a barcode. If anyone has suggestions on how to go about this, I'd love to hear them.

In our specific case, we print reports with a Code 128 barcode on them.

2
0 422
Article Lucas Enard · Jul 27, 2022 7m read

Following this GitHub we will see how the FIX protocol can be implemented easily using IRIS and Python.

If you don't have much time focus on the Send a Quote before the Order part near the end, as it will, in a matter of minute, tell you how to send a Quote Request followed by an Order Request and show you the result from the server, and that in no more than five clicks.

IRIS-fix-protocol

Implementation of the fix protocol using an IRIS python container for the initiator and a regular python container for the acceptor.

The Financial Information eXchange (FIX®) Protocol has revolutionized the

4
0 1125
Article Sergei Sarkisian · Jun 29, 2022 12m read

Hi! As a developer who was forced to move from Mac to Windows (temporary) I found some things a bit confusing. In this article I would like to talk about some tweaks I made to make my experience smoother. I think it can help not only Mac users who need to use Windows environment (for ex. in VMs), but also can help some Windows users to make some things more convenient. Of course, all the points are subjective, the best setup is one that works for you.

All the tweaks are related to Windows 10 as I don’t have an access to Windows 11 at the moment.

Getting rid of excess

Streamline start menu

The

7
2 929
Article Lorenzo Scalese · May 30, 2022 3m read

Hi Community,

Recently, I migrated a series of Objectscript repositories from XML to UDL format.
After the migration, I was a bit disappointed by the presentation on the GitLab web interface.

Since Objectscript syntax is supported by GitHub, I thought It would be also supported by GitLab. Unfortunately, the library used by GitLab to highlight the code does not have an extension to support Objectscript.

GitLab uses the library Rouge, which can highlight over 200 languages. This is a library written in Ruby (see the GitHub page), but Objectscript is not in the list.
So, I decided to develop an

1
2 634
Article Sergey Mikhailenko · Apr 8, 2022 2m read

image I will devote the third article to a story about the additional features of the project.

znamespace

Very often you need to find out if there is a specific package in the current instance, for example, so as not to duplicate. To do this, I implemented a modification of the namespace command of the package manager, on the option tab, you need to press the FIND button. image

You can filter by package name. You can filter by package name. As a result, we get a list in which namespaces, which versions of packages are. image

package

After installing the package, sometimes there is a need to collect all the files

0
0 213