PDA

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



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

Imperito
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.

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

taylorguitarman
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.

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

rant

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.

/rant

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

SilentStrike
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.

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

www.wxwindows.org

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

PAID programmers do what the customer wants.

dirkduck
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.

ober
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.

incognito
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?

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

http://www.gnu.org/philosophy/free-sw.html

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.

incognito
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

syntactic_sugar
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.

Scourfish
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.