View Full Version : Is it harder to code for Linux or Windows?

03-27-2002, 10:19 PM
You experience programmers please tell this newbie :D.

03-27-2002, 10:29 PM
Well, that depends on what you mean by harder.

First of all, the language is the language, regardless of platforms.

The differences are the headers/libs and the available development environments. A windows platforms gives you access to MFC and VC++, which, in the opinion of some people, make coding easiar. The caveat is that your code will have "We are Microsoft. Resistance is Futile. You will be Assimilated" stamped all over it in binary. A linux platform, on the other hand, gives you less fancy tools (but what kind of wimp would use a GUI to code anyway? REAL programmers use the command line) but a little more direct access to various things to which one might want access, as well as freeing you from the potential security vulnerabilities introduced by Windows' "convenience" features. cough spyware /cough.

So in short, if all you have ever done is vc++ on Windows, than linux will be a bit of a change, but if you are looking for a new area into which to expand, linux is not substantially harder to work in.

03-27-2002, 10:30 PM
It's easy for both in Java. :)

03-27-2002, 10:35 PM
Windows has better IDEs hands down, but I like writing programs for Linux better. The whole win32 (WinMain) reasoning eludes me (other than no other platforms use it). It is more effort to code in Linux but I think you have more control (goes hand in hand I guess). And once you get the hang of it it's really trivial.
Help the revolution, code cross-platform.

03-27-2002, 10:39 PM
Well, even with a platform independant language like Java, there are still traps.


There is a reason that the major languages are maintained by the nonprofit ANSI, and not a private corporation. People that see that fight between microsoft and netscape are not even seeing the tip of the iceberg. The real fights are microsoft vs opensource and the big one, microsoft vs standardization.


03-27-2002, 10:41 PM
...and .NET vs J2EE. :o

03-27-2002, 10:46 PM
It probably depends on what you want to do. Linux lacks the windows specific stuff (DirectX, MFC, etc), while many of the popular libraries in Linux (OpenGL, SDL, Qt) are availible on Windows as well. There are some non-Windows libraries for Linux (stuff related directly to KDE or Gnome, desktop enviroments for Unix, so it doesn't really make sense to port them to windows). But most of the popular Linux libraries that are not intrinsically tied to the OS are ported to many platforms anyway.

I develop primarly on Linux (Kdevelop is a nice IDE, http://www.kdevelop.org ). While I prefer the ease of use of the Visual C++ IDE, I prefer g++ over MS's compiler.

Surely, when you are coding something that applies only to one OS (say, making something to replace regedit on windows, or a graphical system resource monitor in Linux) then it makes sense to make the code run only on the intended platform. However, things like most games (anything that doesn't require using say, vendor specific OpenGL extensions that something Direct3D does natively, like per pixel shading) really should be made portable. Why force your users to use the same platform you do? If you like Microsoft's development tools (I admit they are very good), fine, use their tools with portable libraries, so as to make getting the code working on ther platforms a breeze rather than a nightmare. Don't force your users to use a specific platform when it's not necceary.

Anyway, end ramble. Use open libraries with whatever tools when not coding apps that have a neccesary link to a specific platform. Portability and open standards are good things, if you don't believe that.. C or C++ probably shouldn't be your programming langauge of choice.

03-28-2002, 12:31 AM
Learn wxWindows and you really don't have to worry about coding for either...


03-28-2002, 12:37 AM
>>REAL programmers use the command line

PAID programmers do what the customer wants.

03-28-2002, 01:58 AM
In my experience, Linux has been a bit harder, but then again, I havn't done too much programming for it. I'd say its harder for me, because I started with programming in windows, and thats what im accustomed to.

03-28-2002, 08:56 AM
programming is programming... i don't think it's easier or harder in either. The only difference is how nice the IDE is. And I'd say, like someone else said that Windows probably has the slight upper hand in that, but I've seen a few good ones for linux.

03-28-2002, 03:23 PM
Ok I have another question if Linux is supposed to be free, then why do I see Linux being sold all over the net? Also is the creator of Linux still alive? Is he rich?

03-28-2002, 04:06 PM
Linux is free by the Free Software Foundations definition of free.


It's allowed to be sold for money. You can legally download ISOs from all of the major distrobutions. My university even hosts quite a few of them, http://ftp.rutgers.edu .

It's free enough to be allowed to be sold.

Linus Torvalds, the creator of Linux, is well off financially ( he works for Transmeta), but probably worth like 5 order's of magnitude less than Bill Gates.

03-28-2002, 04:09 PM
I have Red Hat Linux, but apparently my modem is not supported by it or I don't know how to get online with it....that's why I am not using Linux, I would like to use both Linux and Windows but until I get a new modem or learn how to get online with it I guess I can't :D

03-28-2002, 04:55 PM
Originally posted by elchulo2002
I have Red Hat Linux, but apparently my modem is not supported by it or I don't know how to get online with it....that's why I am not using Linux, I would like to use both Linux and Windows but until I get a new modem or learn how to get online with it I guess I can't :D

if your modem plugs into the pci bus then you are going to have problems. you could either go out and get a modem that plugs into the isa bus instead, or look up something on the internet called "linmodems"; it may help you configure linux to work with your pci-based modem card.

03-28-2002, 11:24 PM
The end justifies the means.

When you write software, you are more than a coder, more than an engineer; you are an artist. And an artist's main focus is to express himself in the best an most comfortable way possible. So if you wish to express through Linux, fine; but Microsoft based platform is just as fine.