Sunday, 14 December 2014

My life as a Mac developer

So I was looking at possibility to move development of Brick Atelier to OSX, just for fun and maybe preparing for future releases on OSX platform. First block on the road was that I can't download XCode, the native IDE for OSX. You can get it from App Store, but when downloading App Store wants to know my billing information. I don't want to give it. Besides, I don't have a credit card which presumably is required in App Store. Yes, it's possible not to have it in some parts of the world.

Code::Blocks can be installed on OSX and it was a success. But then a disaster struck. SDL (a graphics library used in Brick Atelier) can be only used as a framework in XCode. In Code::Blocks you have to use so called unix installation, which I call shit installation. Since OSX doesn't have .dll files as Windows the user has to install SDL if using dynamic linking, because you (again presumably) need library files for SDL. If using static linking you have to release the source code of your project, because SDL 1.2 is LGPL.

OSX is taking worst from the both worlds. On other side there is App Store and Apple's development tools (and if you release on App Store having to join in the development program which costs 99 dollars a year). Then there is unix and open source problems with "good old" GPL. What the fuck is wrong with just writing programs and releasing them the way I want? It looks like I'm not going to write any programs to Mac any time soon.

Isn't it ironic that Windows is the best platform for developer? It doesn't force any suckage from open source ideology or try to force commercial releasing routes. You can do anything you want. You can release the source code if you like, you can use other licenses than GPL, you can sell your soul to Steam if you want etc.

People often ask why don't you join Linux happy open source family. I think it's restricting your options and open source releases are dangerous, because anyone can steal your project and create derivatives of it. GPL is the biggest reason why Linux will never appeal to developers who may want to change their mind and try to get some money from the hard work if or when their project starts to have a commercial potential. GPL and open source ideology would probably work in a communist Star Trek utopia where no one has money.

Developers are extremely important to any OS. What happened to Windows with version 8 was hopefully a good wake up call for Microsoft. If they make the OS like shit the developers are going to run away fast. Then again no one liked 8 and that's why Microsoft is trying to get it right with 10.


Anylo said...

Linux/Ubuntu/ offers plenty of free tools and libraries which will make your life easier (eg. Code:Blocks and SDL). Some of us thinks that we want to contribute back to the community and release our source code under some open source licence.

But it doesn't mean that everybody must use those licences (GPL, MIT, BSD etc).

Makis said...

MIT and BSD don't even require you to share your sources if you use code licensed under them.

There's also plenty of commercial & closed source software in Linux. There is nothing stopping a programmer from not releasing their source code. Only if you want to use other people's GPL code you have some obligations (there are some other licensing models that also have special requirements).