KNIME logo
Contact usDownload
Read time: 5 min

How to organize your next event using KNIME

June 27, 2024
Automation inspiration
KNIME Group Shot
Stacked TrianglesPanel BG

This is part of a series of articles to show you how KNIME uses KNIME.

Have you ever wanted to organize a collaborative team event, but soon realized how much manual work is required and how easily things can fall through the cracks? 

With events, there’s a lot of moving parts and a lot of “cooks in the kitchen”. And that was our challenge when organizing an annual KNIME event called “Das Schloß”, where our entire company comes together to work on group projects. 

Each employee can propose projects in advance, for which other employees then can vote to determine which projects will take place. 

Initially, this project planning was managed with a simple Google Doc, but this became increasingly unmanageable as the company grew. As we were looking for a scalable and well-structured solution, we turned to what we know the best: The low-code data science platform KNIME.

In our event planning example, we had a few guidelines: Each project must have an organizer attending “Das Schloß”, each project should have a title, description, desired outcome, and needed skills listed, and the project should include three to 10 people. To fulfill these requirements, we created two different KNIME data apps:

  1. The Project Registration Data App is used to propose new projects and modify the already proposed ones.
  2. The Voting Data App is then used by all the employees to vote for their favorite projects and potentially sign up as an organizer.

Afterwards, we used a simple KNIME workflow to determine who attends which project and of course, which projects make the cut.

Are you already wondering how this can be done using KNIME? Good, then let’s get started!

The Registration Data App

Creating a Registration Data App is the first step towards efficient project planning for your next team event. It offers all the functionalities required for a structured project proposal:

  • Browsing projects: Before proposing new ideas, teams can view all previously submitted projects. This helps to avoid duplicate suggestions and to find inspiration for new projects.
  • Propose new projects: Users propose their projects using a structured form (see Fig. 2). This form ensures that all submitted data is coherent and complete, e.g. only employees actually attending “Das Schloß” can be entered as project organizers.
  • Modifying and deleting projects: Project proposers and organizers have the exclusive right to modify or delete their projects. This ensures that only authorized people can make changes.

Figure 1: Video showing functionalities of registration data app

How does it work?

The data app is hosted on KNIME Business Hub (KNIME’s enterprise software for deploying workflows) and uses its API to identify which user is using the data app. By doing that, we can automatically insert the name of the project proposer and determine which projects should be displayed in the modify and delete view. This feature is used in the second data app as well, which ensures data consistency throughout the entire project selection process. Additionally, this facilitates reaching out to any proposer or organizer, since the name matches the Slack and email account.

Since KNIME supports a variety of data storage formats, you can choose whatever you prefer. In our case, we decided to use a database with multiple tables. One table contains all projects in the latest versions. In another history table, all deletions and changes are saved in case someone accidentally deletes a project.

structured form for project proposals
Figure 2: structured form for project proposals

After the submission deadline passes, the project selection process transitions seamlessly into the voting phase. Since we do not allow any new project submissions within that phase, we used the versioning capabilities of KNIME. We then updated the deployment of the Registration Data App to a new version, which only allows browsing, modifying, and deleting existing projects.

The Voting Data App

Figure 3: Video showing functionality of voting data app

The Voting Data App is used for two main purposes: voting and for organizer selection — to make sure every project is taken care of by someone. 

Since there are more proposals than final projects, every employee has to vote for three projects to ensure they will be assigned to one of their liking. To incorporate their preferences, we decided to use a 3-2-1 voting rule, indicating their priority of wanting to attend a  project. This means, everybody must assign three points to their favorite, two to their second favorite, and one to their third. 

These votes are then stored in an additional database table which allows us to display the number of interested attendees for each project. Since we store the name with the vote to allow for modification, we can easily check via a simple statistics data app which employees have already voted and which might need a reminder to do so (and this can all be automated in KNIME). 

As already mentioned, every project must have an organizer, which is achieved by the second functionality of the data app. You can either register as an organizer for a project or take over organization from someone else. To ensure that everyone involved is always up to date, proposers and potentially existing organizers are automatically informed of any changes via Slack. 

This is very easy to implement thanks to the Slack integration in KNIME and the automatic user identification via API.

Automating the decision process

After voting, we continued to use KNIME to automate the decision process further. There are many different ways to do this. We decided to use the Python Snippet Node to run a sophisticated algorithm based on bipartite graph matching. This algorithm efficiently assigns KNIME employees to projects and optimizes preferences while not exceeding a maximum number of participants per project. 

There is still a final manual approval needed for project assignments (with possible minor changes) to ensure all projects make sense, e.g. that a project on new marketing strategies includes a person from the marketing team. However, this can not be compared to the amount of time and effort saved by using KNIME compared to a Google doc.

Scalability and reusability

Using KNIME makes managing robust events easier and more enjoyable with its automation and reusability features. The two data apps discussed in this article have enabled us to plan “Das Schloß” in a structured, transparent, and consistent way. 

One of the biggest advantages of using KNIME for our planning is its scalability. As our company grows, our system can easily accommodate more users and projects without the need for additional resources. And by using flow variables in KNIME, we can easily customize our data apps so they can be reused for different events or annually with minimal adjustments.

The possibilities for project organization using KNIME are not limited to the organization of “Das Schloß”. We have already applied this approach to other events such as our bi-weekly, company-wide meeting, for which topics can be proposed or existing topics can be promoted via voting. The possible applications are varied and limited only by your own creativity. 

Would you like to improve or completely restructure your event management processes? Download KNIME for free today and use our data apps as a starting point, or simply for inspiration. You can find the example workflows on the KNIME Community Hub.