 Many of you already know me. I was FSFE's president for six years from 2009 to 2015 About a year ago. I handed over this job to Matthias Kirchner and Jonas Oberg who have been performing splendidly ever since and I happily moved on to Siemens where I now work at the corporate open-source governance team and What that means in practice is something I'll do discover during this talk. So what I'm here to talk about is why free software is so important for Siemens and Share some things that Siemens is doing in free software But the main my actual reason for being here is just to deliver the message that Siemens is active in free software and Siemens wants really really wants to be a good citizen in the free software community And we just should talk more. Okay Good. Oh No, no, no, no, no, no Before I get going. I'd just like to congratulate FSFE on their 15th anniversary this year So thanks to all of you in this room. We'll help make that possible All right now a very quick primer on the company. I'm not going to bore you with stock market presentations Siemens is in pretty much every respect the opposite of a startup Siemens was founded here in 18 here in Berlin in 1847 at the time. This was the kingdom of Prussia And it though the company will be celebrating 170 years of existence next year It does a lot a lot of things in infrastructure in factory Maybe in building factories in an enabling industry. Most of our customers are utilities and other industrial companies and Well, the public sector where it comes to infrastructure The company's activities which I'm not going to go into in detail here because you can read that elsewhere fall under three main headings electrification building power plants financing power plants building electricity grids building wind farms and so forth Automation designing and building factories and the machines that go in them and digitalization which means Doing interesting stuff with all the data that arises from from these other two activities and Interpreting that that and offering it as a service to our customers not to bring up all the data in the world Like some other companies are doing but the aim is to when you're running a factory You have all these machines with the sensor with sensors that increasingly gather huge amounts of data and Siemens could be adding value for our customers by letting them know when their machines are about to break down need replacement Or need service and so forth that kind of thing of Course digitalization which is all the rage at the company these days Requires software and this is where free software comes into the picture We've been using this slide internally a lot of colleague made it and to explain to our managers Why Siemens needs free software and why they should just let their developers get on with the job in this regard up to 2000 you'd have the typical Siemens product would fit in a box of varying sizes, maybe building size, but still a box Where would you'd have a profile proprietary Siemens application running on top of a proprietary operating system and Overall, there wasn't a lot of software in these things over the past 15 years we moved to a scenario where The proprietary seen proprietary Siemens application would still be there But it would run on top of a commodity operating system. That could be something like Windows in whatever version Could be Linux mostly Linux kernel or busy box on top because a lot of this is embedded stuff or something else But now it's gotten really but it would already you see the pyramid growing. There's more software here, right? and now we're finally at a stage where The device no longer is or the product no longer is a box Siemens makes half its revenue from services the physical product that we sell very often is just the centerpiece the anchor point for A service offering that goes around it So you might sell a device that controls an assembly line and then that device will gather data send it to a cloud service for analysis The the results of that analysis will get sent to the factory manager to the factory floor manager So they know what happening on the assembly line and all this will be held together with middleware and Siemens specific frameworks and on top. There's a proprietary Siemens application Now the reason the customer buys this product is here at the top Do they pay for a nicer cloud service? No, they don't do they pay for a link to mobile devices? No, it would like pay be it would be like paying extra for a steering wheel in a car If someone asked you to do that when you buy a car pay extra for the steering wheel you'd go like No you'd be right so What this means for Siemens is if we want to be competitive and if we want to be profitable We have to invest our development effort here not here not there not there not there All this because all this does nothing to distinguish us from the competition We can't run and or we're not interested in running a nicer cloud service than Amazon or Microsoft because we'll when we need those will just buy them like the service about the company And Yeah, so and again, we need lots of software and that software has to come from somewhere on the other hand the number of developers Over all this time is more or less constant. We're now at seven roughly 17,500 software developers in Siemens a company that has 340,000 employees in most countries in the world somewhere and It's not a huge number and we can't hire another 50,000 or something to write whatever software They need it's just not it's just not possible. You couldn't pay for it So free software is the only option really it's what everybody because our competition knows this just as well as we do And if we were to somehow insist on licensing all our stuff from proprietary vendors, we would just be burning money. It's So this means that free software is already very widely used in many Siemens products Instead of going through the entire portfolio I just like to point out a couple of things one is a rail automation and vehicle control systems. Yes They will be available. Yes So rail automation and vehicle control systems Meaning this software that makes sure that your high-speed train when it goes 300 kilometers an hour stays on the rail stops at the right time At FSFE I often got the question well, well free software is all well and good, but what about safety critical systems? Can you Use it there and the answer is yes. So the the the vehicle control system and some of the itre trains Uses Linux and the Linux kernel and many other things the when you develop safety critical systems like that or when you try to get them to market you need to run through a testing process and The one of the requirements is that software be developed in a certain way through a certain process and the Linux kernel very much Does not fit that process This turns out not to be a problem because the testing regime the testing authorities actually quite flexible if you find some ways to Convince them that your system is safe then Then they will accept none and that's what happened here and the engineers tell me it was totally worth the effort because All the alternatives they had were more expensive slower and not as good The other point I wanted to highlight is medical imaging Healthcare and especially MRI scanners magnetic resonance imaging scanners Because these are medical devices they go through an extensive certification process in both Europe and North America and lots of other countries, too and Again, they've been using Linux since 2003 or so as a kernel There so it's perfectly possible to do that In environments where you need extensive certification Of course whenever you produce a device that needs extensive certification and you want to market it There's a certain amount of paperwork that comes with it and there's no way around that, but it doesn't get worse when you use free software and the device sticking with the MRI scanner as as One of the examples of how free software is making Siemens faster and more efficient The product people started using Linux in the scanner Because they needed an operating system that could do real time so that could deliver that They need to build a system that could respond to system events within a specified number of milli or microseconds not every software can do that of course and They needed Software an operating system that was always up to date with the latest real-time technology and only the Linux kernel could do that And so they started using it out of necessity But then they started very soon started to love it because they said well, it's extremely flexible We need something but they can accommodate it overnight meaning they meaning that some Siemens engineer would sit down and write the code and they would then Get contributed to the kernel word how it lives happily ever after Some other examples and these are mostly business focused, right? I'm not talking about technical stuff here mostly This is I'm using most of these slides internally as well when I'm talking to our management on why they should be using more free software contributing order free software and My real purpose here is to give all of you these arguments so you can go to your own managers or audiences or whatever and Convince them so One product to control panel for building automation. Let's you control heating access lighting and so forth The software stack is mostly free software 90% Only 10% mostly the user interface is a Siemens proprietary now The development effort on the other hand 90% of the development effort that went into this product went into the proprietary part 10% went into the free software part Which means that this was a very efficient allocation of Siemens development resources, which is a good point to make for managers The the tent of the 10% that were invested in the adapting the free software parts These adaptations actually mostly got pushed back to the project mainline because the people Doing this development work. There are of course developers. They hate repeating work that when it's not necessary So they just push it upstream and hope to always find the code in later versions of of the project Example they really like is a certain CNC automation device CNC Basically means milling cutting You take a big block of steel put it in a machine and at the end Do you have a get a cylinder block for a car motor or for car engine or something? It just cuts away and removes material in different ways controlled by a computer It's one of the Siemens bread and butter products and has so far broad revenue of more than 20 billion euros over its lifetime 1520 years Contains a lot of third-party components. Most of these are free software One of them is one of those is the bootloader That is core boot the device used to run with the UEFI boot loader And that would take eight seconds to start up the device Which isn't terribly long but can feel very long when you're trying to bring up your assembly line back to production after a power outage So now it takes two seconds instead because the developers decided to use core boot And they also contribute their patches on and their their additions to the main core boot project under the GPL Simply because they hate doing repeat work and this is the best way to do it and again Nobody buys this thing because of the bootloader. Most customers don't know what a bootloader is There's No business case against using free software here, but there is a very good one for using it and Finally here the a control system for power generation One of the when you look at pictures of the inside of power plants You see the control rooms with people sitting at large desks with lots of buttons one of those Half the software stack consists of free software and that was that let the development team cut the development time roughly in half Why is this interesting because? Most managers most product people will know that there are several when you're developing a product There are several things you can do in order to make your product more profitable. You can cut the development costs That'll help a little You can invest a little in marketing that'll help a little that'll always all these things bring a few percentage points But with at Siemens we found that when you reduce time to market substantially and you're first on the market that Makes you like a third more probably or can make you like a third more profitable or something around those Something around that So reducing time to market is super important for people who release products and When free software lets them do that they become really really happy So the free software community by now is probably our largest supplier of software and we cannot afford to alienate that supplier Plus we don't want to and We also cannot afford to not be able to ship product because Someone is complaining that we're infringing their license, right? So we've there are a number of things we do at Siemens in order to make sure that everyone in this very large company sticks To the obligations from free software licenses There's strict rules and procedures internally that say you have to cause stick to the licenses just in case you weren't sure about copyright law Before now you are and there are people in each business department that deals with software and who are formerly in charge of making this happen And when we source software from supplier or source anything from suppliers that contains software Boards devices that go into our devices and so forth And we have standard clauses in the contract that say you have to give us the full compliance information and the source code and everything That we need to give to our customers when we sell this product One could think about going a step further and actually insisting that the source code be handed to us before we pay for the delivery Which would sometimes make sense, but we're anyways the supply chain for people in the industry is a perpetual headache, but this helps When you make rules you also have to give people the means to put those put your demands into practice so Siemens Invest in tooling were a major contributor to the Phosology license scanner anyone feel familiar with that. Ah But What it basically does is you it's it's a linear it started by HP now. It's at the Linux foundation It's a tool you that runs on a server you upload a source code package like Vim or emacs or Debian Debian something which is then turns into a bunch of packages And it'll run a number of scans on the source code and tell you which file is under which license and who wrote What file and who holds the copyright and all this and you get a long long long list that makes extremely boring reading and you put that into The the compliance information that you ship with your product And of course since you now know what licenses you have in the code You also know the obligations the compliance obligations that you have lots of bookkeeping And there is the software 360 manner software management application. I'll get to that in a minute and finally All this is no good if people don't know how to actually use all these measures and why they're important So Siemens has internally trained all people in software related roles more than 40,000 up to date In the basics of free software and license compliance Now here's a small sample of the seat of the software free software projects that Siemens Engages with on the right side You'll see lots of stuff that is mostly focused on the embedded sector besides the obvious things like Linux kernel How we use that internally? C++ and so forth but Most of the devices that Siemens makes themselves are embedded devices So which explains why everything is so focused on the embedded sector and then there are a few projects That we've initiated them. I'm going to talk about those up for a little now One is jail hats Which is a partitioning hypervisor based on Linux? What this means in practice is you have a small computer a small embedded computer And you want to run two operating systems on it one that does nice things like the user interface and I don't know what and the other that does the actual hard work like Controlling that high-speed train and this needs to be a real-time Operating system operating in a very in a very safety-oriented mode And they just run side-by-side on the on a tight on a platform with very tight resources, so jailhouse makes that possible Then here's EMB square the embedded multi-core building blocks C++ and C library for developing parallel computing applications on embedded system again real-time capable because We need this stuff to work on our actual products both are Available on github jailhouse is gpl v2 because it's more or less in the kernel or in the kernel area And EMB square is to cause bsd. The Siemens doesn't really have Preferences when it comes to licenses. It's just we'll use whatever If we develop something ourselves, we'll just use whatever fits the usage scenario best And if we if we take something from that already exists, we of course stick to that license now Regarding the compliance tools that we're building ourselves that we're using in addition to stuff like the the proprietary black-back things and know what everybody else uses in the industry But this is we have the phasology license scanner that lets us generate the information We need for compliance and then SW 360 is something that Siemens started simply because when it comes to software live in a corporation is very very complicated Software comes into the company in many ways through many routes people Someone buys products someone buys proprietary licenses Someone downloads stuff from the internet someone I Know lots of weird lots of weird ways Then it gets handled The software gets handled and processed and redeveloped and whatnot inside the company in many many different ways And then it gets shipped in many different ways It gets put on CDs and given to people it gets put on the Software update download website of Siemens and downloaded from there. It goes through all sorts of distribution channels And it can be a little complicated to keep track of all that So and there's no software on the market that currently does that So we're building it as a under the eclipse public license on github Software 360 is just designed to be a catalog a database that Stores information from the license scanner. It's optimized for phasology currently Source code like quote quality checkers vulnerability management very important first You need to know what is what software isn't your product because when someone reports of vulnerability You can't go running off like a headless chicken and checking 50,000 products literally on whether they contain a certain software component And if so in what version You just need to know in advance and So you can fix the vulnerability in the right places. So that is what we will hope for software 360 will deliver Other companies have started working on this Bosch has been contributing quite a bit But if anybody else feels like their company should also be joining this you're absolutely welcome Do I'm either send us an email and say hello or just send a patch or? and we'll be really happy and Finally the civil infrastructure Another interesting angle This was a collaborative or is a collaborative project that was announced in April this year. It's at the hosted at the Linux Foundation initiated by Choshiba Hitachi and Siemens all three very big very traditional industrial conglomerates and They have a shared problem infrastructure like rail bridges traffic systems Airport systems increasingly consists of software and relies on software Infrastructure also has extremely long lifetimes 10 years is nothing design lifetimes of 30 years are pretty normal in that industry and 50 60 years are absolutely not unheard of How are you planning to apply security patches to the current version of the Linux kernel 40 years from now? Bit of a challenge there and this project sets out to answer that so they're building a long-term maintenance infrastructure for critical free software components starting with the Linux kernel and starting with the three was with three company and we hope very much that others will join because Well, it's a problem that many people have many companies have and It's fairly easy to solve with free software at least easier than with all the other alternatives It's actually free software is the only possible solution here because how many software companies? Do you know that I even 30 years old? Let alone 40 or 50 and how many of those will be around for another 30 40 50 years And still support their product Good point. So These are some of the examples that I wanted to run you through of Stuff that I thought was cool that Siemens is doing finally because I used to do advocacy at FSFE and I still do advocacy at Siemens Here are some arguments that we found work really well with our management and maybe they work well with managers elsewhere, too What I one point I already explained we need much more software than we can write remember the pyramids it's just No company on this planet at least not at that size can conceivably or In a can conceivably conceivably write all the software they need and expect to survive as a business You need free software or you're not going to be there in a few years from now Then the super long-term maintenance argument that we may that that we build the civil infrastructure platform to address With free software you can actually perform super long-term maintenance over decades and With you can do this with no other type of software One point that I wasn't aware of before coming to Siemens And that surprised me a little and a for us that for that reason. I really like it at FSFE. I heard a lot of complaints. Oh Free software licenses complicated complicated difficult difficult so many licenses hundreds all these variations. It's chaos And then I talked to people internally Who these people in charge at the business units or in charge of compliance with the third-party software licenses both free and proprietary? They go like yeah, you know free software licenses piece of cake We you read them once you know what you analyze them You write down the obligations and then every time you encounter that license you take the list of obligations Paste it into your report and hand that to the people who asked you for the report and done Five minutes that much and Proprietary licensing contracts on the other hand These these things get negotiated by lawyers on both over the course of months Between deciding that you're gonna that you want to use a piece of software and you're actually getting it months if not years will pass Some of these contracts contain clauses that let the supplier Update their terms of use for the software without telling you so Siemens whenever we decide to use the software What does that even what what is using the software meaning the context anyway different question though? But still interesting when we decide to use the software we need to go every day and check what the current terms of use are This is bullshit. I'm sorry But it is Instead you have a gpl a gpl v3 component. Hey, you might not be using that for a core product, but At least you know what you have to do And that is fine then the product people can decide whether they want to use that component or not and you're done so and With free software also you decide to use a piece of software in the morning and you have it by the afternoon and or even earlier Then the other two are business arguments when we contribute a little we often get a lot back The Linux kernel currently has sorry if I'm overworking that example, but it's just so convenient The Linux kernel currently has about 24 21.4 million lines of code of which Siemens as of July 10 or so had contributed 5812 I Haven't calculated the actual return on investment, but there's you can see a certain disconnect in the relationship We're hoping to substantially raise that number at some point But the fact for now is that all these products that I mentioned earlier that are running free software and other that are running links And many other free software components Wouldn't really be possible in that form without all this and we invested We had someone write 6,000 lines of code cost a little money, but how else could we have gotten all this software so cheaply to run on our platforms? And then there's the argument about pushing patches to mainline pushing patches upstream pushing working with the projects because It just you know just makes you quicker and make sure your requirements are accommodated When you when you start using the software or when when you need to use the software and not later And it just it just makes good business sense cuts time to market increases profit, which is what of course at Siemens We all want Right. Oh one point before I finish if you ever Look at software that Siemens distribute it not just own but also especially software that we distributed from someone else And you find you stumble across something where you think it might be a compliance problem And you conduct some proper analysis and still come to the conclusion that there might be a problem here Please write to this address it ends up with me and a few colleagues and we'll we'll promise to look into it. So Otherwise we'll just we're just always happy to hear from you and we're there. We want to work together. Thank you Do we have a couple of minutes for questions? Yeah Just about two minutes. Oh, I'll run over with the mic brevity is a virtue Thank you very much. Thank you very much for the interesting presentation You talked about strategic use which meant if I understand it correctly Saving costs by using competitively not differentiating components When you think about strategic Contribution or strategic leadership of open-source projects what business reasons for Siemens would you see to do that? Mm-hmm. Thanks. Good question. It's actually something we've been Working on and I hope to sort of you know how at what speed these corporations move glacial as it's a good description here, but We are very interested in very interested in getting people into In getting Siemens developers that are working on projects that are critical for us and very important for us into getting those into positions where they can really contribute to the project like a maintainer position or Even maybe even a project lead position. We don't want to take control of the project. Not that we just Want to make sure that the project is developed in the best way it can Yes So if a developer working for Siemens wants to contribute upstream, do we need she he or she need approval or can yes? Can that be done? No, no, how does how's the process basically? Do you happen to work for Siemens? Because I do get that question internally a lot Siemens is a very diverse company things work differently in different places just to explain this very briefly But the reference process that we're setting up is basically the same that I used to get approval for these slides For example, but that anyone someone would use to get approval for a journal article It goes you submit it for approval goes through to a few people like the patent people to make sure you're not distributing secret Siemens industrial knowledge and The public the publications people who make sure that you're not Distributing total nonsense and the stock market people who make sure that you're not tanking the Siemens stock At some point it gets approved and at some point it gets approved and say okay You get you can contribute now or you can do publish now we do the same for source code And Initially we expect developers to have get a sign off on or to get permission from the team lead to contribute to a Particular project a particular bit of code when they have a bit of a track record with that project they get permit they might get permission to Let's say we're at version 0.3 with the project They might get permission to contribute up to version 0.5 and then we reassess we go through the process again and so forth But it's not super lightweight. That's but it actually works and it's reasonably quick So I think we have to break that. Thank you very much. Thank you