Godot Game Engine XR lead developer
Bastiaan makes FOSS and takes our Twitter mic from August 11 to 18. Thank you, Bastiaan!
Please tell us about yourself
Hi all, my name is Bastiaan Olij though around the interwebs you’ll often see me posting under the moniker Mux213, a nickname that has stuck with me since my late teens as an avid Demoscene coder. Currently living in sunny Sydney Australia I’m originally from the cold and rainy Netherlands.
Proud father of 2, self professed gamerdad and VR enthousiast.
What are you working on right now?
For the past couple of years I’ve been volunteering most of my spare time bringing VR support to the Godot Game Engine, since the start of this year I’ve been hired to do this full time.
My main focus for the past few months has been making the new Vulkan renderer run on mobile devices and adding OpenXR support to Godot.
I also run a Youtube channel in support of my XR work, allthough I’m currently on a bit of a hiatus as I’m adjusting to lifes changes.
What is most interesting about that?
I was in my mid teens when VR was the latest hype and devastated when it crashed and burned, yes I’m that old ;). To see its resurgence a few years ago it truely is a childhood dream come true making this my living.
How did you first discover FOSS?
I could argue that the whole demoscene experience was one big FOSS community, many including myself would share techniques and libraries we wrote on bulletin board systems.
But my first experience with a “proper” FOSS product would have been using PostgreSQL, a very different beast compared to Godot but incredibly impressive to work with. I ended up using far more FOSS tools in my professional carreer including contributing a little here and there with projects such as SabreDAV and Rocket.rs.
In gamedev Blender was a game changer for me, so where Krita and Audacity to name but a few.
What prompted you to start contributing to FOSS?
Sharing what I do when it could help others is something I’ve naturally done since I was a teenager.
That said, where I contributed to projects they were often out of convenience. I needed to use a tool, it didn’t do this a thing I needed it to do, so I added that feature in and put the change in as a PR.
Contributing on any real scale however, Godot was the first project with which I really jumped on board the FOSS bandwagon. I wanted to get into VR, I didn’t want to just pick up an existing game engine where others got to do the fun stuff, I wanted to learn how to code it myself, but I didn’t want to build an engine from scratch.
So when a friend told me about Godot I figured, great I can use that as a testbed, add in VR support, see where it leads me. The more I worked on Godot, the more I fell in love with it, and the more fun it became to contribute not just on the parts I was doing for myself but for the project as a whole.
Why should others get involved with FOSS?
I think that is ultimately a very personal thing. As I said, for me it has always been a very natural choice.
But if there is one reason that stands above all others in my opinion is how rewarding contributing to a FOSS project can be. Whether it is from the appreciation you get for something you’ve helped create or whether it is the unexpected contribution from another developer that has a huge positive impact on what you use the software for, FOSS is the gift that keeps on giving.
How should they get started?
This really depends on who you are.
Are you a seasoned veteran developer? Do what I did, consider using a FOSS tool and add something you need to it and contribute it. Even if the work does not get accepted, which is always a real possibility, you’ll have some fun and you still get the thing done you needed yourself.
Are you a beginning developer? Find a FOSS product you’d love to use, become active in their communities and start looking at the issue lists on github. Many FOSS projects will take the time to mark issues that they deem suitable for beginners as such and successful projects always have a few contributors around that don’t mind holding a newbees hand (and fool on any project that hates on newbees, go stand in a corner, we were all newbees at one point in our lives).
Not a developer? Don’t for a minute think you’re not important to FOSS projects. Use FOSS projects you find useful and become active in their communities. Discuss what you like and what you would like to see improved.
What difficulties and limitations do you see with FOSS?
The biggest issue I see is that FOSS, for lack of a better term, is a numbers game. A certain percentage of people who adopt a FOSS project will be developers, only a small percentage of those developers will be skillful enough to carry a project and an even smaller percentage will decide to actually contribute.
For a project like Godot we have a relatively high percentage of developers within our community due to the nature of the project, as a result we’re on a path to become one of the more successful FOSS projects, if we’re not already there.
But many FOSS projects fail because they never get the numbers, or they are the type of tool where most users aren’t developers and can’t contribute.
Where a FOSS project reaches those numbers it attracts a group of developers no commercial software could hope to compete against. But I hold the controversial opinion in the FOSS world that were those numbers are not possible there is nothing wrong with working for, using and supporting commercial software.
The other problem I see is that FOSS projects often become a free for all and lack a strong leadership that ensures a level of quality is reached in contributions. The flipside here is that those projects that do obtain a good leadership team are often seen as elitist and unwilling to support their community.
How can they be solved?
As for the numbers issue, I’m not sure solving is the right term, it’s a matter of realising the realities around deciding whether your project would survive as an Open Source project, and whether the project you’re considering contributing to is the right one. Obviously if a project could have the numbers, but it fails to reach them, it is best to look within and figure out why people are not joining in to help.
The leadership issue is far more difficult because there are two sides. You can have a leadership that is actually elitist and in the long term that will just run it’s course and likely kill the project and possibly rightfully so.
But where the leadership is sound it is a matter of managing perception, of people understanding that there are many factors being balanced to move a project into the right direction, and that direction may not always line up with yours.
Where do you see difficulties in contributing?
This is a difficult question to answer, ultimately I think human nature is the thing that can easily get in the way.
We live in a global community where people from all over the globe can start contributing to a FOSS project. That means people from all walks of life are thrown into a big mixing pot.
That can work and even lead to people broadening their horizon, breaking apart old stereotypes and bringing people together who otherwise would have kept a wide berth.
But it equally falls apart where cultural differences, upbringing, language barriers, and old fashioned -isms lead to clashes or worse.
It is in our power to realise that when we contribute to a project, we are joining a group of people who have the same passion as we do.
What does a perfect day off look like?
One where I can wind down, where I have no obligations, invite a couple of close friends over or meet them in a park on a sunny day. Good conversations around a barbeque, a drink in ones hand and good food in our belly.
Do you want to tell us something else we didn’t ask?
I talk to much yet I don’t say enough, so probably no, and highly likely yes. Can’t think of it right now though, I’m sure plenty of answers will be questioned throughout the week, or was that the other way around?