<p>ForthoseofyouwhouseGNU/LinuxorBSD(orbasicallyanyotherUNIX-likesystem)thispostwillcomeasnosurprisetoyou,butIstillfelttheurgetomakeitanyways.IcurrentlydonotrunMicrosoftWindowsanymore,butIstillhavetouseundercertaincircumstancesforclassesandsuchaswellasconstantlyhearingfromfriends(whorunWindowsastheirmainOSforsomestupidreason)andnewsarticlesabouttheneweststupidthingthey've added to annoy their users. So, let'sgetstartedonthebashingofthedeadhorse.(Why?Becauseit'sfun.)</p>
<li><b>ForcedUpdates:</b>OneofthemainthingsthatfrightensmeaboutWindowsishoweasilytheycanforcethingsontoyourcomputerwithoutyouneedingtogivethemanypermission,andwhat's more, do so by force even taking up your own time when shutting down (or forcing you to shutdown). After having used GNU/Linux for 6 years and OSX before that, this entire thing seems stupid to me. If they'regoingtotellyouwhattodowithyourcomputerwhynotditchthem?</li>
<li><b>LackofConfigurability:</b>SomethingI've loved and gotten very used to ever since using GNU/Linux is the very high ability for configurability that I have. Generally in the UNIX world configurations are all put into configuration files with as many configuration options as possible. This is because this lessens the need to go into the actual source-code for a program and change something as simple as the colour for the UI. This and the OS itself tends to be very flexible in terms of what it allows you to do with it (the OS is basically just the bare bones and you put other stuff on top of it, like a display manager, window manager, network manager, and everything else). This means that in GNU/Linux (and other systems like BSD) I have the ability to easily use whatever window manager I please and configure my programs via configuration files to look and function the way I want them to without even having to mess with source-code. In Windows, on the other hand, none of this is possible, I'mstuckwithwhatMicrosoftwantstogivemeandthat's it. Take into account that this isn'tevenanissueofGNU/LinuxorBSDbeingfreesoftware/open-source,ifalltheseapplicationswerenon-freeIwouldstillhavealoadofconfigurabilityoverthem.</li>
<li><b>NoPackageManager:</b>Ifyoudon't know what a package manager is, think of it like an app store. Now, in GNU/Linux basically all distributions have a package manager (there are even a few of them, like `pacman',`aptitude', and `dnf') which are very useful for multiple reasons. Firstly, they make it extremely easy to install new applications in an organized and easily removable and easy to update way, either from an online repository or from a package file you downloaded to your computer. But more importantly, they are a standard way of installing dynamically linked libraries, or shared object files (if you'reonWindows,it's those `.DLL'files).Whyisthisimportant?Let's say that two programs use the same library (same version even), on GNU/Linux you would install the shared object file for that library and the two programs, and both programs would use the same file when executing. On Windows, on the other hand, you will install both applications and both of them will come with their own copies of <b>the same exact file</b>, and depending on how large this library is it can be a very large file. A typical example of this is with games. If you'reagamerandlikeplayingUnitygames,onWindows,foreveryUnitygameyouhaveonyourcomputerthereisacopyoftheUnitysharedobjectfileforit.Thismeansifyouhave20ofthesegames,you'vegot20copiesofthesameexactfileonyourcomputer.Whatalsodifferentiatesapackagemanagerfromanappstore(oratleasttheMicrosoftandAppleones)isthatitmakesiteasytoinstallpackagesfrom3rdpartysources,aswellasaddunofficialrepositories.MicrosoftandAppledonotletyoudothis.</li>
<li><b>SpecialSnowflakeSockets:</b>Thisisabitmoreonthetechnicalside,butwhydoesWindowshavetohaveitsownsocketcode?Whycan't it use UNIX sockets like everyone else? For every other major OS (MacOS, GNU/Linux and BSD) I can write practically the same code without the need of compiler macros, but once Windows is in the picture I am forced to fill my code to the brim with compiler macros for the special snowflake sockets. I can write one set of instructions for practically every other OS, but for this one OS, Windows, I have to write a special set of instructions for it all because otherwise I won'tbeabletoportmysoftwaretotheOSwiththemostusers.</li>
<li><b>BadCommandPrompt:</b>Iamunsureastohowlongit's been since Microsoft decided to update their command prompt, but it feels like ages, because that thing is really bad, especially their shell. Last I remember there'snotabcompletionforcommands,atonepointintimeithadissuesresizing,anditcan'tevenuse(n)curses.IcandoatonofstufffromthecommandlineonaUNIXmachine(evenaMacOSmachine),butonWindowsIamlimited.MychoicesaretoeitherusethebadcommandpromptortousethebadGUIthatthedeveloperoftheprogramprovidedmewith,neitherofwhichareveryappealing.</li>
<li><b>AdsEverywhere:</b>ThereareadseverywhereinWindows,especiallystartingatWindows8,whereyoucouldfindtheminthe'start menu'.ItgetsworsewhenMicrosoftdecidedtoputadsintheirfilebrowseraswell,especiallyconsideringloadsofpeopledon't know that you can install a different file browser. Now they'resayingthatit's because they'vemadeWindowsgratisandthereforetheyneedanewwayofgeneratingrevenuefromtheOS...excepttheadsstartedtohithardwithWindows8anditwasWindows10thathasbecomegratis.ThatandmostGNU/LinuxandBSDdistributionsarealsogratisandtheyhavenoadseither.Heck,eventhemostoftheapplications(windowmanagers,filebrowsers,menuapps,etc.)don'thaveads.</li>
<li><b>LongBootTimes:</b>WindowshasthelongestboottimeIhaveeverseeninmyentirelife,whichisprobablywhythey've resorted to hibernation rather than actual shutdown. Don'tmisinterpretme,onGNU/Linuxyoucanalsogetlongboottimes...ifyouusetheheaviestdisplaymanageranddesktopenvironmentsthereareaswellashavingatonofservicesstartuponbootandabunchofapplicationsonautostartwhenyoulogin.Otherthanthat,it'llgotfasterthanWindowsgiventhesamemachine.</li>
<li><b>NoMinimalInstall:</b>SomethingIloveabout<ahref="https://www.archlinux.org/"target="_blank">Arch</a>isthatitisveryverysmallandwhenIinstallitItellitexactlywhattoinstallfromtheverybeginning.EverythingIhaveinstalledonmycomputeristherebecauseIinstalleditmyself.Manypeoplereallyenjoyhavingminimalinstallations,itmakestheirsystemmorelightweight,takesuplessspace,especiallyveryhandyifyou're ever going to be doing anything that'sextremelyresourceintensive(lessresourcesbeingwastedondesktopenvironmentsandrandomapplicationsyouneveruseandmorebeingusedonyourmediaeditingorwhateveryou're doing). The closest thing Windows has to this (from what I'veheard)istheirserverversionoftheOS,andeventhatcomeswithatonofapplicationsbydefault.</li>