Today's Deep-Dive: PILOS
Ep. 291

Today's Deep-Dive: PILOS

Episode description

PILOS, an acronym for Platform for Interactive Live Online Seminars, is an open-source front-end platform designed to enhance the user experience of Big Blue Button (BBB), a web conferencing system. Born out of necessity during the COVID-19 pandemic, PILOS was developed at the TeachMiddleHessin University of Applied Sciences to address the chaos of scaling university classrooms for remote learning. Unlike Greenlight, another BBB front-end built on Ruby on Rails, PILOS was architected from scratch using Laravel (PHP) for the backend API and Vue.js for the user interface. This decoupled, modern architecture was chosen to overcome the limitations and architectural friction encountered with the monolithic structure of Rails, particularly its difficulty in handling the high concurrency and asynchronous demands of live online seminars. A key feature of PILOS is its built-in enterprise-level load balancer, which intelligently routes users to available BBB servers, preventing system crashes and ensuring session persistence. The platform also includes a translation layer using the Littler Button library to facilitate communication between the Laravel API and the BBB engine. PILOS is distributed as Docker images, simplifying deployment for university IT departments, and is licensed under LGPL 2.1, encouraging community engagement and contributions. The project emphasizes localization and provides detailed guides for installation, upgrades, and migration from Greenlight, showcasing its commitment to supporting educational institutions in their digital transformation.

Gain digital sovereignty now and save costs

Let’s have a look at your digital challenges together. What tools are you currently using? Are your processes optimal? How is the state of backups and security updates?

Digital Souvereignty is easily achived with Open Source software (which usually cost way less, too). Our division Safeserver offers hosting, operation and maintenance for countless Free and Open Source tools.

Try it now!

Download transcript (.srt)
0:00

Welcome back to The Deep Dive. Today we're looking at something a little different.

0:03

It's not just a

0:04

piece of software, but really an architectural solution that was born out of a

0:08

crisis.

0:08

We're going to be unpacking an essential open source platform, a kind of digital

0:13

front end,

0:14

that was specifically designed to handle the immense chaos of scaling a university

0:20

classroom

0:21

during a global pandemic. Our mission today is to really get a handle on how this

0:25

platform makes

0:26

life so much better for institutions that are trying to manage huge numbers of

0:30

users all at once,

0:31

especially if they're relying on Big Blue Button. But first, a quick word on why

0:35

all this matters,

0:36

why stability and a solid architecture are so key. This Deep Dive is supported by

0:41

Safe Server. Safe

0:42

Server focuses on hosting complex open source software, exactly the kind of tools

0:46

we're discussing

0:47

today, and they really support clients on their digital transformation journey. So

0:51

if you need

0:51

powerful hosting that just works, you can find out more about how they do all the

0:55

heavy lifting at

0:56

www.safeserver.de. Right. So the core subject today is Pylos. It's an acronym for

1:02

platform for

1:03

interactive live online seminars. And if you're new to this whole space, the

1:06

easiest way to think

1:07

about Pylos is this. It's a modern, very easy to use open source front end. It's

1:13

designed to sit

1:14

right on top of your Big Blue Button or BBB server setup. So it's the nice looking

1:19

website, the

1:19

dashboard, basically the user friendly part that students and teachers actually log

1:24

into. Exactly.

1:25

It's built on top of that powerful but sometimes complicated engine underneath. And

1:30

what makes it

1:30

so special? Well, what makes Pylos instantly relevant for say a big university

1:35

deployment

1:36

is that it brings a massive piece of enterprise level functionality right out of

1:41

the box. Okay.

1:42

A built-in load balancer. Ah, the load balancer. That really is the star feature

1:46

here. But before

1:47

we get into the mechanics of that, let's get the origin story. The source material

1:50

is very clear.

1:51

This wasn't some commercial product. No, not at all. It was born from pure

1:55

necessity. Pylos

1:56

started at the TeachMiddleHessin University of Applied Sciences, specifically in

2:00

their faculty

2:01

of health. So not even the main IT department. Right. And that's important. This

2:05

was a faculty

2:06

that was deeply affected by the sudden shift to remote learning in 2020. They

2:11

needed a custom

2:11

solution for their specific problems, digital classrooms, secure group work, and

2:18

running these

2:19

huge online seminars without everything crashing. I think we all remember those

2:23

days in 2020,

2:24

just scrambling to find any platform that could handle that sudden surge in users.

2:29

Most of the tools out there, even the open source ones, just felt like they were

2:34

held together with,

2:35

I don't know, duct tape and good intentions. And that experience, that constant

2:39

frustration with

2:39

crashes, with missing features, with the difficulty of getting things to work, that

2:43

was the direct

2:44

catalyst for Pylos. They just needed a modern, flexible system that was actually

2:48

built for an

2:49

academic environment. So let's transition a bit into that core relationship. We've

2:54

said Pylos is

2:55

the front end, the body of the car, so to speak. What exactly is Big Blue Button,

3:00

the engine, doing?

3:01

So Big Blue Button is the underlying heavy duty open source web conferencing system.

3:08

It's what's

3:08

actually handling all the functionality. Like the video streaming, the whiteboards.

3:12

Exactly. The video

3:13

encoding, shared whiteboards, breakout rooms, all the recording capabilities, all

3:18

the real-time stuff.

3:19

Pylos just tells it what to do. I see. And a really crucial point here, which they

3:23

emphasize

3:24

in their documentation, is that while Pylos uses BBB, it's not endorsed or

3:29

certified by Big Blue

3:31

Button Inc. It's a completely independent specialized wrapper around it. A

3:35

customized wrapper

3:37

built for a university's unique needs. And this brings us to that big pivot point.

3:42

Yeah. Because

3:42

there's another well-known front end for BBB, right? Greenlight. Yes, exactly.

3:45

Greenlight is

3:46

a very functional, widely used project. So the critical question is, why? Why did

3:53

the team at

3:53

THM spend all the time and resources to build Pylos from the ground up? Why not

3:58

just, you know,

3:59

fork Greenlight and add the features they wanted? And that's really the core of

4:02

this whole deep dive.

4:03

If open source is about collaboration, why start over? The sources seem to put the

4:07

blame

4:07

squarely on one thing. Architecture. They're very direct about it. During that

4:12

really intense 2020

4:13

online semester, a lot of crucial features they needed were either exceptionally

4:17

difficult or

4:18

just unsolvable within the Greenlight framework. Unsolvable. That's a strong word.

4:23

It is. And the

4:24

difficulty wasn't about the skill of the developers. It was about Greenlight's

4:29

fundamental

4:29

architectural choice. It was built on Ruby on Rails. Okay, so for anyone listening

4:34

who's a bit

4:35

more on the technical side, can you elaborate on that? Why would a Ruby on Rails

4:38

foundation be such

4:39

a roadblock for a system like this? Well, Ruby on Rails can be fantastic for

4:44

building apps quickly,

4:45

especially things that are pretty predictable and synchronous. Think of like a

4:50

standard website or

4:51

some admin forms, but a massive video conferencing system, especially one that has

4:56

to dynamically

4:57

manage a whole pool of load balance servers, needs extreme asynchronous handling.

5:02

You have

5:03

thousands of users, all starting sessions, checking server capacity, updating lists,

5:07

all at the same time. So the architecture of Rails, which is more monolithic, more

5:12

synchronous,

5:12

it just started fighting against the chaotic high concurrency needs of a live

5:16

teaching platform.

5:17

That's a perfect way to put it. They ran into what we call architectural friction

5:22

to build a dynamic API driven load balancing system, which needs constant server

5:28

health

5:28

checks and routing sessions on the fly. They realized it was just too complex to

5:32

force that

5:33

into a traditional Rails structure. So it was actually easier to start over. The

5:37

cost of

5:37

starting fresh with a modern decoupled architecture was actually lower than trying

5:42

to force the old

5:42

one to work. Which brings us back to that essential feature, the load balancer. And

5:47

this is where

5:47

Pylus really shines. This isn't just a simple round robin load balancer, you know,

5:51

you go to server A,

5:52

you go to server B. With streaming video, it's not that simple. Right, because once

5:56

you're in a meeting,

5:57

you have to stay on that specific server session persistence. Absolutely mandatory.

6:03

So the Pylus

6:03

load balancer sitting on the front end, it uses the big blue button API to check

6:07

the real time

6:08

capacity and health of the entire pool of servers before it ever routes a user to a

6:13

room. So it

6:14

prevents those cascading failures you'd see when an institution just pushed too

6:18

many people onto one

6:19

single BBB server. That stability is the huge payoff for that big architectural

6:23

overhaul. Okay,

6:25

that shifts us perfectly from the why to the how. If Ruby on Rails was the problem,

6:29

what is this new

6:31

flexible architecture they chose? Let's break down the four main components, the

6:35

stacks that make up

6:36

Pylus. Right, so we'll start with the obvious one. Component one is big blue button.

6:40

It's still the

6:41

indispensable engine, the core conferencing system. Understood. So what did they

6:46

choose to replace

6:47

Rails with for the main foundation? That would be Laravel. Laravel is a very

6:51

powerful expressive PHP

6:55

web framework. They chose it specifically to build the backend JSON API. So when

7:00

the source material

7:01

talks about its expressive, elegant syntax, what does that mean in practical terms?

7:06

It's basically

7:07

developer speak for saying it makes building complex scalable APIs a lot simpler

7:11

and faster

7:12

than what they were dealing with before. It lets you have that clean separation

7:15

between the backend

7:16

logic and the front end display. So Laravel is... That's component number three.

7:20

View. View is the

7:22

JavaScript framework they used for building the user interface. So the clean

7:26

dashboard, the room

7:27

creation pop-ups, the settings pages, that's all view. So by using view, the front

7:32

end can be

7:33

updated and maintained completely independently from the Laravel backend. A huge

7:37

amount of

7:38

flexibility compared to a monolithic system where the UI and the backend are all

7:42

tangled together.

7:43

And this decouple architecture Laravel for the backend, view for the front end,

7:47

that is the direct answer to the problems they had with Greenlight. It's the whole

7:50

point of the

7:51

project. And then there's one final piece, the translation layer. They needed a

7:55

reliable way

7:56

for this new Laravel API to talk to the big blue button engine. The translator,

8:01

what is it? It's

8:01

the fourth component, a library called Littler Button, big blue button, A-B-E-P. It's

8:06

basically

8:07

a specialized, unofficial PHP API wrapper. Okay. It translates the commands from

8:12

pilots like create

8:14

a meeting or what's the server status into a format that the BBB engine understands.

8:19

And then

8:19

it translates the responses back. It closes the loop. That makes the whole stack

8:23

incredibly clear.

8:24

And looking at the technical snapshot, the code is about 80% PHP and 19% view.

8:31

That heavy reliance on PHP and Laravel, it suggests something about the original

8:36

developers,

8:36

doesn't it? But it does. It signals that the internal expertise at the university

8:40

was likely

8:40

very strong in the PHP ecosystem. You could argue for using other languages like

8:45

Node or Go for this

8:46

kind of thing, but choosing Laravel was a pragmatic choice. Right. It balanced the

8:50

need for a modern

8:51

architecture, which it delivers, with the need to use the skills they already had

8:55

to get a solution

8:56

built quickly. You have to remember, this was an emergency. And for other

8:59

institutions looking to

9:00

actually use this, the docs mentioned Docker images are available. For a university

9:05

IT department,

9:06

why is that so critical? Docker just simplifies complexity enormously. University

9:11

IT systems can

9:11

be a total mess. Different operating systems, weird security rules. Docker packages

9:16

the entire

9:17

application and all its dependencies into one standard unit. So an admin can deploy

9:21

it reliably

9:22

no matter what their server environment looks like. Exactly. It radically cuts down

9:26

on installation

9:27

time and configuration errors. It's really the gold standard for this kind of

9:31

institutional deployment.

9:33

It definitely speaks to the maturity of the project, which brings us to our final

9:36

section,

9:37

the open source spirit and the community health of Pylos. It's a healthy project.

9:43

It's licensed

9:44

under the LGPL 2.1 license, which encourages people to use it. And the metrics show

9:50

solid

9:50

engagement. You see about 60 stars, 26 forks on GitHub, which shows developers are

9:56

actively

9:56

interested. They're playing with the code. And for a tool designed for education,

10:00

which is

10:01

obviously global, localization must be a huge focus. It absolutely is. And they

10:05

handle that

10:06

through a service called the PO Editor Project. They actively use it to call for

10:10

collaboration,

10:10

inviting people from all over to help contribute translations. It's a great way to

10:14

make sure the

10:15

platform works across language barriers. So if you're an Ikey director at an

10:18

institution

10:19

and you're looking at this platform, what are the practical steps available to

10:22

actually

10:23

implement it? They've provided really excellent detailed guides. You have the

10:27

standard installation

10:28

instructions, of course. But crucially, they also have an upgrade guide for moving

10:32

from older

10:33

versions. And maybe most importantly, they offer a specific migration guide for any

10:38

institution

10:38

that's currently running Greenlight 2. That migration guide is, that's the ultimate

10:43

sign

10:43

they know their audience. They're basically confirming, we know you hit the same

10:47

architectural

10:48

wall we did, and here's the way out. It offers a clear, documented path to

10:52

architectural stability.

10:54

And all the collaborative spaces are wide open, too. The GitHub repo is really well

11:00

organized,

11:00

with sections for code, issues, discussions, a security policy. It's all there.

11:06

This is a

11:06

platform built for long-term community support. So if you step back and look at the

11:10

whole journey,

11:11

PyLas wasn't some theoretical project. It was a knowledge product born from the

11:15

immediate,

11:16

urgent need of a university during a crisis. Its main purpose was to solve the

11:20

architectural

11:21

friction they found in a monolithic system like Greenlight. And the result was this

11:25

modern,

11:25

flexible platform based on Laravel and Vue. Right. One robust enough to handle the

11:30

sheer

11:30

complexity of large-scale digital education today. It's a really inspiring example

11:35

of

11:35

how solving an internal problem with intelligence can lead to a tool that's

11:39

valuable for everyone.

11:41

It shows the power of making the right foundational choices, even if it means doing

11:46

the hard work of a

11:46

complete rewrite. And that leads us to our final thought. Since Pylos was founded

11:51

purely because

11:52

an underlying architecture, the Ruby on Rails and Greenlight, was creating roadblocks

11:56

that limited

11:57

innovation. I want you to think about how often foundational technology choices

12:02

maybe made years

12:02

ago in your own organization are dictating the limits of what you can do today. Is

12:07

your legacy

12:08

system enabling flexibility, or is it silently telling you what you can and cannot

12:12

build next?

12:13

It's a really compelling thought to explore. It absolutely is a fantastic thought

12:18

to end on.

12:19

And if you are facing those kinds of architectural roadblocks, or you just need

12:22

rock solid hosting

12:23

for powerful open source solutions like Pylos, remember that Safe Server cares

12:27

about your hosting

12:28

and your digital transformation needs. You can find out how they can support you in

12:32

building robust

12:33

scalable solutions at www.safeserver.de. Thank you for joining us for this deep

12:40

the architecture of modern digital learning. We'll catch you next time.

12:40

the architecture of modern digital learning. We'll catch you next time.