Netherlands

4 days / 20 talks
Awesome and great speakers

November 3-8
https://i1.wp.com/www.omnisworld.co.uk/wp-content/uploads/2023/07/thumbnail_MirkoPepa.jpg?fit=320%2C320&ssl=1

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 many aspects of the overall software development lifecycle:
integrating MantisBT bug tracking into your development toolset and
other tools that can be combined with Jenkins for automating the development process and
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.


Mantis and Jenkins – Bug Tracking and Workflow

Tracking the status of bugs within your workflow

Mantis Bugtracker was the first tool Mirko used to streamline their development workflow. In the ensuing years, they added many other tools to round out the entire development stack such as: Mediawiki, Archiva, Sentry, Gitea, Heimdall, OmnisCLI, OmnisTAP and others.

After Mantis, the addition of Jenkins into the toolset provided the largest impact. Every night Jenkins runs thousands of unit tests, deploys libraries, creates installers and much more.

In this session Mirko will show:

  • A complete overview over the tools he and his team uses, with all the insights, why which tool makes sense, and where alternatives exist.
  • How this is all tied together with Omnis Code
  • A focus on Mantis (installation, setup, and access from Omnis)
  • A focus on Jenkins (installation, setup and interaction with Omnis)

Software quality metrics and automatic documentation generation

Generate MediaWiki pages from your Omnis code and measure the complexity of your code

Part 1: OpenDoc – Generate MediaWiki pages where all the documentation comes from 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 build it into 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 the MantisBT bug tracker.

Part 2: Software Quality Metrics – 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 long after it is written.

In this workshop, Mirko provides the theory on the Maintainability Index calculation and uses a Studio application to 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.




Make

Connection

Follow Mirko


Meet

Company


https://i1.wp.com/www.omnisworld.co.uk/wp-content/uploads/2016/02/euromnis2016web.png?w=1200&ssl=1

About workshops

Format

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

Speakers

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

Schedule

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