The seventh Circle of Dev Hell!
Soooo in this weeks post I talk about the devil in development: TOOLS!
"Why tools?" you say, "Tools make the life easier" you say. NO! THEY'RE NOT! THEY ARE EVIL!
I started from the C#/Java world, and I naively assumed that there are few good, widely spread toolset that work great together for developing C++ in a Unix enviroment. But I forgot the main problem of Unix: OPEN SOURCE!
You are probably asking yourself what the hell am I rambling on about, open source is great. Let me explain:
I agree, I love the GNU licences but it is not the ultimate solution to everything like some people think. Open source also has its darksides too which I really really tasted while searching for a good workflow developing my game on linux. You have increasingly diverse tools, all working differently and having different levels of sophistication. If you have never set up a dev enviroment for C++ before, this stuff is more frustrating than teaching a cat to roll over. I spent hours searching in the depths of the web how to use different tools, just to find out that for me, they create more problems than they solve. Rinse and repeat.
I didn't get around to code very much, to be honest, i didn't code at all. Until now I had to think about everything BUT the coding. And I HATE IT! Arrrrrgh!
So you can imagine I am mad, mad at everything. Even trees. Why do they just stand around, waiting to get water? Why? GET UP and DO something you stupid piece of wood! At least entertain my when you have nothing else to do, but NOOOO, you just have to keep standing there like I am not talking to you... LOOK AT ME WHEN I AM SPEAKING!
In Java, this is somewhat simpler. Almost everything is open soure too, but you have a handful of widespread toolset with a high level of quality. You can go with either of them. Eventually you stumble over a tool/library that suits you better and will keep using that. So why cannot C++ developers move forward into this century? Why do all the tools have to be so needlessly complicated and sporadically work together?!
Few, that felt good.
Some of the problems are my own fault, I know now why other languages come with their own runtime. Everything gets more complicated when you just try to be platform indipendent.
So if anyone cares, that's what I chose for the moment:
Github repo: wow, just wow. I didn't come around to use it very much before this project. It isn't very easy when you are just used to tortoiseSVN. But man, this is thing is amazing.
QT: this tool sounds stupid, but I need a platformindipendent builder, and I don't seem to understand CMake. Plus it comes with a testing framework. CUTE just didn't want to link properly for me.
IDE: Eclipse CDT. Not what I hoped, but it gets decreasingly anoying. For some reason it doesn't want to remove popup windows correctly under Mint Debian. So I sometimes have half transparent rectangles sitting there.
CI: Jenkins. Well, not at the moment, in the future maybe when I have the rest set up and running.
Since this entry is already structure free, I might as well add this here.
I know this journal isn't the most read compared to other newer journals on gamedev.net. I also know why:
Most journals have some cool footage from their game, or at least some cool artwork to show, but I have nothing. It will take quite some time before I can even post some Techdemo. And no, I won't draw some artwork for you, it would be so ugly not even my mother would put it on the fridge.
So there is just me to entertain you, sometimes trying to be professional and sometimes saying "screw it" and just write about random stuff.
I don't know if anybody views this journal frequently, I guess people are just stumbling over my entries whenever I post a new one.
But if there is somebody who actually LOOKS for this journal: Thank you kind sir or madam, you rock!
Next week I post entries in the usual language, posting about the actual game I am working on.
So long and have a nice weekend.