Article
· Dec 26 2m read

Why Docker, IPM and ObjectScript Quality are Important?

Hi fellow developers in InterSystems IRIS!

I'm often being asked, especially related to technical bonuses we encourage for every Open Exchange contest why do we constantly give bonuses for Docker, IPM and ObjectScript Quality pass.

In fact, this is very easy to answer.

7 Life Hacks Guaranteed To Make Your Life Easier - everymum

Why Docker?

Docker increases maintainability and collaboration opportunities for your project. Indeed, if it is dockerized, everyone (other than an initial developer) is able to set the development environment for the project and make sure it does what it promises; it is easy to make changes to fix an issue or add a new feature. See more in my article on using Docker with InterSystems IRIS. All the basic IRIS templates on Open Exchange go with Docker. 

Docker is a free tool and can be installed both on Mac and Windows platforms (the most common amongst developers).

Why IPM? 

If your IRIS solution is not a pure Python or ODBC/JDBC thing but contains interoperability and/or ObjectScript resources, you'll have a question about how your solution will end up on a target IRIS Server of your customer. Ideally, with minimal manual involvement but rather by the customer or a developer (if it is a developer tool). The solution is the set of instructions to be made by your customer, that could contain a number of manual steps happily done. The success of your product being installed properly depends a lot on the fewer steps you have in the installation instructions.

In this case, IPM is ideal as it minimizes the installation procedure to one command, "install package-name," executed by the customer in a target namespace. Also IPM is useful not only for a customer but for the developer him/herself e.g. in a CI/CD procedure or/and a unit-testing pipeline. Learn more about IPM: IPM, documentation, and the first article about IPM, videos.

IPM is free and is being actively supported by the InterSystems team led by @Timothy Leavitt .
 

Why ObjectScript Quality?

ObjectScirpt language, even being compiled, still allows obvious bugs and potentially causes problems if certain guidelines are not being followed. The Solution for this is a linter tool that analyzes ObjectScript code vs a set of rules, provided by ObjectScript Quality Tool by Lite Solutions. 

To have your public ObjectScript code automatically analyzed, you need to add only one file. After that, the analysis of your code will be reported here. Also, see more in this article.

ObjectScript Quality analysis is free for public ObjectScript code.

That's it! 

Happy coding and happy holidays!

Discussion (8)2
Log in or sign up to continue

Thank you @Evgeny Shvarov !
I'd like to underline especially the use of  Docker.

My hundreds reviews in OEX wouldn't be possible without it with my limited test environment.
It's not only the option to run various  versions in parallel to my personal setup,
but much more the possibility to clean out all traces and specific settings just with a click.

If you ever tried to remove COMPLETELY an IRIS installation with all traces
from Windows you may understand me.

And with the available templates it is a really easy exercise to compose
your personal customized package with almost no effort and
test it over and over from scratch.


​​​​​​