Hacker News new | past | comments | ask | show | jobs | submit login

That's like asking way don't mac developers work in a linux vm instead of wanting a native build.

Because working in a VM is inconvenient and has poor integration.




WSL2 is both convenient and is extremely well integrated. Microsoft did a really good job with it and VSCode.

Also, in most cases for scientific computing, Mac users are using stuff like Remote SSH in VSCode to work directly on hardware that is running the code, which is pretty much always Linux.

Generally, its kinda said that manpower is being wasted on getting things running in Windows or Mac by the software developers. It should be the other way around, have Microsoft or Apple dedicate manpower to port things over and make both systems conform to the Linux standard.


Let's try the same argument, the other way around: it's sad that Linux developers waste time developing the Linux desktop given that almost all usage of Linux is on the server. Linux developers should dedicate manpower to porting Linux desktop software to Windows/Mac which the vast majority of desktop users use. Now you see the problem with your argument?


For one, Linux is OSS, so contributions made there are available for anyone, forever. I don’t think voluntary developers are very keen on dedicating contributions to a business entity who by the next major release would have stolen your code and hidden it behind ads or some not so smart assistant that requires online connectivity all the time.

Linux is also the common ground. If you have to choose ONE system, you would choose Linux. Otherwise you are going to need BOTH Mac and Windows, possibly even more. Just getting the hardware to test that would be a major setback for a small oss contributor.

I don’t think you can consider scipy desktop software anyway. The IDE can by all means be, but just let it communicate to some deamon running in WSL, docker or remotely over a standard interface.


> it's sad that Linux developers waste time developing the Linux desktop

Hey, that's unpopular statement on wanna-be hackers resources like HN or Reddit - people feel being creative using Linux on Desktop and feeling control over machine, famous System Administrator Of LocalHost experts ;)


> Windows/Mac which the vast majority of desktop users use.

Use for...what? Windows is primarily used for people who play games. Mac is used by people who want tech jewelry. Neither of which is related to development.

And it would make more sense to develop on a platform that runs the same kernel as the servers. This is the reason why the whole WSL2 exists with VSCode integration. Microsoft quickly realized that if they want to compete in the cloud with Azure, they have to be Linux first.


Enterprise software development says hello to your world.


And that is why so many developers buy Apple devices and code on macOS, and walk around with them on FOSDEM, because of the kernel.


... no, because its tech jewelry lol. That is literally the history of Apple.

Or are we still going to pretend that a computer that you don't own, because Apple tells you what software you can and can't install on it, is somehow better for development?


It is a UNIX desktop that actually works, and doesn't need endless hours researching for hardware compatibility or custom kernel parameters.

Android/Linux, ChromeOS/Linux, WebOS/Linux also work great for the same reasons.

Other than that, better leave it on servers and embedded devices being a UNIX headless clone, with cloud and hardware vendors taking the trouble to keep it running.


>doesn't need endless hours researching for hardware compatibility or custom kernel parameters.

Yeah so this is indicative of the fact that you don't really have ANY experience with modern Linux. You can take a well supported laptop and install Linux Mint on it and everything will just work, no tweaking required. Try it sometime before making 10 year old arguments that Mac users were making back in the day and apparently still do now.

Furthermore, Id go even further and argue that as a developer, learning how to configure basic documented things should be something that you know and is fairly straightforward for you to to do, just like installing tooling you need for your development.


My dear, I do have plenty experience with "modern" Linux, plenty of it,

https://www.idgshop.de/linuxwelt

As usual we get the answer,

"Have you ever tried distribution XYZ?"

The magical one that will sort out all problems, and then doesn't.


Im sorry but no. I have set up probably over 100 linux laptops at this point. It used to require more tweaks back in the early 2010s. Now you can get any Dell or Thinkpad, install Mint without issues.

You must be doing something wrong if you are having to tweak kernel parameters.


Would like to know which laptop that might be...


Pretty much most and Thinkpad or Dell works out of the box. You may have to change a setting here or there for some advanced things like adaptive charging, but most of the time the core OS works very well.

There is also Framework laptops, and Librem laptops that are linux first.

My current DD is an Ideapad with Manjaro, which even being somewhat more bleeding edge than Debian based ones, has not only been flawless, but things like Nvidia Optimus work straight out of the box, with external displays.


> Pretty much most and Thinkpad or Dell works out of the box.

…except for AMD ones with AMD GPU :( https://www.wezm.net/v2/posts/2020/linux-amdgpu-pixel-format...

or Intel ones with a particular wifi card https://bugzilla.kernel.org/show_bug.cgi?id=203709

I however agree with you that at least for me, the Linux desktop on almost all laptops and desktops "just works". Especially when comparing with Macbooks - you have way less hardware choice there.


Apple's locking down of macOS has been greatly exaggerated. You can install anything you want on a Mac, Apple doesn't stop you. The same can't be said for iOS or iPadOS, however.


>You can install anything you want on a Mac

Can I install Ubuntu?


if you're on an Intel Mac, yes. if you're on apple Silicon, yes, but it's not user friendly (but hey, that's Linux for you)


Intel Macs aren't relevant anymore. As for apple silicon, running a ubuntu VM doesn't count. You also need to use Parallels, which is not free. The Asahi Linux method is still very buggy because its essentially a reverse engineer of Apple. And its not guaranteed to ever not be buggy, because Apple. And Apple will 100% kill it if it ever gets to popular because it runs well, because they will lose revenue streams they get with MacOS.

So the definitive answer is no, Macs are still pretty much locked down.

I get that people like the battery life and the hardware of Macs, which is fine for personal use, but objectively for a laptop that is going to be used for development, you get much more utility out of buying a "non mac" laptop of your choice in the form factor, and installing Linux on it.


In what way, today, has Apple prevented you from running whatever you want on a MacBook? Not some hypothetical "And Apple will 100% kill it if it ever gets to[sic] popular" future action by Apple, but an actual thing they've done to stop AsahiLinux, or someone else, from making the progress they've been making, on trying to run on bare metal?

In macOS, I am not prevented from running whatever I want. There are some extra buttons to click to allow certain kinds of software to run, but ultimately, Apple doesn't have a say on what I can and cannot run on my Mac. Macs aren't "still pretty much locked down" because the open source community hasn't been able to make a kernel up to your standards. That's just not a commonly accepted definition of "locked down".


> The Asahi Linux method is still very buggy

It's been getting way better lately. I don't daily drive it mainly because I've yet to move my stuff from the macOS partition.


If it ever get to the state that modern linux is, then I will change my mind. Its very much like the linux of 2010s, where you had to configure a whole bunch of things to get linux to work despite people swearing that it works.


If you want to install Ubuntu, buy from an OEM that is supported by Ubuntu.

https://ubuntu.com/certified


> Also, in most cases for scientific computing, Mac users are using stuff like Remote SSH in VSCode to work directly on hardware that is running the code, which is pretty much always Linux.

This might be true for extremely demanding tasks that need to run on a cluster or cloud but a surprisingly large amount of scientific computing is perfectly manageable (indeed much easier to manage) on a laptop, if there are compatible toolchains for the OS.

That said, I would not be dissatisfied with a world in which Linux was the OS of choice for nearly everyone. Fully agree it would be great if research software developers could focus on the domain, distributions take a wildly disproportionate amount of effort


What's so well integrated with atrocious IO speeds between boundaries?


not a problem if you don't cross them - my wsl2 disk image took more space than the windows install. I basically used windows as a web/email/chat client and a terminal to the real system, which was wsl2.


Bad integration is a problem with integration even if you personally do no integration


To each their own. I consider it great at what it does. It has limitations but what doesn’t? It’s a tool, use it, or don’t - I use it, it works for me.


Good for you, but also irrelevant to the argument


Absolutely not - the integration is perfectly fine, for me.


it's not the integration that is perfectly fine for you, but the lack thereof since you simply don't use it


I use the \\wsl$\ to get an occasional file out of wsl2 super easily, vscode remote wsl, the shared localhost interface and a wsl2 gui app every once in a blue moon. Don't think it's nothing.

What I don't use: files on the windows fs from wsl2 for continuously or vice versa.


> What I don't use: files on the windows fs from wsl2 for continuously or vice versa.

Exactly, your "occasionally and once in a blue moon" is close to nothing (but I agree, it's not nothing)


Wasn't that mostly on wsl1?


vice versa, wsl2 is the true VM that truly suffers

https://vxlabs.com/2019/12/06/wsl2-io-measurements/


I think you mistook this for reddit.


WSL2 is not really a VM though, in the traditional sense, as it has full hardware access, including the GPU. Technically, when you enable WSL2, the Windows build itself is running through the Hyper-V hypervisor, as is the Linux distribution. In fact, a few years ago, I used Proxmox to basically do the same thing, in order to test cross-desktop apps I was developing for Windows, Linux, and macOS (as a Hackintosh).


>WSL2 is not really a VM though, in the traditional sense, as it has full hardware access

It is exactly a VM, and the WSL2 guest does not have full hardware access. The hypervisor can paravirtualize compatible GPUs, but for other hardware (such as USB) this is not possible. Hardware passthrough is also not possible in WSL2.


Sure, however in the traditional sense of most people using VMs, there is no virtualization of GPUs, ie vGPU, and thus no hardware acceleration, if you use something like VMWare or VirtualBox inside Windows. In a hypervisor setup like Proxmox, there is, but the issue is that you need one hardware device per VM, which can get annoying. So paravirtualization via WSL is actually, depending on your needs, superior to either of the previous two cases.


As someone stuck on a Windows corporate laptop, I can say that WSL2 is definitely not on the approved software list. Unless it installed by default and comes with a big solid green check mark for compliance/virus scanner/whatever security doo-dad of the day, it is a non-starter for many of us.

Sure, with enough begging and pleading, anything is possible, but that usually requires Conversations.


Sure, corporate laptops are always a different story. Ideally it's nice to have cross compilation but that might not always be possible. I use a lot of Rust and I really like their OS compatibility out of the box.


> Technically, when you enable WSL2, the Windows build itself is running through the Hyper-V hypervisor

My (very limited) understanding of hypervisor is it by definition is used to run VMs.

So I don't get why that makes WSL2 not be counted as a VM, even "technically".

I assume you mean once you enabled hypervisor, technically both Windows itself and WSL2 are VMs in parallel?


> I assume you mean once you enabled hypervisor, technically both Windows itself and WSL2 are VMs in parallel?

Correct, I am referring to the traditional usage of VMs via VMWare or VirtualBox which do not have GPU acceleration, while WSL2 does.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: