Of course, there are many programmers who use Windows. Large companies often have a rule that only Windows can be used in principle due to security management, so I think that most of the development is done on Windows.
Recently, more and more people are using VSCode as their development environment. In that case, you can use it on Windows, Linux, or Mac, so the OS doesn't matter much.
Web applications are developed in languages such as PHP and Python that support multiple platforms, so it doesn't matter what OS you use.
Same with Unity.
Now let's think about why people develop using Linux (including virtual environments).
A common reason is that I'm used to Emacs or the vi editor and want to use it for development.
Also, when developing the Linux kernel or Linux device drivers, it is necessary to check the operation on Linux.
Security engineers tend to use Linux because analysis tools are often developed for Linux.
Is that the place?
However, recently there are Docker and virtual environments, and there are many people who develop on the cloud, so I think it's okay to think that choosing an OS for a development environment is personal preference and doesn't have much meaning.
If GNU-related software does not work properly, it will wither away.
The code (Python, R) that works on Linux and Mac also crashes or behaves strangely when the amount of data to be processed increases on Windows and WSL. I didn't feel the need to bother setting up the environment, so I didn't investigate the cause. That's right.
Rather, I think Windows is "too much".
too many things
- GUI (Graphical User Interface)
- price
is.
First of all, regarding the GUI, Windows cannot turn off the GUI. Microsoft will claim that it can be done, but the Windows CE series, which allows the user to create a GUI, has practically disappeared.
In recent years, there seems to be a Windows that does not have a GUI like Windows Nano Server.
But this is definitely not common.
I just found out when I googled it. Unfortunately, it seems that the application needs to be made separately for Windows Nano Server. That doesn't make sense. I can't imagine using it for that.
Additionally, it doesn't seem like adding anything to this Nano Server will make it Windows. In short , Windows Nano Server is not Windows in that sense .
If you use Windows and another OS, it's just a matter of using Linux.
And as for the price, no matter how you install Windows, it costs a lot.
Of course, Windows will also be discounted, but there will be management costs for that in the first place. You need to manage how many you have installed.
Datacenter Edition is 6000 dollars (about 800,000) for 16 units. In a big place, it will cost about 60 million because it will be lightly operated at the level of 1000 units.
60 million yen itself would be nice, but the IT system is first created and provided to the other party, so initially it is zero yen. Suddenly 60 million will hesitate.
With Linux, you don't need either. And you can add as many GUIs and pricing (support) as you need.
Linux is Linux even if X-Window, which is Linux's GUI, is added later. There is no need to modify existing apps, and it doesn't matter in the first place.
So is support. Most of the time, you will be contracting on a per-distribution basis.
From a developer's point of view, WSL2 has come out in recent years and has improved a lot. Currently, systemd is not supported and has a hard time, but it seems to be resolved.
So, I didn't use Windows in production, and I didn't have WSL2 in the development environment, so I didn't use it. The development environment side may change in the future, but I think it doesn't make much sense if you don't use it for the production environment.
Yes, Windows doesn't have everything Linux can offer developers. I'm a very proficient web developer, building complex web and mobile apps and backend APIs. Most of the tools and languages you use to do this are only available on Linux, and if you really need it, Homebrew on Mac will do. I tried using purely Windows and it was a disaster. Also, web servers often run on Linux, so if you use Linux, the difference between the development site and the production site will be much smaller. Also, Ruby is about 10 times slower on Windows, for some strange reason.
I think it's okay to use Windows only when developing Windows applications for desktop or mobile, or .Net for the web. Alternatively, you can run a bunch of Linux virtual machines, but does that mean you're really developing on Windows?
EDIT: Quite a few people in the comments mention WSL and WSL2 as relevant to this answer. I think WSL is pretty cool, but it doesn't fundamentally change the answer. It's still Linux providing it and you're just using it via Windows. If you need Windows for other reasons, it's a reasonable alternative.
PS: If you don't like my answer that much , read Fred Michell's answer , he puts a lot more effort into what I'm trying to say here and I wholeheartedly agree. I'm here.
0 件のコメント:
コメントを投稿