Rechercher

文章
· 六月 24 阅读大约需 3 分钟

Celebrating a Lifelong Contributor of the Developer Community

Among the many voices that shape the InterSystems Developer Community, some stand out not only for their knowledge but for their consistency, curiosity, and passion. One of those voices belongs to @Dmitry Maslennikov, a long-time member whose experience spans nearly two decades and who continues to innovate and inspire developers around the globe.

🤩 Let's take a look at Dmitry’s deep-rooted journey with InterSystems and his lasting impact on our Community...

Dmitry's story with InterSystems began in March 2007, when he landed his first programming job. Since then, his professional journey has taken him through several companies, cities, and even countries, but his connection with InterSystems technologies has remained a constant. Over the years, Dmitry has become a seasoned expert in Caché and IRIS, contributing to mission-critical projects and large-scale system architectures.

One of Dmitry’s most memorable milestones involved ensuring performance stability for a high-demand application used by 3,000 concurrent users. Tasked with optimizing speed and responsiveness despite massive data volumes and rapid growth, Dmitry dove deep into performance tuning and architectural design. More recently, he was part of an ambitious project migrating a complex monolithic system to AWS - an effort that involved dissecting functionality into scalable services while managing a unified data layer. Navigating challenges like cross-server coordination and subsystem integration, Dmitry gained invaluable experience in cloud-native transformation.

However, not all learning moments came from planned development work. Dmitry recalls a nerve-wracking incident when he accidentally deleted a crucial global from a production system. The pressure was high, but the experience became a turning point, teaching him the critical skills of backup handling and journal-based recovery.

Dmitry’s relationship with the Developer Community started even before the official Community platform was created. He wrote blog posts and actively participated in Google Groups before finally joining the InterSystems Developer Community at its launch in 2015.

Over time, Dmitry's involvement expanded beyond discussion threads. He has embraced new initiatives, such as Open Exchange, where he shares his projects and participates in community contests. The Ideas Portal has also become a creative playground where Dmitry both draws inspiration and contributes fresh ideas for future development.

His advice for newcomers?

Never stop learning. Explore different ideas and implement them regardless of the technology. The broader your understanding of various approaches is, the better you'll become at solving problems.

Today, Dmitry is driven by a mission: to make InterSystems IRIS more accessible by building projects in multiple programming languages and extending its reach across different development communities. This passion even spills into his free time, where adapting open-source projects to work with IRIS is not just a task, but a genuine hobby.

We’re grateful for Dmitry’s ongoing commitment to the Developer Community. His journey is a testament to persistence, growth, and the boundless potential of shared knowledge. Here's to Dmitry - a true champion of the Community and a builder of bridges across technologies and time zones.

👏 Let's all thank Dmitry for his invaluable contributions and continued inspiration!

12 Comments
讨论 (12)5
登录或注册以继续
问题
· 六月 24

Using %Net.WebSocket.Client

Hi Guys,

I'm trying to use %Net.WebSocket.Client to collect data from a sever,

 

 

and part of that I needed to implement Two classes (SX3.Production.HTTP.AdvCredenials  & SX3.Production.HTTP.AdvListener) as below for the purpose of Credentials & EventListener properties,   

 

Class SX3.Production.HTTP.AdvCredenials Extends %Net.WebSocket.ICredentials
{

Method GetPassword() As %String
{
""
}

Method GetUsername() As %String
{
""
}

Method GetSSLConfiguration() As %String
{
"MySSL"
}

}

Class SX3.Production.HTTP.AdvListener Extends %Net.WebSocket.IEventListener
{

Method OnMessage(pContent As %Stream.Object)
{
^data("message")=pContent.Read()
}

}

and here where I'm using the WebSocket Client. 

I never used  WebSocket Client before neither implementing such classes above for the two properties and I would like to know if below code is the right way to then assign  WebSoc.Credentials, WebSoc.EventListener and to make the call of WebSoc.URL ? 

ClassMethod GetAdvData(Gateway As %String = "", Token) As %String
{
Quit:Gateway="" 1
Set:Gateway[":" Gateway=$TR(Gateway,": ")
Set Found=0
        BleMac="DC:0D:30:00:07:25",GatewayMac="CC:1B:E0:E2:52:D4"  // this for testing
Set WebSoc=##class(%Net.WebSocket.Client).%New()
Set WebSoc.Credentials="SX3.Production.HTTP.AdvCredenials"
Set WebSoc.EventListener="SX3.Production.HTTP.AdvListener"
Set WebSocURL="https://domain3wGT.com/api/gap/nodes?filter_mac="_BleMac_"&filter_rssi=-75&mac="_GatewayMac_"&active=1&event=1&chip=1&access_token="_Token
WebSoc.URL=WebSocURL
Quit 1
}

 

 

Thanks

7 Comments
讨论 (7)3
登录或注册以继续
公告
· 六月 24

Ver las presentaciones principales de InterSystems Ready 2025 online

¡Hola, comunidad!

¡Tenemos excelentes noticias para quienes están interesados en lo que está ocurriendo en InterSystems Ready 2025 pero no pudieron asistir en persona!
¡Todas las presentaciones principales (keynotes) están siendo transmitidas online!
Y lo mejor: si ocurren en un horario que no os conviene, también podéis verlas más tarde.

¡Las presentaciones del Día 1 ya están disponibles! 😉

Y no olvidéis revisar el resto de las presentaciones principales:

¡Promete ser épico!

讨论 (0)1
登录或注册以继续
文章
· 六月 24 阅读大约需 3 分钟

Options pour les développeurs Python

J'écris cet article principalement pour recueillir un consensus informel sur la façon dont les développeurs utilisent Python avec IRIS. N'hésitez donc pas à répondre au sondage à la fin de cet article ! Dans le corps de l'article, je détaillerai chaque choix proposé, ainsi que ses avantages, mais n'hésitez pas à le parcourir et à simplement répondre au sondage.

Comme la plupart d'entre vous le savent probablement, Python est actuellement le langage de programmation le plus populaire auprès des développeurs du monde entier, et pour cause. Python est intuitif, facile à lire, dispose d'une vaste gamme de bibliothèques et de packages, et offre de nombreuses ressources pour résoudre presque tous les problèmes. Pour ces raisons, et bien d'autres, Python est un choix naturel pour les développeurs.

Ainsi, lorsqu'un développeur débute avec InterSystems IRIS, une question fréquente peut se poser : « Puis-je utiliser Python tout en tirant le meilleur parti d'IRIS ?» La réponse ? « Oui !» Cet article présente quelques-unes des utilisations les plus courantes de Python avec InterSystems IRIS.

Options d'utilisation de Python avec IRIS :

1. Embedded Python :
Introduit en 2021, Embedded Python permet d'écrire et d'exécuter du code Python directement dans ObjectScript. Cela permet d'utiliser Python et ObjectScript côte à côte, permettant aux développeurs d'intégrer Python et IRIS. C'est un excellent choix pour ceux qui souhaitent utiliser Python sans quitter l'environnement IRIS.

2. Connectivité ODBC, via pyODBC :
Vous pouvez également connecter des applications Python externes à IRIS via ODBC, comme dans une architecture client-serveur traditionnelle. Il s'agit probablement de la méthode d'intégration la plus répandue, car elle utilise des workflows SQL familiers aux développeurs Python. Le package pyODBC prend en charge la spécification DB API 2.0 et permet d'exécuter des requêtes SQL sur les bases de données IRIS.

3. API native InterSystems et ELS :
Ces deux options offrent une intégration plus flexible entre Python et IRIS :

  • API native pour Python : elle donne un accès direct aux fonctionnalités principales d'IRIS, telles que les classes persistantes et les structures globales. Elle est idéale pour travailler avec des constructions spécifiques à IRIS par programmation depuis Python. 
  • External Language Server : cela permet à IRIS d'appeler du code Python exécuté dans un processus distinct, voire sur un serveur distinct. C'est très utile lorsque le code Python est gourmand en ressources (utilisation élevée du processeur ou de la mémoire) ou lorsque vous souhaitez l'isoler du noyau IRIS pour des raisons de stabilité et d'évolutivité.

En résumé :
Python et InterSystems IRIS se complètent parfaitement. Que vous soyez un développeur avec une expérience limitée d'ObjectScript, que vous cherchiez à tirer parti de l'écosystème Python ou que vous préfériez simplement écrire du code en Python, plusieurs options d'intégration s'offrent à vous. Chaque option présente des avantages différents selon votre architecture et votre cas d'utilisation.

Merci d'avoir lu ce bref aperçu des différentes façons d'utiliser Python avec InterSystems IRIS !

讨论 (0)1
登录或注册以继续
InterSystems 官方
· 六月 24

Desarrolla tu propio Asistente Virtual con RAG

En este curso vamos a introducir y presentar los modelos LLM y sus aplicaciones asociadas. Durante el mismo, el estudiante se familiarizará con las técnicas más actuales para construir soluciones sobre modelos LLM (Large Language Model), como el Fine Tuning, el Retrieve Augmented Generation, etc...

Más información e inscripción, en el siguiente enlace: Desarrollo de asistentes virtuales con RAG | InterSystems

1 Comment
讨论 (1)2
登录或注册以继续