Announcement
· Sep 20, 2023

Technological Bonuses Results for the InterSystems Python Programming Contest 2023

Hi Developers!

Here is the bonus results for the applications in InterSystems Python Programming Contest 2023:

Project

Embedded Python

Python Native API

Python Pex Interoperability

Python libs: sqlalchemy and dbt

LLM AI or LangChain

NoObjectScriptLine

Questionnaire

Find a bug in Embedded Python

Docker

ZPM

Online Demo

Community Idea Implementation

First Article on DC

Second Article on DC

First Time Contribution

Video on YouTube

Total Bonus

Nominal 3 3 4 2 4 5 2 2 2 2 2 4 2 1 3 3 44
native-api-command-line-py-client 3 3       5     2 2 2   2 1   3 23
iris-size-django           5 2           2   3   12
apptools-django   3       5     2 2 2   2       16
iris-recorder-helper       2 4 5 2   2             3 18
irisapitester -                       2 -   - 2
iris-python-lookup-table-utils 3         5     2           3 3 16
BardPythonSample 3       4 5 2     2         3   19
native-api-py-demo 3                           3   6
iris-vector 3         5 2 2 2 2     2       18
flask-iris       2   5 2               3   12
password-app-iris-db   -       5             2     - 7
Face Login 3               2 2             7
iris-GenLab 3   4 2 4 5 2   2 2     2 1   3 30
iris-python-machinelearn 3           2           2   3 3 13
IRIS-Cloudproof-Encryption 3               3           3   9

Please apply with your comments for new implementations and corrections to be made here in the comments or in Discord.

Discussion (27)4
Log in or sign up to continue

In my project iris-vector, there are a few things, which make it impossible to make it ObjectScriptLess, at least for now. 

  • I've already mentioned the issues of running Python based SQL functions, in my article, so, I had to add ObjectScript realization too.
  • And any new DataType in IRIS, which implements custom serialization based on methods like DisplayToStorage, at the moment accepts only ObjectScript, due to tied implementation to SQL Compilation engine.

My initial idea was to create a kind of template for future changes, where in the SRC folder there is the project with Python embedded in IRIS and in the Python folder there are two files, one that calls IRIS through Python and the other just the pure Script that runs directly in local or inside Docker with Iris. But I believe that the idea of ​​doing something more comprehensive ended up generating more confusion than solution, this is the first time I have participated in a contest, I will refine it more the next time.

Hi Andre! If we consider all the code you wrote, it includes ObjectScript. Considering that you merged two templates intersystems-iris-dev-template and iris-embedded-python-template and wrote your code on top, it is a little difficult to find exactly your changes. I checked all your commits and found out that you were the one who wrote the ObjectScript code. You can easily fix this by rewriting this method in Python.

I understand, it would be more interesting to leave just the Python part like this file without the ObjectScript, but I would have to generate a new image in Docker to remove it, and unfortunately I'm very committed to time right now, for a first Contest it will serve as a learning experience and a lesson, if you can consider something as it is, great, if you can't, that's fine, I'll dedicate myself more to the next one, I'll change this one as soon as I can. Thank you very much for your attention and explanations.