My main gaming PC is one of those cheapy "mini gaming pcs" you get on Amazon for like $350. I installed NixOS on there, and have it automatically boot into GameScope with the SteamOS interface.
After I got everything set up (which wasn't hard), the amount of maintenance I've had to do on there is zero. SteamOS managed to make desktop Linux accessible to basically anyone; it was easy to build my own game console that I enjoy considerably more than my Xbox One that I never bother with.
Valve has made desktop Linux a lot more viable than I ever thought would happen.
If you mostly deal with AMD stuff, most things "just work" with Linux. In my case, WiFi worked out of the box, graphics driver loaded fine, sound driver worked fine.
I assume the chief reasoning behind this decision twofold. First, it's a crapshoot to get alternative stores working on my steam deck (I wouldn't expect my less technical gamer friends to feel confident installing a game from Epic/EA/Ubisoft). It's also a financial decision, as Valve presumably isn't charging the OEMs a licensing fee.
In a market that's getting more crowded by the day, where so many of their competitors are using the same SoC and come in at roughly the same price point, it's a rational decision to control costs as much as possible. Not to mention, they also need to compete against the Deck itself, which Valve is subsidizing to hit its pricepoint. The alternative would be to innovate and differentiate your product offering from your competitors (like the original Legion Go, which had detachable controllers and a fancy pseudo-mouse). The fact that this machine didn't carry those features forward is a strong signal that the bottom of the market is where the early wins will be.
Keep in mind also that Microsoft is planning their own handheld xbox experience. Speculation: MS' effort will look a lot like Valve's, with Xbox games coming day-and-date to OEM-built handhelds, as well as a first party reference implementation that's intended as a benchmark for devs. I imagine that most OEMs are using the cheaper steamOS pricing as a hedge against future gouging from MS; if there's an "Xbox certification process" that proves to be too cumbersome, a vendor that's already shipping cheap(er) devices en masse with SteamOS has the option of simply dropping windows support altogether.
It's a crapshoot to make Ubisoft games to work on Windows desktop PC already.
On one hand you have the shitty and/or DRM-plagued stores, on another you have DRM-free ones like GoG, Humble Bundle, Itch.io... which in my experience Just Work (tm) in a few clicks thanks to the likes of Lutris launcher/Proton/Wine.
(And in the middle, Steam(OS) to rule them all.)
P.S.: I've heard that Battle.net games also work easily and well, but I don't know how long this will last with Microsoft buying Activision-Blizzard and Valve ramping up their fight against Windows...
I've thought about this too, and given that Valve is brilliant when it comes to pricing, I suspect that they have data showing that gamers are well aware of the "Windows Tax" and expect to not have to pay it for a Linux-based device. I want to be conservative advancing that theory as confirmation bias is a real risk (since that describes me perfectly) but I do see little bits of reinforcing evidence around.
The way Microsoft killed EEE PC movement was by removing the Windows Tax, the moment OEMs no longer needed to pay for Windows on EEE PC style devices, they were mostly gone in one year, and the new tablets segment killed the remaining survivors.
Lets be real, with SteamOS having a Windows ecosytem, it is about saving Windows licenses mostly, and not really fostering a GNU/Linux gaming ecosystem.
Like EEE PCs, this will only work while Microsoft decides to tolerate Proton and the way Valve runs Windows applications on a Linux distribution.
The day they decide it has been long enough, like they did with XP licence that ended up wiping EEE PC, Valve would have wished to have fostered a native GNU/Linux ecosystem instead.
Presumably the EU/etc. would go after them if they tried something like this? Besides desktop isn’t really as important to MS these days as it used to be.
> fostered a native GNU/Linux
Wouldn’t that require a stable ABI and such? Making Linux binary/proprietary software friendly seems like a much harder task than [potentially] fighting MS over the right to reimplement their APIs.
Why build something from scratch when Wine/Proton is already there and is pretty much the same thing?
Of course that would be the trivial (if still very complicated and expensive on its own) part, incentivizing developers to invest the amount of resources needed to port their games to a new platform (which would have single digit % market share at best) would be a lot harder.
Sure there might be some risks. But I don’t really see why MS would be bothered to actually try and kill Wine. The risk of antitrust etc. would be very high and MS wouldn’t gain too much from this anyway.
Besides.. the Supreme Court already ruled in favor of Google over the Java/Oracle thing not sure how would this be much different.
And? I fail to see how is that so valuable on its own.
I mean don’t get me wrong I do see some merits but realistically if Valve went that way they would struggle getting of the ground and it would just be a waste of time/money.
Possibly one pathway that could actually be feasible would be to leverage Wine to gain significant marketshare and then incrementally transition to a more “native” approach.
> the hard way.
How? I mean what could MS actually do about this? Besides trying to compete by offering alternative options.
Just the existence of steam deck is the transition to a native approach, they put pressure on devs and game engines to support, but proton is a weird middle layer, it would be easier to support Linux and vulkan natively and that's growing
There is zero pressure on the devs, as it is currently, they target Windows and Valve does the work if they care to make it work, just like IBM tried with OS/2 and its "Runs Windows better than Windows" campaign.
Also good luck supporting DirectX 12 Ultimate features not available on Vulkan, or what Microsoft and NVidia just announced at CES, AI Shaders.
If Nvidia and game developers care about supporting Linux they’ll try to figure something out.
If they don’t they won’t. But surely the cost required to do so is lower when targeting Wine/Proton than native Linux?
If they are unwilling to do that when the cost is relatively low (or at least e.g. making these new features toggle-able/optional) they certainly wouldn’t even provide a native Linux if Proton wasn’t a thing.
Exactly. If Valve went the native route why would that have changed?
> Which as IBM discovered
You keep repeating that in every comment but I don’t quite understand how is this some conclusive argument. Especially when you don’t elaborate on what specifically do you think could happen.
> If Valve went the native route why would that have changed?
We would have an ecosystem of native GNU/Linux games, and Microsoft could do whatever they felt like withouth any side effects.
> You keep repeating that in every comment but I don’t quite understand how is this some conclusive argument. Especially when you don’t elaborate on what specifically do you think could happen.
It will happen the same it did to DR-DOS, OS/2 and EEE PCs, and did to anyone else that built kigdoms in other people castles, the rest you can discover yourself.
Another example, even though Android is heavily dependent on Java ecosystem, and Google has won the lawsuit, they have started rewriting even the core components in Kotlin, because alongside JetBrains, they control the narrative of what goes on their kingdom.
Likewise Apple's approach with Game Porting Toolkit, is to help rewrite DirectX into Metal, not to run them unmodified, again control the narrative.
> We would have an ecosystem of native GNU/Linux games
Or we wouldn’t, perhaps a small fraction would be available on Linux severely limiting the appeal of devices running SteamOS etc. which would just give the entire handheld market to MS without them even having to do anything.
Of course it possibly wouldn’t exist in the first place because Valve would have had much less incentives to develop the Deck if the market for it would have been much smaller.
> Likewise Apple's approach
And nobody cares about it or gaming on Mac. IMHO despite all of Apple’s success gaming on Mac is in a worse state than it was back in the early 2000s.
My entire point is that however flawed Wine/Proton approach it is better than wasting money on a platform nobody cares about or develops for. I assume Valve could start paying developers to port their games to Linux or something but I can’t really think of much else..
> they have started rewriting even the core components in Kotlin
Exactly. Valve can start doing the same when they gain enough market share to justify this. If Linux gains at least 10-15% of the PC gaming market game developers won’t be able to afford to ignore it anymore. Anyway that’s a relatively nice problem to have compared to the alternative.
I found it quickly after coming to the realization that a "mailtrap" for local development was very likely a solved problem.
It took 15 minutes and 10 lines of code to add it to the current project's docker-compose-file and so far it's working great. I love how easy docker/podman makes it to set up such services.
I completely agree and have had the same experience as you with docker-compose working better than the alternatives.
Past versions of podman were flaky, but since version 4, which is now a couple of years old, I haven't had any issues whatsoever. I'd recommend anyone using containers on linux to try it out instead of installing docker out of habit.
Yes indeed. I have that on other systems as well. But I try to keep both around to notice these kind of differences. (I’m working on tooling that relies on docker compose files so I like to see how it behaves in different setups.)
I use podman with docker-compose files for my day-to-day work; spinning up databases and other service dependencies for locally running or containerized webapps.
podman-compose never worked very well for me, so I'm running with the podman.socket systemd service and the standalone version of docker-compose. That is however working flawlessly.
What I really like about podman (and which to be fair docker might have since catched up on) is that rootless containers work so well. Gone are the days where bind-mounting a project folder into a container would mess with your file permissions.
In my experience podman also feels easier and less invasive to install, although I can't say if the latter is really the case.
My only problems with Podman is the lack of up to date repos across systems, the fact that the latest raw binaries are managed by a maintainer out of the goodness of their heart, and that the VS Code extension ecosystem for managing pods is not integratable with the existing Docker stuff (and the replacement extensions are woefully underdeveloped).
Otherwise it honestly is great and preferable over Docker.
I won't deny that the outdated repos was a pain in the past, but ever since ubuntu got to version 4 it's been working flawlessly for me.
I think version 4 was where podman became a reliable tool, whereas I found it to be flaky and unreliable in previous versions.
I don't use vs code extensions for managing my containers, so I can't say much about those, but I wonder if many of them won't work fine with an alias for docker and maybe the podman-socket running.
Do you realize that while you are using words as "respectfully" and "admire", you are being quite condescending towards those who do not have it as easy as you did?
They lack the ability to metabolize their toddlers demands and the discipline to get into flow. Or maybe it's because their focus is especially fragile.
What would it take for you to not be able to work full time? Personally it was enough that I didn't get to sleep more than 4-5 hours every night, and I don't think a more "robust" focus would have helped in any way.
If you can't work from home full time while caring for a child, don't, that's fine. The premise of the comments I'm responding to are that (a) it's impossible (several comments state that outright) or (b) that it's harmful to the children involved. Those statements are false.
I am sure there are software development jobs I am not well suited for, and should not take. In fact, I can think of a bunch of them. That doesn't make them impossible jobs; just not good fits for me. Lots of parents handle this problem just fine. If you can't, make other plans, that's fine too.
I do not doubt that this was possible for you, or that your kids turned out fine.
But I think you are making a very bold assumption based on a sample of two, and also being quite dismissive of the challenges that other parents are facing.
Personally I believe I would have broken down mentally had I not spent the vast majority of the downtime on getting sleep myself.
We recently started testing AdonisJS as a TS alternative to rails.
I'd recommend anyone who'd be interested in "Rails, but in TS" to give it a go.
It feels much more similar to rails (or Laravel) than the most popular TS stacks, and also has "batteries included" instead of leaving you to decide on every part of your stack (or trust a template from a third party).
I've been curious about AdonisJS, and I think I'll give it a try thanks to your comment.
Recently, I've been fascinated by the "batteries included" back end frameworks of Rails, Laravel, and Django, but I've written TypeScript for pretty much my entire career, and it's just easier to keep it that way than to switch now.
What are your thoughts so far in your testing? Could you compare it to any of those other frameworks I mentioned?
I cannot compare it to Django and Laravel since I haven't used them for a few years.
Rails is definitely more mature. It has a larger ecosystem and much more documentation. If you don't see any benefit from having types and sharing the programming language between the backend and frontend, then you are probably better off with rails.
That being said AdonisJS has been working out surprisingly well thus far. I've found the documentation to cover pretty much anything we'd usually want an app to do, which is refreshing in the world of TS.
You are also not locked in any way. While you can use the in-house ORM, validation library etc., it's easy to use something else if you prefer that.
There are a few more rough edges than what you'd be used to from Rails, but nothing big so far and the source code is easy enough to get around, which I wouldn't say is always the case with rails. There's also a discord channel that seems fairly active and helpful.
We also tried out nest.js, but I wasn't really happy about it.
To me it seemed more interested in being a smart dependency injection engine, and enforcing an - IMO not very JavaScripty - module pattern rather than being a useful tool.
You can do everything you want, but you will have to make all the decisions yourself, and you will have to make everything play by nestjs's rules. And from my experience the seemingly comprehensive docs often don't get you very far.
Follow the guide for Prisma and you won't be able to extend the Prisma client unless you refactor the service you've just made.
Follow the guide for file upload and you will have a file in your controller, but very little information about how to store that file.
That being said, I can see that lots of people really like nestjs, so maybe I'm just not getting it.
Teams is legitimately such awful software that it alone serves as evidence that Microsoft needs to be broken up. At any given point of using the software, there are between 5 and 7 "..." buttons on the UI hiding menu options. There is no "test audio" button. You have to call their loopback server. Nobody can compete with Microsoft's office suite all-in-one + the kitchen sink bundle, though, so it persists.
> Teams is legitimately such awful software that it alone serves as evidence that Microsoft needs to be broken up
That has to be the weirdest argument I've heard for why a company should be broken up.
Microsoft obviously doesn't understand UX nor UI design, hence the company needs to be broken up into parts? I agree with the former, but I don't understand how the conclusion would fix that.
The argument is that Teams is so legitimately terrible that it's dominance is proof that market forces aren't working and that Microsoft is using its dominance in one area to enter other areas.
Why is that weird? A product that would not have stood on its own, would have 100% failed, has only finally been made DECENT almost 8 years later due to the fact its bolted on to O365.
> Nobody can compete with Microsoft's office suite all-in-one + the kitchen sink bundle, though, so it persists.
Well, there's Google Workspace (and a few smaller, less comprehensive suites) as a very competitive alternative with everything + kitchen sink, but
- nobody ever got fired buying ~IBM~ Microsoft
- MS is already in all enterprises, so it's quite easy for their sales people to position their products
- the people who make the decision to buy M365 aren't the power users who suffer from the poor design in the products
- there's a huge vendor lock-in due to lots of legacy .docx, .pptx and .xlsx files that won't be parsed correctly by 3rd party software due to the formats' intentional complexity
Interesting factoid about Google Workspace: if you send me a google docs link, I, with any Google account (even Federated identity account) can use and modify that document as a regular user.
That's not true for Microsoft, and I was forced to buy some Office software for our business because an external company used Microsoft products. Quite infectious.
Yet they could use our tools free of charge, they just refused.
It's deeply frustrating to see people who resent giants because they're strong. MS did what anyone else would do in their position, inferior or not.
This was not a situation where everyone chose to wear potato sacks instead of Nike. Clothing is a stylistic and individualistic choice, whereas your business's OS, platform, and software have concerns of support, compatibility, interoperation, long-term stability, etc.
Compatibility and interop are things that large software vendors simply can't uphold very well at all. Even if they were magnanimous, generous, 100% committed to interop with everything else, they would incur massive tech debt and support burdens to arrange for those things. So of course they build in unique features. Of course they make breaking changes. Of course they're ensuring you stay as a customer.
More than that, if a business looks around and 9/10ths of their partners use FOOBAR WIDGETS, and 99% of their workforce is trained exclusively in FOOBAR WIDGETS, what widgets are they gonna choose? The network effect has been strong for choice of platform/software, and once a plurality was achieved, MS essentially had a commitment and responsibility to the business world to be their huckleberry. At that point, force isn't necessary when customers are clamoring to be let in to the club. Force isn't necessary when your labor pool is full of MCSEs competing with neckbeards who spit on Bill Gates.
People don't hate MS because they're big. They hate them because they make shit software and are force people to use it with anti-competitive practices. If each of Microsoft's products had to compete individually, most of them would go the way of Windows Phone, Zune, Internet Explorer, and Xbox. Their few good products would benefit from this too by increasing interoperability with other software. They need to be broken up.
> most of them would go the way of Windows Phone, Zune, Internet Explorer, and Xbox
As in, the first Xbox version or the whole line-up? Sony reports twice as much sales of their current gaming console in comparison to Xbox, but Xbox isn't dead like the rest of stuff you mentioned. (not a fanboy, my last Xbox was the 360 and then I had PS4 and now PS5)
The brand isn't doing so hot and is on the decline while their competing platforms (Steam, Playstation, Nintendo) are posting record numbers. They've started releasing their in-house developed games on their competitor's consoles because sales on their own platform are so abysmal. Analysts are saying it's likely that Xbox is going to exit the hardware business unless they can turn things around in the next console generation.
I'm sorry that you're blanket speaking for everyone else, because I certainly did.
I hated MS because they were big, they were powerful, they were my father's favorite. I reviled Bill Gates because of his education and privilege and vision, and I renamed "win.com" to "lose.com" and plastered "Satan Inside" stickers on my AMD-processor machines that eventually ran Minix and OpenBSD.
In college I became an arrogant Unix bigot, and I cultivated a distinct superiority complex, as if I could singlehandedly usher in The Year of Linux on the Desktop.
Eventually I came to accept that it was just software; it was software that everyone else used just fine; and that a uniform installation of adequate software is better for the collective good than some idealistic, unachievable utopia of Richard Stallman's wet dreams.
Okay? Being a rabid schizo who grinds their teeth at non-foss software is obviously not healthy, but shit software is shit software regardless, and the government should intervene when market forces are being abused.
On the surface level it looks it bit like the half-assed Linux efforts for the Steam Machines and EEE PCs.
This time the software - if it works as well as on the Steam Deck - is arguably more user friendly than Windows.
So it would have been nice for linux to also be a "premium" option.
On the other hand the Go S with Steam OS has a real chance to compare well against its more expensive Windows version.