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.
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.
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'.
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.
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.
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.
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.
In our team, there are several developers working in parallel on different projects. To ensure this distributed collaboration and high-quality code reviews, we rely on version control with Git. Our challenge is to harmonize the unique characteristics of InterSystems products and the possibilities of Git and Docker.
The power of the presented tool becomes visible with a large JSON file. The example I have prepared is composed of the daily results of AoC 2023. Anonymization makes it usable for demo purposes.
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
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.
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.
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.
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:
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.
https://www.youtube.com/embed/S11OXXiqdiQ [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]
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.
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.
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.
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.
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.
In a previous article, I talked about the implemented package manager commands (generate, list, load).
In this article I want to talk about other commands.
repository
On the Option tab, you can see which current case is set and switch
Before this project, I built zpm packages almost by hand. I edited the module.xml file, inserted resources into it and copied the resources to disk, then checked the correctness of the assembly. I was tired of it and I decided to make this work easier for myself.
Hello everyone.
I present this project to the contest. The export module is essential in many of my projects and is often used in all my product servers.