4 days / 20 talks
Awesome and great speakers

November 3-8

Mirko Pepa

Mirko Pepa has been developing with Omnis since Version 3 and his first application was a general ledger-app. He has attended a number of Euromnis Conferences as a participant and is ready to share his expertise in two aspects of the overall software development lifecycle:
automatic documentation and
measuring software complexity as a predictor of maintenance costs and effort.

Mirko studied at the Swiss Federal Institute of Technology (ETH), and attended courses with Professor Wirth, the creator of the Pascal programming language. Then, he founded Profile GmbH, an IT-company based in Winterthur, Switzerland. In the beginning, the company did almost everything from selling Apple Computers, supporting customers to developing software. Later the company focused on its own software called Helper; an ERP-software solution for small and medium printing and prepress-companies.

Helper has been updated over the years is now written in Studio 10 with PostgreSQL as the database. It evolved into a workflow-system for customers who do large volume document scanning and contains modules for generating PDFs, branding pages, adding bookmarks, injecting metadata, etc. To complement Omnis, the software stack at his company has grown to include: MantisBT, Mediawiki, NSIS, Sentry, OmnisTAP, PostgreSQL, Jenkins, Apache Archiva, Gitea, iCinga and others are in use.

Mirko also serves as an exam expert in the Canton of Zürich for application developer apprentices.

He lives in Winterthur, Switzerland, growing up bilingual, with roots in Italy and Germany. His passions include travelling to the beautiful ‘Riviera del Conero’ on the Adriatic Coast of Italy to enjoy good food and nice weather. Having already learned a few European languages, lately he started to learn Japanese and discover Japan. He is also interested in architecture and art, especially art nouveau, but is also fascinated by all complicated and big machines.

OmnisDoc – Automatic Omnis Documentation

Generate MediaWiki pages with all the documentation, that is in Your Omnis-Code

After a few years of development, your codebase gets bigger and bigger. Even if you use the built-in documentation features of Omnis like $desc and $notes, it can be difficult to find the right information.

With a little effort, you can find it all on a Wikipedia-like website, something that many are familiar with.

In this workshop, Mirko will show you how to integrate MediaWiki, the software behind Wikipedia, into Omnis Studio, using Helper as the model to demonstrate:

  • OmnisDoc: Our solution to generate one documentation page for every class in Omnis, complete with all methods, parameters and descriptions.
  • Integration in Jenkins, so the documentation is always up to date.
  • Manual documentation of the code in an internal MediaWiki-Site.
  • A manual of our app for customers in a public MediaWiki-Site.
  • Customer-specific documentation of our app at the customer-site.
  • Automatically generate a Change-Log with all the completed issues in our bugtracker MantisBT.

Mirko’s session provides code that you can use and implement as you like

Software Quality Metrics – Measuring Omnis Code Complexity

Calculate a code complexity index to predict maintenance effort.

How complex is your code? Wouldn’t it be nice if you had metrics that measured complexity of methods that could be used to:

  • estimate the cost of future support efforts -or-
  • whether it might be better to refactor code now for simplicity, while it is fresh in the mind

What sounds like magic is actually possible – in Omnis!

In the ‘70s, widely respected research by Thomas McCabe and Maurice Howard Halstead led to algorithms to measure code complexity. Currently, libraries exist that measure complexity in Java and C++. These are mainly used in areas requiring very high reliability like airplane construction, medicine etc. However, every application is better if the code is easier to understand well after it is written.

In this workshop, Mirko will give you some theory on the Maintainability Index calculation and show this with Studio, which calculates the maintainability index for every method in an Omnis class.

Mirko will provide you with his Studio code that you can use as you like to measure your own code.



Follow Mirko



About workshops


You’ll sign up for the session you want to attend on a first-come, first-served basis. Up to 6 participants may attend a session, if full, you can sign up for the same topic at a different time. During the session, the speaker will guide the audience through the main topic but you will be able to ask him/her to deviate and cover related areas. Sometimes participants offer new ideas and solutions to a problem.

Check the


Pursue any question or area not directly related to the core topic. Every speaker hosts at least 4 sessions which means there are about 11 to 12 simultaneous sessions running all the time with an average of 5 or 6 participants

Meet the Speakers

Check the


Flexible conference format means you can choose the best classes for you and at the best time. Some sessions will be repeated, so when you miss one, you can attend the same session later in the day or the week.

Check the Schedule