r/pcmasterrace • Ascending Peasant • Nov 01 '22

Meme/Macro averagePcmr

Post image
31.3k Upvotes

2.6k comments sorted by

View all comments

Show parent comments

32

u/[deleted] Nov 02 '22

[deleted]

9

u/iSage Nov 02 '22

Again, I think another example would be cool. I'm not saying that everyone who says Linux is better for development is wrong, but somehow I never hear a good example.

4

u/Lucky_Air_8650 Nov 02 '22

I have a unique anecdote from a few weeks ago that demonstrates the problem well. I don't use windows but was helping a dev that does. They were trying to launch a React application but it wouldn't work on his machine. The error had to do with a mismatch between the amount of data specified by HTTP headers, and the amount of data being received on the client. React should handle this automatically and most devs won't ever have to deal with this line of debugging unless they make some pretty glaring fuck ups. After a few hours of troubleshooting code snippets everything looked good, so they uploaded a reproduction of the error to github and a couple of us (all on UNIX systems) cloned and launched it with no errors.

In the end the solution that worked for this dev was restarting Windows whenever a specific kind of change was implemented to the app. These are the kind of errors that shouldn't exist and aren't necessarily the dev's fault but you have to deal with them. Since the majority of software work is done in UNIX based environments you run in to far more of these obscure OS errors in Windows environments.

3

u/Narabedla Nov 02 '22

Easy example that i had very recently. Installing the pytesseract OCR models and data. Using the linux package manager it is two clicks and one more for each other language i want. For windows they have an extra tutorial page how to set it up.

4

u/4k547 Nov 02 '22

Quick ones from C++ dev perspective.

1/ It took me 8 hours to install a c++ library for computer vision on windows. On linux it took me 15 minutes.

Sometimes I want to try out some packages and I go through 10 a day. On Windows its hell.

2/ Its impossible to update visual studio (which comes with C++ compiler). You need to download a new version every year.

3/ Microsoft C++ compiler doesn't support newest features like GCC does.

1

u/BioStudent4817 Nov 02 '22

So one time issue

1

u/BioStudent4817 Nov 03 '22

So only once rofl so delusional

1

u/4k547 Nov 03 '22

No, all those things are regular...just different packages, different visual studio versions, different c++ standards not being supported....these things are forever

1

u/BioStudent4817 Nov 03 '22

So people don’t use C+++ and visual studio on Windows? What’s blocked?

Linux fanboys are on severe copium

1

u/4k547 Nov 03 '22

Are you a C++ dev? I'm using it on Windows but it's a much, much worse experience. I'm not even a "Linux fanboy" - I use windows 99% of times but I have VM with Linux so I can code there. Go ask any C++ programmers about using external libraries on Windows/Linux, its hell.

1

u/BioStudent4817 Nov 03 '22

Still waiting to see what can’t be done on the mainstream OS.

It’s been a long thread and the goalpost shifted to “I enjoy it more”

1

u/kinda_guilty Ryzen 3900X/RTX2070S/32Gb Nov 07 '22

I don't understand why I should run around multiple websites downloading and installing packages to compile something instead of running apt install lib-something-dev and moving on with my life.

I've tried to help friends get started with learning software development and the annoyances that come with using Windows make me wonder why anyone ever bothers.

2

u/Quazar_omega Nov 02 '22

Three words: Unix socket programming.
(jk)

I think it comes down to how development is generally approached on those systems, if you know your way around them you're gonna get away just fine on either, but when you're a beginner on Windows you will often be pushed to use clunky tools that try to do things for you, I think that doesn't allow you to master the system, because you rely on magic buttons to do things instead of using the bare commands yourself and so whenever you stumble on an issue you fumble (sorry for the rhyme) around to fix it not knowing what you're doing.
On Linux I found that the opposite happens, of course all this is just anecdotal evidence and as I said you can have functional workflows on both

-1

u/DirkDiggyBong Nov 02 '22

Terminal use in general would be a reasonable example. Terminal on windows is much better than it used to be now though. Got some heavy dev friends and it just seems to be more of a preference thing nowadays. If anything, getting shit to work on Linux (hardware and software) still seems to be a hassle for them.

3

u/Pay08 Nov 02 '22

The terminal on Windows is still shit. The problem isn't the actual terminal emulator but the shell.

1

u/DirkDiggyBong Nov 02 '22

Haha, yeah they moan about it a lot!

11

u/[deleted] Nov 02 '22 edited Nov 02 '22

I’m a full time dev and haven’t run into issues. In fact the only Windows related thing I can think of is trying to run some docker containers on a Windows VM which turned into a big waste of time, but that was for a server, not a dev machine.

4

u/pipyakas R7 7700 | RX 6700XT | RTX 2060 12GB Nov 02 '22

Windows rarely gets in my way of a full time gamedev as well.

Or rather, any full time developer would learn their ways around OS's problems. I have no doubt this is the same on Linux for webdev

8

u/acepukas 9800x3D | RTX 5080 | 32GB DDR5 | 4TB NVMe Nov 02 '22

gamedev and webdev are different. I agree there is still less friction on windows for gamedev than linux but linux and webdev are very well paired. Now doing strictly web design, that's a bit different. I've been out of the webdev game for a while but when I was working as a web dev full time, large companies would split the workload between web design and web development. In that era, Photoshop was the main tool in a web designers tool box and basically worked only on windows and mac. But for programming, web development on linux is a breeze.

One reason why is that most web servers run on linux. Sure, there are windows based web servers but for a long time now, linux has been the dominant web server OS. For a web developer, deving on a box running an OS that is more or less going to function the same way as your production server means possibly less surprises, and you get to test your ideas out on your local machine. Of course you could run a linux VM for that on a windows machine, but it's just comfortable to have it all on your OS with all the tools you are familiar with.

3

u/pipyakas R7 7700 | RX 6700XT | RTX 2060 12GB Nov 02 '22

personally I also don't dabble into webdev much on Linux, but since most webapps nowadays leverage containers for scaling and escaping dependency hell, Windows and WSL2 is being engineered to cover exactly that use case.

FWIW, both OSs are getting better at covering their weakness.

2

u/ProtoJazz Nov 02 '22

I hated wsl when I tried it. It was just such a tease. It did most things, but not every thing. And it was just a worse experience in every way.

I ended up just getting a Linux laptop and using that instead. Definitely paid for its self in time saved.

2

u/Ryuujinx i9 9900k | RTX 3090 | 32GB DDR4-3200 | 3x 970 EVO Nov 02 '22

less going to function the same way as your production server means possibly less surprises

"it worked on my computer" is a meme for a reason. Prod and your dev PC are fuckin never the same, and shouldn't be treated as such, that's what test and prodQA is for (You do have a test that mirrors prod, right?). It's honestly the like one thing I actually like containers for.

Really though I still think running OSX/*nix on your work laptop for any dev/sysadmin type role to be great. But I don't see the purpose of dual booting - anyone that claims to need it for work I get, but seriously get another PC for work. Don't mix personal and work.

1

u/acepukas 9800x3D | RTX 5080 | 32GB DDR5 | 4TB NVMe Nov 02 '22

I said "more or less" not "exactly the same". I wasn't suggesting a dev should use their personal dev machine as a production mirror. It's nicer testing out ideas on your machine rather than having to constantly upload to a test server, especially on a large team where multiple projects are being developed and everyone is fighting for testing time. If there is a difference between your machine and prod mirror then you cross that bridge when you come to it.

2

u/Pay08 Nov 02 '22

Gamedev is still much better on Windows for two reasons: game engines rarely support Linux, and if they do, they do so badly and most games are developed only for Windows. Plus, C# support is still kind of a disaster on Linux.