Hello there and welcome to the Boiling Steam podcast! I am Mark Dougherty and today we have a conversation with James Ramey, the president of CodeWeavers.
First we’ll take a look at how Proton has advanced over the past couple of months with the jump in Proton 5.13 and we ask James what the progress is on easy anti-cheat for Linux and how that’s coming along. We also take a look at PortJump and ExecMode: what exactly are those? We’ll have answers to those in this podcast as well.
Regarding Proton 5.13
Ekianjo: So James thank you very much for joining today. We really appreciate the time that you have for us and I wanted to first congratulate you for the the Proton 5.13 release a couple of weeks ago. I think we’re all very impressed with all the work that came to this release and how much improvement it brought to the whole.
The first question I wanted to ask you is: was there a particular reason why there was such a gap between the 5.9 and the 5.13? Did you expect that it would take so long and was there any particular reason to pack everything into a big release this time around?
James Ramey: Well I asked our senior developer on the project Mr. Andrew Eikum that question and he had gotten back to me early this morning that the reality is that the upgrade from 5.0 to 5.13 was eight months, which wasn’t that much longer than the upgrade from 4.11 to 5.0, which was seven months. Part of the reason that there’s a longer gap between some of the the updates is that a lot of the easier work has already been done so when we put in chunks of work like we did for this last release. Most of that work is pretty significant and takes a lot of time and resources in order to get those patches completed, tested, and verified.
So it may be in the future that the releases are going to follow that kind of pattern. But it’s driven by the work itself so if it’s not a set schedule, it’s when we have enough work in a release that validates it being pushed out and and that’s really kind of dictated by the number of games and the types of games and the improvement for games that are able to go into that release. So it’s growing a little bit in terms of release cycle from six months to seven months, seven months to eight months. […] So going forward it’s a lot of really hard work, and that involves all the graphics and security stuff, a lot of big projects that we’re trying to include in Proton.
cow_killer: Nice! So I am guessing that CodeWeavers has nothing to do with the numbers in versions – we went from 3 to 5 in a few years; I don’t suppose you guys would have any idea why we jumped from three to five like that?
JR: It started 3.7, 3.16, 4.2, 4.11, 5.0, 5.13… I am not sure who’s responsible for the number in it. I think that’s Mr. Eikum. […] I am not exactly sure how they come up with the number in the way they do or why they do. But that’s what they’ve set up and it may have something to do with the fact that it corresponds with WINE a little bit. […] WINE 6.0 is scheduled to be released sometime after the first of the year (2021). So it may be that the next release would be 6.0 and it may make kind of a tie-in to that because if I were to look at Proton more closely, the number in 5.13 seems to be where we are with WINE or close to it. So that may be where the numbering comes from.
Easy Anti-Cheat (NTDLL) Progress
Ekianjo: We exchanged emails a couple of days ago regarding the NTDLL work that’s currently happening in WINE. I think you mentioned that it’s a lot of long-term work that will make significant changes to how you work with the kernel on the compatibility layer, and it will probably enable some anti-cheat technologies to work at some point, which are not being supported in the current Proton version. Do you think that work will progressively trickle in WINE and Proton or is that something that needs to be completed at once before you can see an actual improvement?
JR: Actually the first part of the NTDLL work has already been upstreamed. It’s going to be trickled in so what ends up happening is now you have a foundation and a base for that work and then people start testing that work and determining corner cases or areas where things don’t work properly and they’ll start addressing those and patching those. So it starts kind of with the the initial pieces that Alexandre Juilliard put into or upstreamed in WINE – they’ll make their way into Proton and then they’ll start building on top of that. So hopefully in the next couple of releases, games that have been blocked on NTDLL will start to work – that doesn’t guarantee that they’ll all work on day one, but it’s again the foundation for that work going forward.
Ekianjo: That’s really good news because a lot of the compatibility issues in many of the more recent games are definitely linked to the anti-cheat software. So if there’s a way around that, I think it would be very much appreciated by the community.
JR: It’s obviously something that we’re very much aware of – you have to kind of go about it the right way, otherwise it looks like you’re just hacking […]. So it’s a process, but that process is moving forward and it’s actually with Alexandre who is spearheading that work. It’s moving fairly quickly – I mean he’s probably the most qualified individual on the planet to do this type of work so he’s my best resource in this regard.
Ekianjo: Yeah I was looking at the the git history – he’s been working on this particular topic for several years apparently, so yeah, he’s definitely one of the experts in that field.
Coronavirus Impact on CodeWeavers
cow_killer: With this pandemic that’s still raging on (since February, I believe) how are you guys dealing with this? How’s the work situation going? Are people still going into an office or are they working remotely?
JR: Fortunately for CodeWeavers we are a fairly dispersed company. Most of our development teams are located in Western Europe, Eastern Europe, and Asia, so most of our developers are separated and they’re already working out of home offices. Our local team here in Minneapolis – we have about 25 employees – we’ve been working from home. We normally go into an office on a regular basis but I’ve been in the office once since, I believe, the second week of March – and I am usually in every single day. So we have a skeleton crew inside the office but our company was built in order to kind of work in this manner. So in terms of productivity, we haven’t been hampered at all by coronavirus knockout. We have had a couple of employees that tested positive for the coronavirus so we’re not immune to it and when that happens we’ve had people that had to take some time off accordingly, and rightly so.
But for the most part we’ve been able to weather the storm pretty well and we’re going to be in good shape here going forward. So I don’t anticipate any issue […]. It hasn’t been disrupting the flow of operations and the progress.
Ekianjo: I think it was also one of the potential worries of having some additional time between major Proton releases – maybe this is due to the pandemic or something, but yeah, I am glad to see it’s not the case.
JR: It hasn’t been that the release has been slowed by the coronavirus – it’s more again getting back to the fact that the work that is going into each release. The reason that each release is getting better and better is that it’s just harder work. So it’s taking more and more resources to make significant improvement. Currently, I believe we have 12 or 13 developers working on Proton full time so we have a full staff of employees that are dedicated just to Proton work, and then we have about 1.5 QA people that are doing testing on a regular basis. So we’re very much engaged with that and we have been ramping up resources over the last year or so. We’ve gone from 10 to now 13 employees, so we’re putting more effort into each release. It’s just that the work it requires is a lot more.
Ekianjo: So you have basically diminishing returns…
Opinion on Proton vs. Native Compatibility
Ekianjo: One thing a quick point I wanted to address as well – we looked at the data recently regarding the number of native ports coming to Linux in the past couple of years versus the timing when Proton was introduced. We noticed that there was a sharp decrease of native Linux ports from developers on Steam, and I don’t think it’s a surprise. Everybody was aware of this but I think when we look at the numbers, it’s actually very clear it’s been shrinking down drastically since Proton released. I was wondering, from your point of view – do you think this is intentional from game developers? As in, they’re aware of Steam Play/Proton and therefore they don’t think there is a need to produce a native client anymore, or do you think it’s just less focus on Linux than before?
JR: I think there’s a couple elements here. First and foremost you probably have to ask the actual game developers to confirm what their intentions are and why they’ve kind of acted in the manner they have. We can see from a high-level view that there is a lot of interest on behalf of game developers in regard to Proton. So part of what Proton provides is that it gives game developers an easier access into the Linux market – you take your already working Windows version of a game and you get that set up so it works in Proton. Now you’ve kind of expanded into a second market without a lot of re-development on their end.
Now for people that aren’t using the Unreal Engine that’s actually really good news – that allows them to get to the market much faster without having to re-compile or really change anything about their game, and it allows them to kind of focus their resources on the game itself because we do see a lot of additional content with games these days. So there is this focal point where people are looking at Proton as kind of an entry point into the Linux market – that’s the first boost.
The second piece is that from a business standpoint. This is someone who we’re selling into the Linux market ourselves directly with our CrossOver product. The Linux market is kind of being bifurcated a little bit in that we’re seeing a lot of interest in Google and what Google is doing with Chromebooks. We’re seeing a lot of interest with Manjaro as an up-and-coming Linux distro. We’re seeing a lot of Ubuntu. There’s still kind of a fragmentation of the Linux market, so if I am a software developer and I am trying to create the best game I can possibly create – it’s really hard to kind of capture the Linux marketplace in a big swath. Whereas with Proton, it allows a Windows developer the opportunity to kind of capture a larger chunk of the gaming chunk of Linux.
So it sets a standard that you can build towards […]. There’s a set of standards in place that make being in that market easier and also make sure that the support that you’re able to provide is more streamlined than it would be, if you support the entire Linux market. So there’s a lot of benefits if you’re a Windows developer when working with Proton. But in terms of what we’re going to see in the future, I don’t know how the Linux market is going to grow in terms of people developing natively in Linux, and again I think a lot of that has to do with what target do you try to hit. I mean, what market do you try to go for, where’s the biggest bang for the buck, and if I look across the Linux landscape, it’s difficult to kind of pinpoint where the best opportunities are outside of ChromeOS, which is growing leaps and bounds, or outside of potentially Proton.
So from the business aspect, it’s driving towards the best opportunities for revenue, and to be very honest – and I know people kind of cringe when I say things like this – but if you’re not making money, you’re not producing games, and if you’re not producing games, then there is no content at all for anybody. So the underlying ability to generate revenue is critical. I know Linux gamers feel like they’re second-class citizens because people don’t develop games the same way they do in the Windows platform, but that’s all economics. I mean the fact is that Windows covers 90% of the market…
Ekianjo: You can explain the fact that Proton has been a success – as in, it’s a more economic way to bring games to Linux basically?
JR: But it’s also a set of standards. I think people kind of overlook [the fact] that it’s a set of standards [that] if your game works in Proton, then you’ve got it running in Proton and then the end users have to comply with working Proton. So if your end user has Proton running on their Linux box and you’ve got a game that’s running in Proton, then that end user is able to run that game. Whereas if you’ve got Arch Linux or Manjaro or Ubuntu – now all of a sudden you’re trying to support a much broader and much more fragmented Linux base of hardware and software that’s almost impossible to do with any [sort of] consistency. And because it’s already a very small market to begin with, now try to get a portion of a small market, or what is the largest portion of the smallest market of that. It’s not necessarily a good use of resources for Windows developers because what they’re trying to do is they’re trying to get the game out there into the most hands they possibly can, and right now that that seems to be Proton.
cow_killer: I’d say that another contribution there for native Linux ports is those libraries that are used can get outdated over a number of years, and then suddenly the game doesn’t work on Linux anymore. We had a pretty interesting discussion about this couple weeks ago over on Boiling Steam, so it’s nice to get a another perspective on this situation.
JR: Well hopefully what this does in the long run, is that once there’s a set of standards in order for games to operate in the Linux platform, then you’ve got an opportunity for Windows developers to build to that standard, whether it’s Proton or not. So one, I know that the market’s valid because I am seeing growth in the market; two, I have a set of standards that I can build towards and I can then support. And now I’ve got a market that I can basically go after and once you’ve got all those elements set up, whether it’s Proton or whether it’s using those same standards, you now kind of got your market defined. And once you get your market defined, it’s a little easier to determine whether or not it’s even viable to enter that market. But if it is, then you’re going to see more and more Windows developers building native Linux games.
Game Developers Are Becoming More and More Aware of Proton
Ekianjo: On this topic you mentioned that game developers make their own choices, I wanted to ask you whether you think there’s a higher awareness about Steam Play/Proton than before. Maybe Valve has been active in promoting Proton on their side as well, but from your side do you have any feedback that game developers at least are aware of this solution in larger numbers than before?
JR: We are, and we do know that game developers have taken specific notice of of Proton. I think I can send you a couple of links that you can take a look at that Mr. Eikum would kind of hold aside. Just gonna pull them up quick. Yeah, I got a couple links here. I’ll post them here and you can take a look at that.
But yeah, we’re seeing interest broadly from developers. Now it’s not in droves yet, but a lot of indie developers are taking notice of Proton. Even a lot of larger Windows developers are kind of taking notice of Proton.
It’s an entry point into a market that is very low cost, but yet also kind of gives them the best opportunity for success. So [does that mean] will we see more games in the future? I am sure we will, but what it’ll also do likely is get developers to start testing against Proton throughout their development process. So hopefully at some point in time there’s a lot less interaction with CodeWeavers for games to work. And a lot of what we’re doing is building that foundation, so that framework is readily available from day one.
Now, we’ve had a couple games launched day one [with our] program and have been very successful. Hopefully that increases, and once you start seeing that increase, then you’ll know that we’ve reached that tipping point where Windows developers are like, “Yeah, if I am going to go into Linux, I am using Proton.” I mean, because you’ll see their game announced for Windows or Mac and available on Steam, and, “Oh, it works on Proton!” you’ll see them advertising and marketing that. We haven’t seen that tipping point yet, but I bet you within the next 12 months we will.
Ekianjo: So right now, when there is Proton compatibility, typically end users are trying it out by themselves and finding out if a game actually works. There’s also the white listing that Valve (kind of) maintains over time. I am not sure how actively they are still doing that at this stage, but I think there’s a lot of games that actually work out of the box that you would not be aware unless you try to launch the game with Proton. So is that something that Valve or CodeWeavers is doing to to make this more visible to the end users in the future?
JR: I do know that Valve has really promoted Proton in that regard for Windows developers. What we hear is a lot of anecdotal kind of stories about developers who just thought they tried Proton to see if it worked with their games, and they were surprised that it did. We’ve heard again a couple of stories of people making sure that their game could work with Proton on day one. So we’re starting to hear more of those stories, but in terms of kind of a constant drum beat of the Proton, Proton, Proton, we’re not hearing that yet. But I think if Proton continues to grow, if the market continues to grow, if interest continues to grow, you’ll start to see more of that. And again, the tipping point is when game developers build for Proton on day one. When they market that in their kind of synopsis og their game, then you’ll know, “Okay, yeah, we’ve reached that point where Proton has now kind of become the platform”…
PortJump: CodeWeavers Porting Technology
cow_killer: That’s good to hear. So CodeWeavers recently announced PortJump. Now for those who aren’t aware, do you mind explaining what exactly PortJump is?
JR: PortJump is using WINE to take your Windows application, your game, and having it run on macOS or Linux. So we essentially port your application or game to another platform. And the hook with PortJump is, if this works the way it should work, the question is where do you want us to send your check? […] You’re expanding and leveraging your investment and we’re able to help you do that and hopefully at a very small cost.
So, we’ve formalized that because we’ve ported probably well over 300 applications and games just individually by itself, all the work that we’ve done in Proton aside. So we’re working with Windows developers around the world currently and supporting their games and applications, and we wanted to more formalize that process so that more and more Windows developers can get into both the Linux and the MacOS markets.
Now, the way things are going with Apple and some of the changes they have going on in the future, the Linux market may become incredibly attractive for a larger number of Windows developers just to get their foothold into that platform. And the same is true for ChromeOS. We just announced with CrossOver 20 support for the Linux partition in ChromeOS, so we’re doing that work too, [and] we’re able to support that as well.
Gaming With ChromeOS
JR: It’s a market that doesn’t really exist yet. It’s very limited by the hardware itself. So you take a Chromebook that’s got a 32 GB hard drive and you have to ask yourself, how many games can you actually run on a partition running inside a 32 gig hard drive? So it’s limited in a number of ways that are kind of hamstrung. The same is true for the video card. You get a very basic Intel video card with most Chromebooks. So you you’ve got limited hardware, limited storage, and the ability to maybe run one or two games at best.
So, in terms of “is it the next great platform for gaming?” Probably not. But where the niche comes in is if you have one or two games that you really want to play. It may be an opportunity to kind of take that and make those games more mobile, so you can put it on your Chromebook and take it with you wherever you go in the world.
The same is true for for Windows applications. We know a lot of people that want to run Quicken and other Windows applications, and this is a good opportunity to do that. But in terms of having your entire Steam library on your Chromebook? No, that’s never going to happen.
The interesting thing, if you read between the lines, is what’s really going on out there and you’re hearing a lot more people talk about running Windows on Chromebooks. Well, you need 20 GB of space just to run Windows. How you do it – that’s just kind of the bare bones.
And so what we’re going to see is, Chromebooks will get improvements – and they’ll probably be significant improvements. So it probably won’t be all that long before we see Chromebooks with 100 GB hard drives, or Chromebooks that are running maybe an Nvidia low-end graphics card, but an Nvidia card [nonetheless]. You’re going to start seeing more of these things as those specs kind of start creeping into these Chromebooks and it’s going to be because the Chromebook is then going to be the platform of choice. It’s going to be that device you take with you when you’re on the go versus a regular laptop.
Now, the trade-off without [the improvement in hardware], is the Chromebook built its reputation on the longest battery life. Well, if you’re running any game at all at a high end level, you’re going to suck the battery life right out of that. So, the trade-off is, I think you’re seeing the Chromebooks kind of morph into more of a Linux laptop versus being kind of a lightweight Chromebook tablet-ish type of devices they’ve been up until now. And I think we’ll continue to see that transition, because all the latest improvements in ChromeOS have really been around the the devices themselves… [I have] not seen a lot of tablet-type talk anymore. Even Google’s kind of pulled some of the tablet stuff off because it’s just not compelling for most users.
So, I think you’re going to see kind of more and more capable laptops come out of Google and I wouldn’t be surprised if we’re not all that far away from Google announcing their first Chrome laptop. I mean, they’ve had a couple out on their own that have been respected and kind of well above the rest of the market and they’ve been kind of pulling the market more towards that end. So a $1000, $1500, Chromebook is probably not out of the realm of possibilities here in the next next six-to-twelve months.
cow_killer: Well, what about things like Google Stadia or Amazon Luna? What would you say about that for Chromebooks? I think that would be a pretty good alternative for users who want to play games on those devices.
JR: Well, it is, and I subscribed to Stadia for well over a year, [although] I just turned off my subscription this month.
I didn’t find Stadia to be very compelling, because even in my house trying to run games I was getting Wi-Fi issues. I literally am 15 yards from my Wi-Fi port in my house, so I am fairly close to where my Wi-Fi comes in. And I was running into issues running a lot of games. When I was on the road, I wasn’t getting a lot of games. And this is Stadia running on my Chromebook – which has fairly significant hardware specs on my Acer.
So I wasn’t having a lot of success. And I think, if I am reading the forums correctly, a lot of people are kind of in that same kind of boat.
It’s good, and for the times that it runs, it runs well and that’s great, but it’s hard to get into games, especially multiplayer games. It’s hard to play games in terms of connectivity, and the streaming isn’t always great. There’s sometimes a lot of lag, even when you’re in the game, and when you’re able to actually play, you kind of experience lag. I know that the Stadia people are working on that and I am sure that priority number one for them is to continue to prove quality of service, but it’s a very difficult task.
I am not sure how Amazon’s going to overcome a lot of these things, because I think you’re still limited by the end point Wi-Fi. And if the endpoint on Wi-Fi isn’t great, or it doesn’t have the ability to stream at gigabit speeds, I think the quality suffers. I don’t know what the percentage is these days of people [who] have [gigabit] Internet in their homes. I don’t think the majority of them have it. So if you’re limited by the Internet, if you’re limited by your hardware… yeah, then the streaming services just don’t feel good. You just don’t feel that same joy you do when you have things running on your box locally.
Ekianjo: I guess Stadia is also a play towards technologies like 5G, where this will definitely expand the reach of, I would say, high-speed Internet to a lot of people who don’t have physical access to this kind of Internet right now. So I am not sure whether that’s going to be the case or not, but that’s maybe where they can expand as the technology on 5G and so on evolves.
JR: And that may be very true. I mean, Google is in the position where they can make a significant investment before the market is even there. Having all the pieces in place for Stadia today for a world that may have 5G in the next two to three years across the board, that may make a lot of sense for them. It’s just in this time right now when you’re a gamer, it just hasn’t been an across-the-board satisfying experience, which I think still drives people to wanting to get the game to work right.
Thoughts of Valve’s Potential Streaming Service
Ekianjo: On the topic of Google and Amazon also doing their own streaming services, we’ve heard for a while now that Valve is probably also working on their own streaming service, and while they haven’t announced anything officially yet, there’s a lot of assumptions about how this kind of service would actually work. People are thinking that Proton may be one part of the core of this service. That would make sense to be able to run and stream a lot of Windows games, even though you would not actually have Windows servers running in the background. I am pretty sure if this is happening you probably can’t tell us anything about that, but do you think that’s in the realm of possibilities from the way Proton is architectured?
JR: I don’t know about that. I know that Valve was looking at streaming services from the standpoint of in-the-home streaming service. So you would use Big Picture Mode, or you could start playing games on potentially your large screen television sets and other things. So you’d run it from your box inside your house from your Windows box or your Linux box and then stream it to another screen inside the house. But I don’t know how all that would work, but I know that Big Picture Mode was one of the things that they were really trying to push a couple years back. So it’s obviously on their mind, and in a lot of ways that makes sense because people have these 70” large screen television sets in their homes, and there’s an opportunity to do gaming off those large TVs [or, essentially, monitors] – that could be interesting. It’s especially social because you can get five or six people around the large television set where you can’t do that around [a smaller] monitor as easily, and you can have people playing and engaging, but again, we haven’t heard anything from Valve on that officially so we we know about as much about that as you do in that regard.
No Proton Compatibility with Chromebooks
Ekianjo: On the topic of ChromeOS, I think you mentioned that ChromeOS is sharing the same architecture as typically what we see for laptops [Intel x86]. There’s also Chromebooks that are based on ARM and they also run Linux – or some version of Linux at least. Would Proton/WINE work also on this kind of ARM-based hardware or is that something that is currently say out of scope for PortJump?
JR: It’s currently out of scope. It’s not working on ARM yet. Now, we should have a solution when Macbooks release ARM-based devices in the next three-to-six months, and everything officially. But that’s because there’s going to be technology, Rosetta, which will allow us to essentially layer on top of the device. So that’s a bit different. Now if that same type of technology were available in a Linux device or a Chromebook that runs Linux. Then yes, Proton could potentially work in that environment.
But the real juice with the Macbooks is that it’s got that technology, so it’s already kind of thinking ahead to running Intel x86 on top of ARM, and that’s what they’re kind of building out for, whereas these other devices are strictly ARM only. So if it’s ARM only – if it’s not going to run CrossOver [then] it’s not [likely] going to run Proton at all. So [that’s to] the best of my knowledge.
Difference Between Standard and Pro Editions of PortJump
cow_killer: Going back to PortJump. So we have the Standard and the Pro Edition. Can you explain to us what exactly the difference is between those two versions?
JR: The biggest differences between the two – and this is the one where we kind of stress these things up front with the customers – that for a customer who’s like, “Hey, can my software just work for Linux?” for example, we have kind of a program that we can put the software through. We take a little bit of time – 10 hours and we can answer that question yes or no, and that’s the standard product. So we determine if the product can be ported – we kind of provide an outline of a quote as to what it will cost. We’ll look at any licensing issues that they might have. “Do you have any third-party components inside your Windows technology that cannot easily or readily be reported?” or specifically saying that “You cannot port this” so we track all those things down and then we answer that question.
With the Pro version, we spend more development time and then we also provide them with a proof of concept. So we give them the software running in our technology so they can actually try it on a Mac or Linux computer, and those are really the two different things. It’s kind of built around that, because we get a lot of indie developers that’ll come to us and say, “Hey, we’re considering this. Do you think it’s going to work?” and they want to be able to answer that question at the least [amount of] cost, and we’re able to do that. Then we have other other developers – they’re like, “Well, we need to actually see it working in order to determine if this is gonna be some some path that we’re gonna go down” and we’re happy to do that as well.
Ekianjo: I think one of the great innovations from PortJump is, from how I understand it, that you have a flat-fee principle, so that’s exactly how much it’s going to cost ahead of time. So it reduces the friction for somebody to actually request such services.
JR: Yeah, and that is really one of the things that we are trying to stress to people. We oftentimes put a lot more work and effort into these projects than what that time is dictated at. We’re essentially technologists. We want to see if something’s going to work, and really, it’s in our best interest to get something to work in the Mac and Linux platform – that’s how we make money. We put a lot of effort into PortJump – just to see if it’s even possible, and ideally it is. And if it is, then we help the developer get to that platform so that they can they can generate additional revenue. That way, our interests are very much aligned: we both want to see the product working on other platforms; it just takes a little bit of time and effort upfront to make that determination right.
Ekianjo: You also had another announcement on the same timing about ExecMode. Can you give us a bit more information about what this is and how different this is from PortJump?
JR: We have a lot of really smart people on our staff, and guys that are well versed in everything, from underlying technology inside of web browsers. We have guys that have been working with Mozilla in the past. We do a lot of work with graphics and graphics development. We’ve had guys on the forefront of Vulkan and other technologies. We’ve got all these people that are engaged in WINE and open-source projects and open-source technology that we really thought it might be best to try to help leverage that kind of expertise for companies that are having other technology issues of their own.
So ExecMode was built to take really smart people and throwing those really hard problems that enterprise and businesses around the world were having and trying to come up with solutions that made sense for them. So we really focused on trying to formalize what that might look like, and that spans everything from Linux-specific issues – we have guys that can do kernel work on Linux, to dealing again with some of the graphics engine stuff, which is really kind of an up-and-coming and exploding aspect in the environment and technology these days – to doing about anything you can imagine that involves technology.
So it’s really leveraging our staff to kind of a greater set of problems than just the WINE problems or just the open-source problems that we’re currently working on today. We wanted to let people know that we’re able and willing to do those things, and we’ve done a lot of Linux work in the past outside of WINE. We’ve done a lot of work in for customers on their own issues on integrating products – we do a lot of that. So we really wanted to kind of expand that and now we have the resources in order to do that.
We’ve been kind of running for a long time at 15-to-16 developers, and I think we have close to 30 developers [now], so we’ve grown significantly these last couple of years. And we’re trying to take those resources and apply them to more problems – bigger problems. Honestly, our staff loves challenges – they love really difficult problems, and this is a great opportunity for them to address a lot of those problems for customers and help customers get through some of those issues on their end.
Valve is a Client of ExecMode
cow_killer: That’s fascinating! So Valve is one of the clients of ExecMode – is that related to Proton or can you relate to us what that exactly encompasses?
JR: Valve is a unique animal in so many ways. [Chuckles in the background] We wouldn’t necessarily call them an ExecMode client because a lot of the work that we’re doing in Proton is WINE work. So it really is kind of traditionally in our wheelhouse as to what we’re good at, right? But it’s kind of spanned into a lot of other areas. So it’s not just WINE work; it’s graphics work, it’s a handful of other things.
But the core of what we’re doing for Valve is based around WINE. But we do have clients where the core of what we’re doing is based in and around Linux, and we do a lot of work with Linux and Linux security. We do a lot of work with different companies regarding graphics support, and those things are kind of more towards what ExecMode is really about; it’s taking other hard problems, software-related hard problems, and working to kind of fix those problems.
But Valve is probably more in our wheelhouse as to what we what we’ve been able to do for the last 25 years compared to a lot of other other customers. I will say this about Valve though – if you talk about a sweet spot, our developers are gamers. They love games. It’s kind of like your customers – your listeners are our gamers, so building games to run in Linux… that’s what our developers have wanted to do forever. So this opportunity to actually make games work in Linux is such a satisfying project for them, because they’re getting to do what they love. They’re getting to port things that they love and they’re getting to support a platform they love. So they’re all Linux users; they’re all gamers and making more games work in Linux is just a dream come true. So we definitely thank Valve for the opportunity to work on that project.
Future of CodeWeavers Development with MacOS
Ekianjo: So I guess the future for Linux gaming is looking better and better thanks to the the work that Valve and CodeWeavers do in parallel in order to improve the access to the number of games over time. Just maybe slightly outside the topic of Linux only, but what do you think of the recent Mac announcement and which direction they’re going, and what does does it mean for CodeWeavers? You might have already mentioned it earlier – as to they’re moving to ARM and you’re planning to support them. But do you think the gaming population on Mac – is it going to fund the decrease or it’s going to rebound because of the ARM announcement?
JR: I try to look at what Apple is doing objectively. I see a lot of concerns for gamers in the direction things are going, pushing for 64-bit support as they did in Catalina was kind of the first step. It limited a lot of older games right off the bat, so older libraries of games really aren’t able to move forward readily inside the new macOS environment. So you’re already losing a large number of games on macOS and then when you start looking at ARM processors and ARM support – now we will be able to run on Apple ARM silicon because of Rosetta.
But Rosetta 2 is the second iteration of the technology that Apple had abandoned after a couple years. So we have concerns too that how long [or] how readily available is Rosetta going to be? Is it long-term? Is it short-term? And all those things impact [on] not only us but they impact gamers. So if you’re looking at making a significant investment in your hardware, you want to be able to leverage that investment for as long as you can so you want to say, “Well, if I buy myself a $5,000 laptop, I want to be able to use that laptop for the next three to five years,” maybe even longer. Well, with what’s going on with Apple, is you have to ask the question, Is that even going to be possible? Am I going to be able to play the games I want to play?
And while the Apple store is filled with games, you look at a lot of the first person shooters, you look at a lot of the games that people really love, you look at the older games that some of them even have discontinued or no longer supported. You have to wonder if there’s a place for that in the future, and as a gamer myself it’d be very difficult for me to kind of move in that direction. I am sure a lot of other people feel the same way, like it’s incredible for any new things, but is it going to support games? Is it going to support the things that I love? Things from my youth?
I don’t know – I mean I am an Apple 2C guy. I had an Apple 2C back in 1988. I’ve used Apple my whole life. I played Lemonade Stand and Oregon Trail on floppy disk. I played Ultima 4 until I burned through disc after disc after disc! So I am as old school as you can get on Apple. I just don’t know if there’s a future for gamers going forward and hopefully Apple will address that. I think part of the way they address that is they actually lay out a plan in the past for people to say, “Listen, you’re going to make an investment in our hardware, you’re going to be able to play these games. These are the changes that we’re anticipating the next three to five years. Now, you get to make the decision. Is this something you want to do? We haven’t heard that yet. So it’s hard to understand whether or not what is actually going to happen to gamers in each iteration of macOS going forward.
Ekianjo: I think we’re reaching the end of the time with you today. But one last question would be, do you have any particular message you would like us to share with Linux gamers in general before we close?
JR: Absolutely! CodeWeavers loves Linux gamers, and I know that sometimes at CodeWeavers, it seems like we’re at odds with Linux gamers, because I know a lot of Linux gamers want to see more and more games brought to the Linux platform natively. Porting applications, porting software, porting games… it kind of goes against native. But the message that I would really like to send out is that if we can continue to build out this market, more and more developers will take the market seriously, and they’ll continue to build games and applications natively for Linux.
But in order to do that, it’s got to be viable. It’s got to have standards. And hopefully what we’re doing is showing developers that it is viable and we’re helping create standards so that more and more games and applications can run natively on the Linux platform across the board, not just for a specific distro, but for all distros. So we hope that people realize that we’re really strong, strong, strong, strong advocates for Linux and all things Linux, and doing what we do hopefully creates joy for Linux users today, but also kind of makes this a more viable platform for Linux users in the future, and in doing so, hopefully they’ll get the respect and love from software developers that they deserve.
Ekianjo: Thank you very much. Very good closing comment. I mean, from our side we have always been very supportive of the work you’ve been doing over the years. We always thought that Proton was a magnificent idea to build upon what was done before on Linux. Thank you again for all the work you do, and we are definitely looking forward to hearing more from you and Valve in the future. And hopefully we have a good chance to talk to you again when there’s something significant happening.
JR: Absolutely! We’re big fans of Boiling Steam and the work that you’re doing to advocate for gaming on the Linux platform.
cow_killer: All right! That will wrap up today’s podcast. Thank you very much for listening, and we would also like to thank James for taking the time out of his busy life to sit down and have a chat with us. Again, just a reminder we are available on Patreon at and Liberapay. Thanks again!