Jump to content

Windows is trash.


Oddly

Recommended Posts

3267a20324b27039cb73703fcbdda5ba.png

 

I've been doing C++ cross-platform development for SalemGDK, and I would like to dedicate a bit of my time to bitch about how much I hate windows. This is the entirety of this thread, just a wall of text about me bitching about how much i hate windows.

 

Have you ever developed a cross platform application in a language where you need to link libraries like C or C++? It's all fun and games until you get to windows. On OsX and Linux, it's simple, so let me tell you the steps to linking Boost and SFML in C++ on Linux and OsX

 

On OsX:
Download and install brew with a single bash command found on their home page.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Once brew is installed, go ahead and install boost and sfml:

brew install boost

brew install sfml

 

Now in your CMake, you just gotta reference the libraries because your compiler already knows where to look for these. So, ya add a couple lines to your CMAKE, telling it which parts of Boost and SFML to use and you call a simple function basically FindBoost and FindSFML and you're done.

 

On Linux:

Practically the same as OSX. except guess what? Linux already has a package manager!

if you're on arch:

sudo pacman -S boost

sudo pacman -S sfml

sudo pacman -S lib32-glibc (because you need a dependency)

 

Or if you're on ubuntu:

sudo apt install libboost-dev

sudo apt install libsfml-dev

sudo apt install lib32-glibc

 

Guess what, if you started with OSX your cmake shit's already in there! Cool

 

On Macrosawft GarbageOs

Spend hours trying to figure out how to get visual studio to use CMake and your MingW compiler. You need to compile Boost and SFML for that specific build of MingW. You get an error after finally getting it all compiled and linked realizing that you compiled something wrong. You understand that from this point on your life is going to be absolutely miserable, so you give up, go have a drink, come back weeks later and decide, shit let's just get this jazz working with VisualC. So you go out, you download the zip archive of the library files you need from the interwebs, link everything in, realize that Boost does not have released binaries for Visual C++, and you need the compiled versions because the header only libraries don't support a part of the library you need, and if you tried to install from Nuget, fuck you because those are all header only anyways, so now you need to compile boost for your specific version of visual C++, you finally get through it, then you realize the output build directory is insane, so you write up a python script to copy the libraries you need, otherwise it would take you an hour to sort through the cluster fuck of files they have. You finally get it all copied and linked up, you finally build your library and you go to setup your application to use the library you've been trying to build, and for some reason you need a .lib file for symbols AND a .dll file... plus you still need to include your header files and you wonder what the point of the .lib file is if its supposed to resolve your symbols... which are defined in your headers. Then you read an article telling you that you have to specify all the functions and classes you want your dll to include and export for you, and my god why is there so much shit to this?!

 

And by the way you remember how easy it was to link libraries in cmake? Yeah in visual studio for whatever reason you gotta go into the project settings, setup your preprocessor definitions, get rid of some stupid flag for their stupid precompiled headers, like i don't want to use that trash, quit trying to force your garbage implementations on me. Then you define every single one of the .lib files you need, and include a list of where all these libraries are located (mind you on linux they all go to this one place called the fucking Libraries folder, god forbid windows had one!), and jesus christ, can we all stop using windows?

 

Dear Macroshit,

Like what the hell is up with your system directory structure, and why cant you decide what should go where? Why is there no single place to put library files and applications? Why you gotta use \ (the standard "escape" character) instead of / for your directories? Your console commands are trash and your console applications are just ugly as hell. Why is it so much work to modify path variables, and how come when an installer says "add to path variable" it rarely ever works?... Hold on windows is forcing me to update... Why don't you have a package manager? Why do some applications get installed directly to "appdata" and some get installed to "program files". Why don't you have a package manager? Your desktop environment is ugly, and why the FUCK does GarbageOS come with candy crush saga? I don't even think my grandmother plays Candy Crush Saga! Why do you even come with crapware? You charge an arm and a leg for your operating system and not to mention you sell user data, like honest to god why do you need to piggy back crapware? Seriously, that package manager... Your operating system is the single least most secure thing, hell i don't even need an antivirus on unix based OS's. Why do i have.. **Explorer.exe has stopped responding** .. two different consoles (CMD and Powershell). Like, no really, Why don't you have a package manager? Oh and don't even get my started with edge and the edge development team. Edge can't even keep up with web standards, it's already turning into the next version of IE. If it weren't for the gaming market and their target platform, you'd be dead, and i hope you die soon.

 

Sincerely,

I fucking hate you and your terrible operating system.

 

P.S. GET A FUCKING PACKAGE MANAGER!

Link to comment
Share on other sites

8 hours ago, The Crzy Doctor said:

Say what you will... Java sucks.. and Python pays my bills... So its GOD!

It's not even just that it pays the bills, python is legit a great language. It's perfect for System Administration, Data Analysis, Bot Development, AI Programming, Prototyping. It's a god of a language.

 

Java can suck itself with its outdated standards. Most of its libraries are like witchcraft anyway. "AutoMagic" pssh, more like Black Magic, amiright?

 

@Mighty Professional The problem is that windows has a million ways to do things and like no development standards making linking a bitch to use. If you've ever compared the system directory structures between OSX, Linux, and Windows. Windows sticks out like a sore thumb and it's because its a cluttered mess with no standards.

 

In good news, after 12 hours of battling with visual studio, i got my shit working. Twas a noble fight.

508658661defdbb7c9023b981670a2fd.png

 

 

Link to comment
Share on other sites

55 minutes ago, Jumbofile said:

Windows has a HUGE advantage, it is the industry standard.

Windows has a HUGE advantage at being absolute trash.

Link to comment
Share on other sites

2 hours ago, Jumbofile said:

Windows has a HUGE advantage, it is the industry standard.

This. Just by doing a simple google search you can see how much of a market dominance windows OS' have:

 

computer-operating-systems-market-share-

like literally just shy of 90%. Sure it may be a mess but not designing for it primarily is shooting yourself in the foot when it comes to potential consumers. I'd much rather developing for only windows than all the other OS' combined because of this sole fact.

 

I'm not saying windows is the best here, I'm only talking about it from a target audience standpoint.

Link to comment
Share on other sites

44 minutes ago, Kibbelz said:

This. Just by doing a simple google search you can see how much of a market dominance windows OS' have:

 

computer-operating-systems-market-share-

like literally just shy of 90%. Sure it may be a mess but not designing for it primarily is shooting yourself in the foot when it comes to potential consumers. I'd much rather developing for only windows than all the other OS' combined because of this sole fact.

 

I'm not saying windows is the best here, I'm only talking about it from a target audience standpoint.

I feel like linux should be higher because of cloud computing and how a lot of companies use Ubuntu for hosting back end software like REST Services and Web Servers. I'm having trouble finding actual statistics on it, but i'm pretty sure there are a lot more linux based web servers out there than windows. I understand this from a standpoint of which systems are being used in the office, but cloud computing has had to have SERIOUSLY increased the amount of linux servers being used.

Edit:
This is the most I could find:

https://w3techs.com/technologies/overview/operating_system/all

 

And honestly, i'm pretty sure the only reason the marketshare for windows is so high is because most software is being written for windows. We're stuck on a standard, and we're letting that standard limit what we write. Web applications are starting to take over, and when they do, it doesn't matter what systems a company uses.

Link to comment
Share on other sites

semi related but one of the reasons Nintendo is still thriving with the Switch (we are politely ignoring the wii u) as opposed to microsoft and sony where most of their titles can be played on pc (pc master race). There is not much demand for consoles these days however most of Nintendo's titles are only for Nintendo and thus give more traction to the console. Sure web services are totally kicking off but still a long way off.

Link to comment
Share on other sites

1 hour ago, Kibbelz said:

semi related but one of the reasons Nintendo is still thriving with the Switch (we are politely ignoring the wii u) as opposed to microsoft and sony where most of their titles can be played on pc (pc master race). There is not much demand for consoles these days however most of Nintendo's titles are only for Nintendo and thus give more traction to the console. Sure web services are totally kicking off but still a long way off.

How friendly is nintendo's market with indie game devs?

Link to comment
Share on other sites

2 hours ago, OddlyDoddly said:

How friendly is nintendo's market with indie game devs?

Very good. Its definately worth targeting. If you can get your characters into smash bros and a big name under the franchise you are golden. I have binding of Isaac on switch, a few indie games on their eshop but I would definitely look towards the cartridge route too. Nintendo encourage developers to use unity though.

Link to comment
Share on other sites

32 minutes ago, Kibbelz said:

Very good. Its definately worth targeting. If you can get your characters into smash bros and a big name under the franchise you are golden. I have binding of Isaac on switch, a few indie games on their eshop but I would definitely look towards the cartridge route too. Nintendo encourage developers to use unity though.

Yeah, I heard it was a custom version of unity. Doubt you could make an mmorpg on the switch though. Nintendo seems to not like the whole online communication thing.

Link to comment
Share on other sites

22 hours ago, OddlyDoddly said:

Can we get a dislike button please?

 

20 hours ago, The Crzy Doctor said:

Say what you will... Java sucks.. and Python pays my bills... So its GOD!

 

You have to learn a lot of computers I think

 

maybe you should start from here: 

 
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...