LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Programming (https://www.linuxquestions.org/questions/programming-9/)
-   -   Linux need cross platform games development tools.. (https://www.linuxquestions.org/questions/programming-9/linux-need-cross-platform-games-development-tools-755966/)

docesam 09-17-2009 01:34 PM

Linux need cross platform games development tools..
 
I tried to switch from windows to Linux several times but failed. Early on, my failure was largely due to the great difficulty of Linux and also due to lack of hardware support. nowadays I don't see these problems so Linux is becoming more and more ready for the mainstream user.

My view is that In order for people to make the switch from windows to Linux we need to prepare both programmers and users for this transfer:
1-most programmers should be working on (almost) 100% portable programming languages / libraries /APIs . so that they can switch from windows to Linux easily.
2- the ability to make windows programs work in Linux .so that people don't lose any "heavily invested in" windows programs when they go to Linux (I am especially talking about custom made programs).and this has to be a temporary step for few years until all windows programs "get old" .

Regarding #1: the WINE project is working on it. regarding #2: mono project is doing good job.

however there is one very important field where we are lagging behind: Game programming.

Even if all windows programs can work flawlessly in Linux , the complete switch will not happen unless programmers can port all their programs to Linux relatively easily. languages like java , python , c# can more or less do that BUT not in games.

we need cross platform DirectX or we need to develop cross platform API better than DirectX so that it is more attractive to developers than DirectX.

Game programmers should feel "Home" when they switch to Linux otherwise the switch is unlikely to happen and we will stay in the mud.

Any comments?

damicatz 09-17-2009 02:19 PM

Quote:

Originally Posted by docesam (Post 3687251)
I tried to switch from windows to Linux several times but failed. Early on, my failure was largely due to the great difficulty of Linux and also due to lack of hardware support. nowadays I don't see these problems so Linux is becoming more and more ready for the mainstream user.

My view is that In order for people to make the switch from windows to Linux we need to prepare both programmers and users for this transfer:
1-most programmers should be working on (almost) 100% portable programming languages / libraries /APIs . so that they can switch from windows to Linux easily.
2- the ability to make windows programs work in Linux .so that people don't lose any "heavily invested in" windows programs when they go to Linux (I am especially talking about custom made programs).and this has to be a temporary step for few years until all windows programs "get old" .

Regarding #1: the WINE project is working on it. regarding #2: mono project is doing good job.

however there is one very important field where we are lagging behind: Game programming.

Even if all windows programs can work flawlessly in Linux , the complete switch will not happen unless programmers can port all their programs to Linux relatively easily. languages like java , python , c# can more or less do that BUT not in games.

we need cross platform DirectX or we need to develop cross platform API better than DirectX so that it is more attractive to developers than DirectX.

Game programmers should feel "Home" when they switch to Linux otherwise the switch is unlikely to happen and we will stay in the mud.

Any comments?

There already is a 100% portable programming language. It's called C/C++. As for cross-platform APIs, there are lots. My favorite is QT since it handles just about everything from audio, documents formats, printing and widgets to 3D graphics, databases and XML.

We already have a cross-platform DirectX. It's called OpenGL with SDL (or with QT or another cross-platform library). DirectX currently sees more use because Microsoft has done a better job at marketing and propaganda. In addition, Microsoft "encourages" the use of Windows-specific APIs in games through the Games for Windows program.

As for the Mono project, this is dangerous (See also). Microsoft holds numerous software patents on .net. Only the basic C# language is standardized, the rest is proprietary to Microsoft. In addition, enough of .net is Windows-specific that it's never going to be a matter of a simple recompile unless the .net programmer writes the program to be cross platform from the beginning using something like GTK#.

I fail to see the benefit of .net. I can understand Java not being compiled to native machine code because it is designed to be cross-platform. .net is not. You cannot just take a Windows program not designed to be cross-platform and written in a .net language and recompile it on Linux without significant changes (though not surprisingly, it tends to be easier the other way around). All .net adds is unnecessary bloat (why does a 2 megabyte Windows program need a 120mb runtime?), memory usage and unneeded patent liability.

archlinux_jessica 09-17-2009 02:41 PM

Programming
 
You're stating that Linux doesn't have enough cross platforming tools for programming? Are you serious?

C/C++ has many tools that make things cross platforming if you don't mind a extra layer.

GTK, QT for cross platforming api tools.
ncurses for your console programming.
SDL for your 2D graphics and various aspects such as video, sound, networking and many other features.
OpenGL for your 3D graphics needs.

Now if your referring to editors, there are tons.

CodeBlocks, QT developer come to mind.
JDeveloper, Eclipse, Netbeans also come to mind as far as Java.
Even the basic editors, such as nedit have code highlighting features.

What more exactly are you talking about?

Wine also makes it possible to compile and test your Windows programs on Linux quiet well. Install Dev-CPP using wine and add the path to PATH in the batch file and compile using something like "wineconsole compile.bat"

Theres also FreeBASIC, and so many more tools for developing its mind boggling, and your still stating we need more? What exactly DO we need more?

Also if you want to lower the bloat of extra libraries, just use the native API's for each system and use #ifdef __WIN32__ to let the compiler determine what OS your using, but that kind of programming isn't for the lazy!

I personally find it much easier to program anything in Linux than Windows. The entire OS is shaped for it! I find SDL, OpenGL much easier to use than DirectX and not restricted to one OS. And if you HAVE to use DirectX, you can probably wine it.

As for C#... why? Can anyone please tell me the benefits of C# vs C?

docesam 09-17-2009 06:04 PM

Quote:

Originally Posted by damicatz (Post 3687322)
There already is a 100% portable programming language. It's called C/C++. As for cross-platform APIs, there are lots. My favorite is QT since it handles just about everything from audio, documents formats, printing and widgets to 3D graphics, databases and XML.

Thank you for taking the time to reply and disscuss my post.

I know that there are 100% portable languages out there. c and c++ are just few of them. the problem is not that. the problem is that most programmers do NOT use them. if you look to the market today you will find many programming jobs go to c#. is it because companies are brainwashed by Microsoft? or because visual studio 2008 is better than all and every open source IDE ? is it because c# has high productivity ? or what?

in the last few weeks i have been looking at various forums and i heard many people claim c# to be very productive and have got attractive visual studio 2008 that have no match in open source.

Quote:

Originally Posted by damicatz (Post 3687322)

We already have a cross-platform DirectX. It's called OpenGL with SDL (or with QT or another cross-platform library). DirectX currently sees more use because Microsoft has done a better job at marketing and propaganda. In addition, Microsoft "encourages" the use of Windows-specific APIs in games through the Games for Windows program.

So developers are brainwashed? dunno but i dont think an experienced company/devepers/freelancers can be brainwashed that easy. right?


Quote:

Originally Posted by damicatz (Post 3687322)

As for the Mono project, this is dangerous (See also). Microsoft holds numerous software patents on .net. Only the basic C# language is standardized, the rest is proprietary to Microsoft. In addition, enough of .net is Windows-specific that it's never going to be a matter of a simple recompile unless the .net programmer writes the program to be cross platform from the beginning using something like GTK#.

I fail to see the benefit of .net. I can understand Java not being compiled to native machine code because it is designed to be cross-platform. .net is not. You cannot just take a Windows program not designed to be cross-platform and written in a .net language and recompile it on Linux without significant changes (though not surprisingly, it tends to be easier the other way around). All .net adds is unnecessary bloat (why does a 2 megabyte Windows program need a 120mb runtime?), memory usage and unneeded patent liability.

So what language do you suggest?
c++? it is portable and produce fast and efficient binary but it is not productive.

what do you suggest?

docesam 09-17-2009 06:10 PM

Quote:

Originally Posted by archlinux_jessica (Post 3687352)
You're stating that Linux doesn't have enough cross platforming tools for programming? Are you serious?

C/C++ has many tools that make things cross platforming if you don't mind a extra layer.

GTK, QT for cross platforming api tools.
ncurses for your console programming.
SDL for your 2D graphics and various aspects such as video, sound, networking and many other features.
OpenGL for your 3D graphics needs.

no ,i am not saying that. i am saying that most programmers are NOT using 100% portable libraries. they use windows spesific APIs as damicatz said. so it is increasingly defficult to convert this code to linux.


Quote:

Originally Posted by archlinux_jessica (Post 3687352)
Now if your referring to editors, there are tons.

CodeBlocks, QT developer come to mind.
JDeveloper, Eclipse, Netbeans also come to mind as far as Java.
Even the basic editors, such as nedit have code highlighting features.

What more exactly are you talking about?

unfortunatly , all these editors (and all other open source ones ) are not a match to visual studio 2008 , not even close !
i hope one day open source community try to remove all these junk editors and IDEs and make a real one, like visual studio 2008.

Quote:

Originally Posted by archlinux_jessica (Post 3687352)
As for C#... why? Can anyone please tell me the benefits of C# vs C?

productivity

damicatz 09-17-2009 11:15 PM

Quote:

Originally Posted by docesam (Post 3687700)
Thank you for taking the time to reply and disscuss my post.

I know that there are 100% portable languages out there. c and c++ are just few of them. the problem is not that. the problem is that most programmers do NOT use them. if you look to the market today you will find many programming jobs go to c#. is it because companies are brainwashed by Microsoft? or because visual studio 2008 is better than all and every open source IDE ? is it because c# has high productivity ? or what?

This may be true for application development but it most certainly is not for game development. The majority of games are still written in C++. To my knowledge (feel free to correct me on this one), there is not a single high-production value game that is written entirely in C# or .net. The only commercial C#-only games (and XNA games) that I know of are a handful of casual games; mostly on XBox Arcade.

Try installing a game from Steam sometime. A lot of games will try and install the Visual C++ runtime.

Quote:

in the last few weeks i have been looking at various forums and i heard many people claim c# to be very productive and have got attractive visual studio 2008 that have no match in open source.
That's the problem when you teach people programming on a slick, GUI based RAD environment that does all the work for you. You never learn any of the basic concepts and grow dependent on the automated development tools. Do they even teach concepts like the difference between the stack and the heap or how data-types work at the processor level in C# classes?

Quote:

So developers are brainwashed? dunno but i dont think an experienced company/devepers/freelancers can be brainwashed that easy. right?
No, Microsoft just provides financial incentive.

Quote:

So what language do you suggest?
c++? it is portable and produce fast and productive code but it is not productive.

what do you suggest?
QT is very productive too. It handles a lot of the nitty gritty details for you.

Java is productive (IMHO) as well. And it's actually cross-platform (despite Microsoft's efforts in the late 90s to sabotage it).

There is also Freepascal with Lazarus

docesam 09-18-2009 07:43 AM

Quote:

Originally Posted by damicatz (Post 3687965)
QT is very productive too. It handles a lot of the nitty gritty details for you.

QT is not free (as in bear).

Does QT provide complete platform independent API ?

Wim Sturkenboom 09-18-2009 08:38 AM

QT is free as in beer if you license your product under LGPL or GPL.

see http://qt.nokia.com/products/licensing

archlinux_jessica 09-18-2009 02:42 PM

Interesting
 
"unfortunately , all these editors (and all other open source ones ) are not a match to visual studio 2008 , not even close !
i hope one day open source community try to remove all these junk editors and IDEs and make a real one, like visual studio 2008."

That is a personal choice my friend. What you mean to say is that you wish that the open source community will remove all these "nonLAZY" ide's and use the braindead version that you prefer.

Most companies are using C#? I seem to remember Java being dominate in that market. And once again we get to the whole dumbing down of programmers. Those that would rather "design" programs instead of "code" them. That's the main reason software is getting so out of control anymore. People are not worried at all about performance or security, but only about how much they don't have to worry about the "Details".

I mean I'm sorry you're post is all about opinion without substance. So you like Visual Studio API. Good for you. QT Open source is free and it has a very impressive IDE to go along with it. Just because you don't like it or didn't research it doesn't make it bad. I on the other-hand dislike the Microsoft Editors.

I wish people would stop trying to get into the programming profession because they just want a easy buck or they heard computers are the fad now. You don't hire a graphics designer that develops poor graphics or a electrician that wires things together that would create safety hazards. Why do people hire programmers that develop horrible and lazy code?

And as far as the programming languages go. You state its more difficult to develop for Linux because most people mainly develop with Win32 API's and not open source tools? How is that Linux's fault? They provide their programming tools and APIs for windows for the sake of being nice. Windows creates systems only for themselves. Yet somehow that's Linux fault? Maybe if you as a programmer would just learn X11 as well you could easily translate these programs to run along side windows using #ifdef __WIN32__ like I have been doing. It offers much better performance and runs smoother. Why does Linux have to risk lawsuits just because some programmers are too lazy to learn anything new? We need to stop catering to these lazy programmers and snap them back into reality. These people would NOT have survived the punchcard days. Programming changes as time goes by. Are you going to trust in someone who cant go out of their way to learn something new or someone who attempts to keep up and learn all they can? What happens if windows changes their API completely? Are you completely lost? What happens if Microsoft goes under, are you going to be stuck?

There has to be a line at some point.

</rant>

Sorry, this is just something that gets on my nerves. :)

archlinux_jessica 09-18-2009 03:01 PM

PS
 
Also one quick point. You've gone off topic I'm afraid.

The topic is Linux need cross platform games development tools..

And we stated it has an abundance of game development tools.

Now you've changed to "Linux needs cross platform game development tools that I'm already used to, ones that aren't cross platform."

docesam 09-18-2009 03:25 PM

Quote:

Originally Posted by archlinux_jessica (Post 3688853)
That is a personal choice my friend. What you mean to say is that you wish that the open source community will remove all these "nonLAZY" ide's and use the braindead version that you prefer.


Most companies are using C#? I seem to remember Java being dominate in that market. And once again we get to the whole dumbing down of programmers. Those that would rather "design" programs instead of "code" them. That's the main reason software is getting so out of control anymore. People are not worried at all about performance or security, but only about how much they don't have to worry about the "Details".

I mean I'm sorry you're post is all about opinion without substance. So you like Visual Studio API. Good for you. QT Open source is free and it has a very impressive IDE to go along with it. Just because you don't like it or didn't research it doesn't make it bad. I on the other-hand dislike the Microsoft Editors.

I wish people would stop trying to get into the programming profession because they just want a easy buck or they heard computers are the fad now. You don't hire a graphics designer that develops poor graphics or a electrician that wires things together that would create safety hazards. Why do people hire programmers that develop horrible and lazy code?

Thank you very much for taking the time to disscuss this matter.

Ok ,so you "claim" :) that MS VS is "braindead" .. let me tell you a few points :

=> have you ever seen a presedent of a country who go and supervise all and every policeman while that policeman organize traffic or arrest a criminal?
=> have you ever seen a CEO of a big company who check attendance sheets or check if that electrician that they called earlier on came and fixed that damn light?
=> have you ever seen .....

Are those people "braindead" and lazy? they are not.
It is just that those people don't need and SHOULDN'T do these stuff themselves. they have "Tools" and those "tools" do it for them,and they should use those tools otherwise they are just wrong. those people have to take care of big stuff ..right ?

Similarly, it is not that me or you or other people are lazy or "braindead". every efford made to code,debug,update,upgrade and add features to IDEs are well spent efford my dear!! . the idea is that every minute spent in developing those programming tools will save million and million (even billions) of programmer's time and efford.The matter is not that of PURE preference .

Idon't care about my preference ,i care about money. does those "featurless" open source IDEs have all MS VS2008 features and can save me money(i.e. time) ?


Quote:

Originally Posted by archlinux_jessica (Post 3688853)

And as far as the programming languages go. You state its more difficult to develop for Linux because most people mainly develop with Win32 API's and not open source tools? How is that Linux's fault? They provide their programming tools and APIs for windows for the sake of being nice. Windows creates systems only for themselves. Yet somehow that's Linux fault? Maybe if you as a programmer would just learn X11 as well you could easily translate these programs to run along side windows using #ifdef __WIN32__ like I have been doing. It offers much better performance and runs smoother. Why does Linux have to risk lawsuits just because some programmers are too lazy to learn anything new?

it is not linux fault

docesam 09-18-2009 03:28 PM

Quote:

Originally Posted by archlinux_jessica (Post 3688870)
Also one quick point. You've gone off topic I'm afraid.

The topic is Linux need cross platform games development tools..

And we stated it has an abundance of game development tools.

Now you've changed to "Linux needs cross platform game development tools that I'm already used to, ones that aren't cross platform."

my original point was : "Linux need cross platform games development tools that becomes the preferred programming API(i.e. industry standard" :)

docesam 09-18-2009 03:34 PM

Just i want to clarify a point: we are not off topic if you understand what i mean...

because micro$oft provide tools(APIs,IDEs..etc) that make programmers faster in writing code ,programmers all over the world choose micro$oft tools and because of that windows prevail.

we (the open source community) have to provide those programmers with similar or even better tools so that they choose our (cross platform) tools and Linux can prevail.

one major area where this is obvious is games programming.

got my point?

archlinux_jessica 09-18-2009 03:57 PM

I'm afraid I don't get your point. Microsoft provides designers and tools for their OS only, yet your topic is about cross platforming tools. Linux provides every programming system under the sun as well, but because you don't like them, you seem to think they are bad.

And I'm afraid your wrong on all points. It saves time? If you provide a standard of functions and codes to use on any language, you can easily save time. Being able to save time and not sacrifice performance or security is a very good, yet often overlooked. I can design web pages faster and more powerful than any person using Web Design tools, because I can easily see what the results are going to look like as I'm coding. Editors provide limited functionality because they restrict the user to a certain set of rules. No matter how well designed a editor is, it cannot provide the creativity and customization that the programming world needs.

My company uses various Java tools and apps using oracle PLSQL systems. These tools are all comparable on Linux, so I don't see your point in how Linux does not have corporate strength tools.

"=> have you ever seen a presedent of a country who go and supervise all and every policeman while that policeman organize traffic or arrest a criminal?"

Apples and Oranges my friend. Does a Boss need to review the code written by their programmer character by character? Or can they just run the code and see it does the task with a level of performance allowed. Your example has no barrings on this conversation at all.

"=> have you ever seen a CEO of a big company who check attendance sheets or check if that electrician that they called earlier on came and fixed that damn light?"

Again not a good example to use. The electrician is a person. He does the job and if he doesn't do it well the customer complains and he gets fired. Good programmers develop good code, lazy programmers develop bad code. Just because it works doesn't make it a good program, if its completely bloated or is full of security bugs due to the editors shortcomings.

Linux provides the people with all the tools they use. Why do you think the mostly used server companies rely on is Linux based? Because its well designed and does the job without needless bloatware or security loopholes.

The Linux kernel is the largest software project in the world. People add and change thousands of lines of code daily nonstop, using basic editors and email. Seems pretty fast to me.

-Jessica-

archlinux_jessica 09-18-2009 04:08 PM

PS - again
 
Codeblocks is a very nice and quick development system to use.
QT is as well.
JDeveloper/NetBeams/Eclipse for Java.

I really don't understand what more do you want? They are cross platforming, industrial standard.

QT sounds to me like what you're looking for really. You can use the Free and Open Source Version of the corp version. And because you stated you want something industrial strength, that seems to match what you want.

OpenGL is just fine, look at World of Warcraft. Surely you can't say the OpenGL version is inferior to the DirectX version. They are identical.

SDL is so much more simple than DDraw.dll Cario is so simple and powerful as well. Companies dont use them? Look at Yahoo games and youll see a sdl.dll that comes with their projects. Imagine that!

Many great game works have been developed using these tools.

My question is, are you looking for a answer? Or are you trying to complain? We've given you everything you ask yet you belittle it every chance you get without real explanations on why except "Its not good enough for me!" or some baseless claim.

I'm sorry I just don't know what more do you want/

docesam 09-18-2009 04:13 PM

Quote:

Originally Posted by archlinux_jessica (Post 3688937)
I'm afraid I don't get your point. Microsoft provides designers and tools for their OS only, yet your topic is about cross platforming tools. Linux provides every programming system under the sun as well, but because you don't like them, you seem to think they are bad.

And I'm afraid your wrong on all points. It saves time? If you provide a standard of functions and codes to use on any language, you can easily save time. Being able to save time and not sacrifice performance or security is a very good, yet often overlooked. I can design web pages faster and more powerful than any person using Web Design tools, because I can easily see what the results are going to look like as I'm coding. Editors provide limited functionality because they restrict the user to a certain set of rules. No matter how well designed a editor is, it cannot provide the creativity and customization that the programming world needs.

My company uses various Java tools and apps using oracle PLSQL systems. These tools are all comparable on Linux, so I don't see your point in how Linux does not have corporate strength tools.

"=> have you ever seen a presedent of a country who go and supervise all and every policeman while that policeman organize traffic or arrest a criminal?"

Apples and Oranges my friend. Does a Boss need to review the code written by their programmer character by character? Or can they just run the code and see it does the task with a level of performance allowed. Your example has no barrings on this conversation at all.

"=> have you ever seen a CEO of a big company who check attendance sheets or check if that electrician that they called earlier on came and fixed that damn light?"

Again not a good example to use. The electrician is a person. He does the job and if he doesn't do it well the customer complains and he gets fired. Good programmers develop good code, lazy programmers develop bad code. Just because it works doesn't make it a good program, if its completely bloated or is full of security bugs due to the editors shortcomings.

Linux provides the people with all the tools they use. Why do you think the mostly used server companies rely on is Linux based? Because its well designed and does the job without needless bloatware or security loopholes.

The Linux kernel is the largest software project in the world. People add and change thousands of lines of code daily nonstop, using basic editors and email. Seems pretty fast to me.

-Jessica-

you didn't get my point yet...

YES ,Linux tools work and work very well and the programs produced by them is better than the bad Micro$oft software.

However ,most programmers(companies) just don't care about that ,they want the tools that make what the customer need in the fastest possible time (money).that is why they appreciate M$ tools.

We need to convince those programmers that our tool are better (faster,productive and does save money) or at least if you (e.g. archlinux_jessica) does not like these time saving tools ,they are available to whom want them.

And by the way you didn't understand my example ,go back and think about it again :).
hint: CEO (programmer) does not need and should NOT care about/supervise/do those small details that can be automated by "tools".

archlinux_jessica 09-18-2009 04:37 PM

Hmmm
 
I think I went over your head a bit with explaining how your examples don't work. The programmer does indeed need to care about the details because if they don't, they will create code that is both bloated and insecure. If a CEO continues to get complaints about the quality of their employee's work then they go find a better employee, at least that's what they SHOULD. But magically when it comes to software, they feel that its not that important.

You still don't understand that you can save time without hindering performance or security. You seem to have it programed in your mind that bloated expensive programming tools = faster development. At college we had a C/C++ class and had a project. My program was always designed above and beyond anyone elses in the class. Did my program take longer to make? Nope. Did it use more code? Nope. Did it use more resources? Nope. Because I had experience and a plan on how to properly create software. I had my own tools that increased my productivity that I created and improved performance. Programming requires creativity and understanding on how the "details" work in order to be a good programmer. If you don't spend your time learning the basics, how can you expect to get into the hard stuff? That's like trying to run before you have a chance to walk.

And as far as what companies use. I'm afraid your off once again a bit. Many companies are using Open source software for their corporate level work. Many use open office for their basic workers and Java tools that may not exactly be open source but are cross platforming. Once again QT is also a example of a Open Source and Non Open Source development tool. And did you miss my example on those that DO use these tools? Perhaps Yahoo isn't a company up to your standards... Nether is Blizzard...

(Though I do wish for a Linux native version of WoW... But at least I can run it on Wine perfectly... Better than nothing I guess).

I do agree that CEO's and companies need to look more into open source tools. I guess were not completely disagreeing. But your comments go against you when you state that you want a Visual Studio like app. Tell me precisely what you have against CodeBlocks or QT... I want details on why these are not suitable.

docesam 09-18-2009 05:34 PM

Quote:

Originally Posted by archlinux_jessica (Post 3688988)

I think I went over your head a bit with explaining how your examples don't work. The programmer does indeed need to care about the details because if they don't, they will create code that is both bloated and insecure. If a CEO continues to get complaints about the quality of their employee's work then they go find a better employee, at least that's what they SHOULD. But magically when it comes to software, they feel that its not that important.

That is true. they should go into the details (e.g. evaluate their employees ) but they should go into this low level work ONLY if they need to. doing this routinly is the work of the "tools" available to them.


Quote:

Originally Posted by archlinux_jessica (Post 3688988)
You still don't understand that you can save time without hindering performance or security. You seem to have it programed in your mind that bloated expensive programming tools = faster development.

at least that is what most companies think and thus choose microsoft tools (see also next quote)



Quote:

Originally Posted by archlinux_jessica (Post 3688988)
At college we had a C/C++ class and had a project. My program was always designed above and beyond anyone elses in the class. Did my program take longer to make? Nope. Did it use more code? Nope. Did it use more resources? Nope. Because I had experience and a plan on how to properly create software. I had my own tools that increased my productivity that I created and improved performance.

you can say that your outstanding skills made difference in this small project. tools are only one part on the equasion.


Quote:

Originally Posted by archlinux_jessica (Post 3688988)
Programming requires creativity and understanding on how the "details" work in order to be a good programmer. If you don't spend your time learning the basics, how can you expect to get into the hard stuff? That's like trying to run before you have a chance to walk.

that is true for sure but ONLY when necessary . doing that routinely is a waste of time.


Quote:

Originally Posted by archlinux_jessica (Post 3688988)
And as far as what companies use. I'm afraid your off once again a bit. Many companies are using Open source software for their corporate level work. Many use open office for their basic workers and Java tools that may not exactly be open source but are cross platforming. Once again QT is also a example of a Open Source and Non Open Source development tool. And did you miss my example on those that DO use these tools? Perhaps Yahoo isn't a company up to your standards... Nether is Blizzard...

any documented statistics?


Quote:

Originally Posted by archlinux_jessica (Post 3688988)
I do agree that CEO's and companies need to look more into open source tools. I guess were not completely disagreeing. But your comments go against you when you state that you want a Visual Studio like app. Tell me precisely what you have against CodeBlocks or QT... I want details on why these are not suitable.

they are suitable and valid tools ,million of programmers use them. but M$ stuff provide more PRODUCTIVITY . you are right ,it is programmed in my mine due to the amount of comments and opinions i read in the internet as well as my own experience.

one example of that : in visual studio you can hover the mouse over a keyword and you get syntax help. press F1 and you get full reference material. that is just one example .off coarse i am not lazy to get c++ reference over the web ,it is just that it is unnecessary time wasted that tools SHOULD save it(why not?).

Can you provide an evidence of the contrary ?

archlinux_jessica 09-18-2009 08:16 PM

Again...
 
“That is true. they should go into the details (e.g. evaluate their employees ) but they should go into this low level work ONLY if they need to. doing this routinly is the work of the "tools" available to them.”

“you can say that your outstanding skills made difference in this small project. tools are only one part on the equasion.”

“that is true for sure but ONLY when necessary . doing that routinely is a waste of time.”

Now were starting to get to the heart of the issue. Your level of software design is the result of learning to use tools. Learning only to use these tools only makes you a tool yourself, because anyone can use a bloated interface over and over to make their programs. What separates many true open source developers from “tool” programmers is that they rely on the tools to work quickly. This is because of poor development design. A true programmer doesn't routinely have to do these functions because they design their code to be portable. You design your functions to handle general purposes with very little editing. You edit the function if you find a better way of doing it and thus your software evolves to become faster and less bloated. Linux is where it is today due to this design structure and it has won over many because of it. You are a slave to what your tools provide and thus can never grow or learn beyond them.

I design a windowing system to meet the basic needs. I don't need to create one every time I create a new program, because its designed in a function and can be imported through a header file or copy and pasted into the code. That's why my code usually was created more quickly and more reliably because I knew exactly how it worked. While you spend time learning changes made in your tools by the software company that made them that only seems to get more bloated and less reliable, I'm still using things that ether I written or someone else in the company has that I can see and understand. Functions come and functions go, but in the open source world they evolve and improve.

“any documented statistics?”

About what? What Yahoo uses or Blizzard uses? You stated that software companies do not rely on these tools, in the context of games. I offered you two highly respected companies, one defines their very corporation off of games. And you ask for statistics? How about not avoiding my statements that contradict yours and focus on them for a moment? I stated my company uses Jdeveloper, PLSQL and various Oracle software tools that are available on Linux, I know because I installed the same tools on my Linux box so I could work at home. Various offices use Open Office for their basic work, while the higher development work usually consists of MS Office. While Open Office is a very nice system, people have been trained and are more comfortable with MS Office on higher level work, no point in hiding behind that fact. If people were more schooled on OpenOffice using their Basic system and various higher tools, then OpenOffice could easily take over that field as well. Its more about training than design flaws. But if you want to argue against OpenOffice and MS Office go ahead somewhere else because I'm not going to state its just as powerful, because its not completely comparable. It is amazing in its own design, but if your focusing on MS Office than OpenOffice wont work for anything outside basic work. But that doesn't stop companies from using that for basic data entry people like my company does.

So until you can discredit Yahoo and Blizards use of SDL and OpenGL than I really wouldn't continue to avoid the subject if I was you.

And for your Visual Basic example. Gambas? It will do the feature you just stated. Jdeveloper does as well and so does Eclipse. I'm not sure about QT but it does have various interface designs, or as you call them “Tools”.

And I have provided evidence, you just are ignoring them. I'll say it again because you seem to want to avoid it. Blizzard uses OpenGL for their 3D graphics along side DirectX. Yahoo uses SDL for their 2D graphics on their games. Want proof? Look into the config file for World of Warcraft and online, you'll find a OpenGL option you can put in. And for Yahoo. Download one of their games and you'll find SDL.dll in the main directory. I'm sure you can name many companies that don't use these tools but the very fact that a large gaming organization does use these tools contradicts your very claim.

Besides. Your on the offensive here my friend. I'm on the defensive. The burden of proof lies in your court. Even though I already did give proof.

smeezekitty 09-19-2009 09:22 PM

@archlinux_jessica
only 17 posts and you wrote something that doesnt even
fit on a 800x600 screen LOL
and also i need to quit trolling

detectedstealth 09-28-2009 05:24 AM

*docesam: WOW you must be a C# programmer, because if you were a C/C++ programmer you would know that Microsoft Visual Studio 2008 sucks for C/C++ development. The built in intellisense doesn't work 98% of the time, you get all these retarded errors: "Can't open dbp file". Microsoft tries to force you to use the extensions that they created which does not allow you to port your code. The list goes on and on. And yes I have used VS for 8 years (programming for 14) and I would rather use opensource tools any day. Why don't you learn VIM or Emacs if you want to be a real coder? Man do you even know how to work with memory? IE: Create a linked list, binary tree??? NO that does not mean using C# List<> lol

As for the game industry considering I am a game programmer. There is nothing that Visual Studio provides you that any other type of editor wont. Now if your talking VS + C# then yes VS is awesome and makes you highly productive. However it is useless for C/C++ programming. Like people have already commented VS is for lazy programmers who don't truly understand what they are writing. Oh yeah and with VS I want to see you automatically download any dependency like you can with both Linux and FreeBSD...

*archlinux_jessica: I agree with everything you said 100%. To be honest it seems like "docesam" is a drag-n-drop coder, and to be honest I am sure you can agree Linux was designed for real coders, Windows was designed for drag-n-drop coders.

Oh yeah one last thing "docesam" if you are a coder and want a highly "productive" tools (IDE) why not get off your butt and create one? You know you can use Qt to create an IDE pretty rapidly lol It's one thing to talk about "this sucks - that sucks" but you see a real programmer fixes the problem when they see one.

archlinux_jessica 09-28-2009 10:57 AM

More
 
Thank you detectedstealth :)
And smeezekitty, I know I’m a bit of a newcomer on these forums but not exactly a newbie in programming or Linux. I just haven’t been in the forums much until recently. And I sometimes have a lot to say, and on this subject I can go for days ;)

It just gets me that so many people are coming out of the IT college fields with this kind of mentality. The art of programming seems to be lost in many of these people. People seem to think now that coding with a basic text editor is the “Old” way of programming. That over time people have come up with a better way and like to throw around the word “Productive” a lot. But please tell me how this is any better than the “Old” system.

Long ago people used to code off of punch cards. It was a hard, tedious project that required no errors or debugging and took hours and hours, sometimes days for a program to run. They had no order sort and were very low level. Eventually we moved into more digital means and developed electronic ways of storing data. This brought us things such as tape decks and floppy disks. These allowed us to save data much more simply and changed the face of programming all together. It was much faster and more reliable than the old system and the IT world was changed. With newer and more powerful systems, we created better languages that could perform tedious tasks with one line of code verses multiple lines of code to do a simple task, such as printing to the terminal. This helped back then because we didn’t always have a means of copy and pasting our code to make things faster, and it allowed for us to group our code effectively without taking a hit on performance. Programming was reshaped, by increasing productivity while not hindering security or stability. Really all a higher level language was, was using coding standards as a language, building functions to take care of tedious tasks and wrapping them into a “Language”.

Is that what we have with Visual Studio and C#? Absolutely not! It is taking a good concept and overdoing it to the point of losing its usefulness. It is focusing too much on speed and easiness while taking a major hit on performance and security. When you rely on too many libraries you find yourself at the mercy of any bugs or vulnerabilities of these libraries without a clue on how to fix them. You may be able to code basic programs faster, but try a higher level project and it becomes bloated and open to attacks (Reference Windows Vista for an example).

I guess the question is, do you code faster with these tools? I certainly don’t. I can type circles around any high level programming tool out there. I’m not restricted in what I can do, while when using one of these big editors, I find I am very restricted. It creates more lazy programmers that do not try and think about finding a better way to program (aka program “smarter”). And in order to provide any decent functionality, a GUI must become very encryptic in order to be useful, making the user do more and more work to create simple objects (isn’t the point of using it to make it faster and easier?) And you have to be trained with each version that comes out that decides to change everything, while programming in any language is very similar once you have the basics down.

Do game corporations use languages such as C#? Very little. Game development is a difficult type of programming. I can’t tell you how many people I’ve run into that wanted to get into “Game Programming”, only to give up before learning to write a decent small program. Game development takes a lot of patience and focus on detail. Performance is key in game development because you have to fit artificial intelligent design and game dynamics all inside a 30 – 60 frames per second loop cycle. Yes computers are getting faster, but at the same time, games are becoming more and more complicated. Sure you can build pong extremely easily now on a modern computer, but do you think anyone’s gonna care about that? Also with the advancement of mobile games, performance and speed is even more essential.

Also you have to ask yourself. If you was part of a large scale gaming corporation, which would you rather have? A coder that only knows how to handle bloated GUI development programs and a bloated and slow language? Or someone who knows how to program rapidly in a shell screen that knows all about performance and memory usage? That can learn to adapt and has well defined, useful programming standards. I don’t know about you but I take my profession very seriously and am constantly learning day by day. Don’t want to spend your time learning the details? Tough. No one forced you to be a programmer and sooner or later you’re going to learn that life is hard. When you’re competing with hundreds of pointy clicky programmers for a job, you better find a way to stand out. ;)

-Jessica-

PS. Sorry again for the long post. I told you I could go on for days!

smeezekitty 09-28-2009 01:47 PM

Quote:

but not exactly a newbie in programming or Linux
what languages do you program?
Quote:

hat is true for sure but ONLY when necessary . doing that routinely is a waste of time.
WTF? the point is perfectally valid

archlinux_jessica 09-28-2009 04:52 PM

to Kitty
 
What languages do I program in? I'm mainly into C and various Web Page languages. But I'll list all the ones I've used and learned.

C/C++, COBOL, ASSEMBLER (IBM at College and TASM at home, played slightly with NASM but not much.) BASIC (Grew up learning since I was 5), RPG (The language not the game style ;) ), Java (Both applet and Swing), HTML, Javascript, DHTML, PHP, ASP (Didn't have a option at work), MySQL, PLSQL, VBSCRIPT (ActiveX, once again at work)... I think that's it so far, I might have missed some though.

I can handle Shell Scripting in Linux if I need, but it involves Googling at times because I have yet to memorize many things in it. Same with DOS.

I can program in both the Windows and Linux environment and perfer not using too many bloated C libraries to code, sticking with Win32, X11 for GUI programming in C running side by side (Using #ifdef __WIN32__ kinda stuff)

I'm not afraid to go into source code of open source programs to learn or modify if needed.


Now for your next statement, I'm not sure I understand you correctly when you state that it was perfectly valid, was you talking to the owner of this thread or to me?

smeezekitty 09-28-2009 09:01 PM

Quote:

Originally Posted by archlinux_jessica (Post 3699821)
Now for your next statement, I'm not sure I understand you correctly when you state that it was perfectly valid, was you talking to the owner of this thread or to me?

the original poster

smeezekitty 09-28-2009 09:03 PM

<removed by me because it was inappropriate>

detectedstealth 09-29-2009 01:14 AM

You know what blows my mind more then anything... Why is it that people coming out of school who have learned to drag-and-drop a GUI together think that they are a programmer? Microsoft really really screwed things up for people. No wonder why 90% of the technology industry just keeps copying other peoples ideas instead of creating anything innovative. Or why employers are starting to think it is ok to pay programmers $12 hourly.... heck I can make more then that pumping gas.

I am not sure how many other programmers are out there like me, but I don't really care about making normal GUIs. I am more focused on making GUIs that are built with OpenGL which my AI engine is controlling while it is monitoring my web community. GUIs as I think many people have forgot are for more then just point and click interfaces they are for data visualization, and highly interactive applications.

My point being no matter what IDE you use, or language you will not be able to make really cool software unless you understand your computer and what your language is truly doing. But if you are one of those programmers who just want to use VS 2008 with C# because it is easy and you don't have to think... you will be kicking yourself in 3-10 years when they hire secretaries to do your job. Then you will be sitting there watching the real programmers continue to make leaps and bounds over coming the impossible. If you don't believe me just check out Expression Blend from Microsoft. For those who have not heard of it, it is Microsoft's new tool for designing GUI interfaces with C# and WPF. Oh yeah I forgot to mention it is for artists to use not programmers.

smeezekitty 09-29-2009 01:17 AM

@detectedstealth
WTF this is getting hairy

detectedstealth 09-29-2009 01:36 AM

Its not hairy it is honesty....

smeezekitty 09-29-2009 01:38 AM

just because i use an ide doesnt mean i dont know how to program
infact i dont use the autocomplete and such functions
the only reason i use one is because i can press a button to compile
instead of going to console of termenal

detectedstealth 09-29-2009 01:54 AM

I never said there is anything wrong with using an IDE... I said you need to understand the language/computer... and the only IDE that is going to wreck development for programmers in the long run is VS if you followed the link I sent you would understand how and why...


All times are GMT -5. The time now is 02:57 AM.