Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding
You last visited: Today at 04:06

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Question on Preferred OS for Dev Work

Discussion on Question on Preferred OS for Dev Work within the General Coding forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Nov 2016
Posts: 24
Received Thanks: 1
Question on Preferred OS for Dev Work

Hello everyone,

I'm pretty inexperienced with programming, so why is it that so many people prefer using Linux or mac OS over Windows for development work?
HoneySmurfs is offline  
Old 11/14/2016, 18:12   #2
 
elite*gold: 46
Join Date: Oct 2010
Posts: 782
Received Thanks: 525
I can't talk for everyone but my main reasons for using linux are that there is a package manager and that it generally has newer stuff first. Take for example the implementation of the upcoming c++17 standard. On Linux I have clang and gcc which both support most of the standard since atleast a year (probably way longer than that). On Windows I have VS which doesn't support that and getting gcc/clang to work is pretty time consuming (compared to linux). Then there's also things such as a way superior shell and better security (if u don't **** up).
th0rex is offline  
Old 11/14/2016, 21:11   #3
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Quote:
Originally Posted by C0untLizzi View Post
On Windows I have VS which doesn't support that and getting gcc/clang to work is pretty time consuming (compared to linux). Then there's also things such as a way superior shell and better security (if u don't **** up).
You know that MinGW and MSys exist for Windows right? MinGW provides the newest gcc and MSys the Linux Bash.
alpines is offline  
Old 11/14/2016, 21:51   #4
 
elite*gold: 0
Join Date: Feb 2009
Posts: 1,137
Received Thanks: 572
It depends first of all on the kind of development you are doing. If you develop software for Windows (as most people on this board who develop bots for games) you should use windows (for obvious reasons). If you develop software that should run on a linux server, you should better use a linux or a Unix system (like MacOS or BSD). If the target system doesn't matter (e.g. cross development with frameworks like Java) you can decide for yourself. If you are very experienced with windows, keep developing on Windows.

I personaly prefer *nix systems (Linux and Unix) on a various amount of resons:
1. Better file system. Whoever thought having characters as drive names and backslashes instead of slashes was arguably mental.
2. Package manager. You can easy install and update Software with only one tool, especially good for libraries. There is nothing like the windows "DLL-Hell"
3. Great shell and binutils. I know you can install them also on Windows, but he installation of MinGW and MSys is just a pain in the *** compared to the preinstalled versions on *.nix and the package manager to install other utils. Also there are a lot more binutils available.
4. SSH (+X11 Forwarding). Simply control your PC from another PC without the need of Remote Desktop. (Yeah this works also on windows, but is easyer to use and install on Linux).
5. (Not on MacOS) No need for a graphical userinterface, if you just want to run a VM to test something you dont need to load a DM.
6. Cross compiling on windows for *nix systems is a pain in the ***.
7. With wine you can use Windows software on *nix but there is no option the other way around.

I also enjoy programming for *nix systems alot more, but thats another story and (unfortunately) in most cases you can't decide for which system you want to develop.

All in all, Windows may be the easier system for the end user, but *nix systems are way better designed for developing.
warfley is offline  
Old 11/14/2016, 22:17   #5
 
elite*gold: 100
Join Date: Apr 2008
Posts: 860
Received Thanks: 1,465
The packetmanager is the key feature that disqualifies windows as a development OS almost entirely.

The other key feature is the bash. No GUI required. This point might be outdated due to Powershell. On Linux, i can do EVERYTHING from the console. On Windows, the CMD is like build around the GUI. On Linux, the GUI is an *extension* to the console to simplify things.
I use the console on a daily base. For editing files, for git, for running tests and backups. The Windows CMD sucks. It sucks. Powershell never got my attraction, maybe its good, i don't know.

gcc, make, cmake, etc. easily installable. One simple command. Most libs, also one command.
No path or include struggle. On Windows, some tools come via cygwin or mingw. So why would i use Linux/Unix-Tools on Windows?


Personal Points based on my experience with Windows:
What really takes the cake is services like Webservers or Database Servers. On Windows you have to deal with starting and stopping services, considering and configuring random autostart and weird paths for config, logfiles and data.

Linux is structured. One location for config, one location for logs, one location for data. You still have to deal with starting and stopping the relevant services, but in my *feeling* the whole system reacts a lot better to services.

Overall, (my) Linux is a way more responsive and integrated development base than i ever got my Windows in 10 years.
florian0 is offline  
Old 11/16/2016, 16:15   #6
 
Shadow992's Avatar
 
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,876
Almost all things have already been said. However I just wanted to mention something "special".

If your goal is to create some really specific and scientific programs (like Computer Vision, Cloud Computing, ...). You really should stick with Linux every scientific library is compileable on Linux but only a few can be compile without any problems on windows (e.g. I tried to compile OpenCV a couple of weeks ago on Windows and it took me 1 week to get something I can work with). However on Linux it took me exactly 1h and all I had to do was to type "cmake && make && make install" into bash. Try this on Windows...
And even more specific libraries (like DeepLearning-Framework "Caffe") just dont work, no matter what you do (even if Microsoft added "Windows Support"-Branch it still failed for me).

So if you want to do some scientific things (maybe not now but in future) you should get familar with Linux, because Linux is THE OS for scientists.
Shadow992 is offline  
Old 11/16/2016, 18:45   #7
 
Dr. Coxxy's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 1,206
Received Thanks: 736
most things already said, however this "windows disqualified", etc. is just bullshit.
it depends totally on your own preferences and your workflow.
you can develop almost everything on windows, linux, mac (only very few exceptions with some tools only working on a certain os, however most of the time its only a single buildstep which you can then simply outsource to the other OS with a vm, or similar).
however one thing you may considerate (as already stated in this thread) is your target platform, as its often much more convenient to just compile and run on the same platform.
However often there are tools which autodeploy to your target platform in a vm/on a server with a short delay - so you can totally split your dev-os from your target-os with in most times only small overhead.
So the only thing left is your workflow and the tools you use for developing in the language you use (which most likely run under any os - windows, linux and mac).
Dr. Coxxy is offline  
Thanks
1 User
Old 11/24/2016, 19:10   #8


 
Ende!'s Avatar
 
elite*gold: 1
Join Date: Feb 2009
Posts: 6,379
Received Thanks: 7,998
Quote:
Originally Posted by warfley View Post
7. With wine you can use Windows software on *nix but there is no option the other way around.


https://en.wikipedia.org/wiki/Window...stem_for_Linux
Ende! is offline  
Thanks
5 Users
Old 11/29/2016, 00:35   #9


 
Sycrog's Avatar
 
elite*gold: 86
Join Date: Feb 2009
Posts: 370
Received Thanks: 84
+ using VMs

I used both for work, Linux and Windows and I prefer Windows. For development I'd use Vagrant.
Sycrog is offline  
Old 11/29/2016, 10:28   #10
 
0xFADED's Avatar
 
elite*gold: 7
Join Date: Dec 2013
Posts: 446
Received Thanks: 187
Something that really drives me nuts when using Windows is their case-insensitive filesystem.
It's the no. 1 origin of "works on my machine" errors when deploying to Linux Servers or Macs with case-sensitive HFS+.
0xFADED is offline  
Reply


Similar Threads Similar Threads
[QUESTION/HELP] CSV still work?
06/10/2012 - Dekaron - 5 Replies
some time ago I used CSV, but stopped to avoid being banned, but is possible still use CSV or bypass this outdated? if its can possible, could someone pass me the topics taught to do this? Thanks :)
A (perhaps) better question: How does it work?
03/10/2012 - Mabinogi - 18 Replies
If anyone would be willing to give me a little haxor history lesson: What exactly is the magic behind the mods/hacks? I know a lot of people enjoy using them to pretend they are elite pvpers (see what i did there?), and a lot of people just download and use the hacks black box, not knowing how they work. I don't particularly want to be a leech, but I also don't particularly know enough yet to not be one. Any background, helpful links, and minimally-trollish replies are much appreciated....
[Question]How CE's work!
11/21/2009 - S4 League - 2 Replies
Hallo an alle, In diesem Thread frage ich NICHT danach, wie ich mit einer Cheat Engine hacken kann! Ich versuche momentan, c++ Programmieren zu lernen. Und ich weiß auch wie man mit einer Cheat Engine hackt. Nur da ich jetzt momentan in dieser ganzen Programmiergeschichte drinne bin, wollte ich die "waschechten Computerpros" unter euch fragen, und wissen, wie das Prinzip einer Cheat Engine eigendlich funktioniert? Also wie eine Cheat Engine nach Adressen sucht, was die...
Question how to work with .iso
08/07/2009 - Soldier Front - 1 Replies
Anyone knows how to work with .iso files i kinda need a tut ty,
question about work or no?
09/14/2006 - Conquer Online 2 - 3 Replies
problem solved, thx for person who whispered



All times are GMT +2. The time now is 04:06.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.