The fact that open source has more or less taken over commercial product development is nothing new, and the trend just keeps on accelerating. Even industries that aren’t traditionally digital, such as automotive, are becoming more and more driven (!) by open source.
An OSO’s view on open source in the automotive industry
We asked Jonas Öberg, Open Source Officer at one of the frontrunners of open source within automotive; Scania, to let us in on how they do it. Luckily, he was happy to share.
Hey there Jonas! Tell us a little about yourself, where are you from?
I live with my wife in Gnesta, a small town about an hour outside of Stockholm, but originally I’m from a small town outside of Norrköping, Åby!
Gnesta is perfectly located, just about 20 minutes by train from Scania where I work.
What about your background, is it in software development as well?
Actually, despite my interest, I’ve never had a job where I’ve had to do any actual development. I first started writing simple programs in the Atari 520S, followed by learning many other programming languages – both of which really helped me in my early career as a sysadmin.
A few years later I got the opportunity to work as a teacher at Gothenburg University. While teaching, I did however complete my degree in Software Engineering, and eventually I started getting more into project management and software architecture.
And what eventually got you into open source?
Since we are talking about prehistoric times, I can’t quite remember if there was anything in particular that got me interested in open source. But, just guessing, I think it had a lot to do with its availability.
I do however remember the first time I encountered open source! I had heard about a Unix-like operating system that had the ability to multitask (not super common back in the 80’s), but was available for free. It was easily accessible and I could even help improve it by contributing myself! That was the first time I laid my hands on Linux, and I’ve never looked back.
So, tell us about Scania’s journey working with open source
Scania has a long history of working with and using open source. One of our strategic initiatives, Open Source First, was started in 2016 because of one simple fact: open source is the reason that we can scale the speed of our development and improve our innovation processes.
Even before the strategy was set, there was a widespread use of open source within Scania but there was no depth. I’d say that the biggest difference now compared to before 2018 is not how much open source we utilize, but the maturity in how we utilize it.
Given that, we’ve realized that it’s valuable for us to engage in the communities of some open source projects and actually help drive the development forward. We are not 100% there yet, but we are on the right track and we do see the benefits of deeper engagement.
Additionally, we have come to a point where we can handle open source in almost every single part of our development, and we’ve also seen that more and more of our suppliers offer open source in their products. In some areas, it’s actually difficult to find something that doesn’t contain open source!
Open source also goes hand in hand with our core values; not wasting resources. It is a great way of saving the resources that normally go to waste due to the fact that companies are obsessed with the idea of in-house development.
Your role is Open Source Officer at Scania – tell us more about what that means!
The role as an Open Source Officer entails a lot, which is fun! No two days are alike, but the majority of my time is spent on developing internal processes and methodologies. Aside from that, I also spend a lot of time with the development teams who work within these processes.
All in all it’s a varied role that allows me to do a lot of different things. In short, you could say that I handle everything that has anything to do with open source.
How is working with open source organized at Scania?
We like to practice freedom with responsibility. The rules change a bit depending on the system; of course, some systems are more sensitive than others. When it comes to choice of software, the developers are the experts.
Naturally, there are also rules for how open source should be handled, but it has more to do with the actual handling rather than getting approval for choosing a component.
We try not to treat open source differently from other types of software. The same rules apply for all third party components.
What about security, how is that handled? Do you use any tools or is it done manually?
We always strive to limit manual labor by employing tools that support automation when it comes to security in CI/CD-flows. In addition to that, we constantly provide the teams with high quality examples and templates, which in turn increases general knowledge and awareness.
And how do you make sure non-compliant licenses are kept out?
This will probably make me sound like a lawyer but the truth is that it depends. For example, we have different rules depending on where the developer works in Scania, which project they are on and how the product in question will be used.
We have certain routines that need to be followed in order to keep track of components, from the moment they are brought into Scania until the moment they are ready to be used in a product. Sometimes the license perspective is very important, but it depends on which system it will be used in.
With the help of the routines, we get a good overview of where open source exists in the organization and under what licenses – this makes it easier for the developers, since the routines are adapted to the system in which they work and how they work in day-to-day operations.
You mentioned earlier that you frequently contribute to open source. How is that organized?
The developers at Scania contribute in two ways.
The first one being that we ask our vendors to always contribute back to the original project when making a change that has been demanded by Scania.
Secondly, there are times when we use open source that’s missing a functionality that we want, e.g., there’s a bug or we need to contribute to the documentation. Even though it’s not frequently done, we still want to overcome potential obstacles.
For a developer at Scania to be able to contribute to an external project, they have to take our internal course on open source. Following this, we inspect the license of the project and check it against the list of allowed licenses. If everything looks good that’s all that’s needed, and the decision to contribute can be made within the team.
Looking 10 years ahead, what do you think the open source adoption in the automotive industry will look like?
We believe that the open source adoption within the automotive industry will increase vastly in the coming years. There certainly have been challenges regarding the use of open source in critical systems, but we also see lots of initiatives that help us avoid these stop blocks. Thus, open source has become more and more relevant for the largest part of our development.
Everything points to the fact that open source will completely dominate the industry. Developers writing every single line of code themselves is not sustainable. The demands, especially in new areas with autonomous and connected vehicles, is that no 100% proprietary company can meet them. We have to collaborate to develop new solutions and open source today is a well-tested model which allows for that collaboration to happen, while the core values of the company are maintained. Everyone’s a winner in this, which is why Open source keeps conquering every single industry out there.