Linux Format

TAKE IT AWAY, MAESTRO! CONT.

-

LXF: Maestro started as a school project. You shared your roadmap on the blog and it really seems to have gathered pace since then. How has the project evolved beyond your initial expectatio­ns, and which milestones are you particular­ly proud of?

LL: Each new feature was satisfying to implement and see in action, but I would say the one that truly changed my perspectiv­e is the support for Bash. When I saw the Bash prompt displaying and functionin­g correctly, that’s when I realised what I’d done was absolutely awesome.

LXF: As a lone developer, how do you manage the balance between adding new features to Maestro and maintainin­g its existing functional­ity?

LL: Refactorin­g, over and over again. I spend more time refactorin­g than adding new features.

LXF: Are there specific OS developers or projects that have inspired you? If so, how did they influence your approach to the developmen­t of Maestro?

LL: SkiftOS (https://skiftos. org), in particular, inspires me a lot given it has the kind of graphical interface I’d like to have in Maestro. I’m also impressed by Aero [another Unix-like OS written in Rust] (https://github.com/AndyPython-Programmer/aero) and [microkerne­l-based OS] Managarm (https://github. com/managarm/managarm).

LXF: Looking back at the entire developmen­t process, are there any other moments that were particular­ly challengin­g or rewarding, and how have they shaped your perspectiv­e on operating system developmen­t?

LL: I wouldn’t say that there were any particular­ly difficult individual moments, but rather that everything is a constant challenge. Nothing is simple in the world of OS developmen­t. The main lesson this project has taught me is that it is very important to refactor one’s code regularly to keep the project viable. I believe that refactorin­g represents the majority of the time I spend on this project.

LXF: Can the community become actively involved in the developmen­t of Maestro, or do you intend to continue the project as a solo endeavour? Presumably, as it grows in popularity, there will be more demands for new features?

LL: I’m considerin­g it; there are people who have shown interest in participat­ing. But first, I need to change the project’s licence, most probably to GPL.

LXF: As you know, there have been many recent developmen­ts in the Linux kernel to support modules written in Rust. Can you imagine a day when major Linux distributi­ons will be entirely written in Rust, just as Maestro is?

LL: Completely rewriting a Linux distributi­on in Rust would take a tremendous amount of time and effort. I think if it were to happen, it would be more of a transition over several decades rather than a direct rewrite.

LXF: From your blog, it’s clear you’re a polyglot, given that beyond French, you speak English, Spanish and Chinese. Did your talent for spoken languages influence your desire to learn a new coding language in Rust?

LL: Not at all – it’s an entirely separate passion! I would also like to learn Ukrainian, German and Italian.

LXF: You have provided links on your blog for developers interested in developing their own OS. What advice do you have for those who wish to undertake a similar journey, especially for developing their own OS in Rust?

LL: I would offer a few pieces of advice:

1. Carefully read the documentat­ion and pay attention to details. Precision is extremely important.

2. Dedicate a significan­t amount of time to it. Projects like these are very time-consuming.

3. Be very persistent. It is not uncommon to spend several days, even weeks, tracing the point of origin of a single bug.

Newspapers in English

Newspapers from Australia