Choosing a programming language

3D modeling, image editing, programming, text editing etc. Discussion here is not directly related to any game titles we feature.

Moderators: Lone Wolf, Snake Man

Post Reply
Snake Man
Commander-In-Chief
Posts: 9338
Joined: 2000-07-31 22:01:01
Gaming Interests: ArmA, ArmA 2, Falcon 4.0 and OFP.
Editing Interests: All, I (try) to edit everything.
Location: PMC
Contact:

Choosing a programming language

Post by Snake Man » 2009-03-25 15:04:13

I've have limited experience on C programming from some years back, but right now I'm thinking that since almost every day I'm in a need of some sort of command line (cmd line) or graphical user interface (GUI) util to modify the games I'm editing, that perhaps it wouldn't be a bad idea to start really learn C/C++ coding again.

Right now I was doing some research to which language really is the best option. I found this piece of text from wikipedia:
Combining and averaging information from various internet sites, langpop.com claims that in 2008 the 10 most cited programming languages are (in alphabetical order): C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, and SQL.
Source measuring language usage wikipedia.

And www.langpop.com.

My friends tell me that if I just modify game data files, then perl/python is the excellent choice, also recent util released in one game title was made with Ruby. I know few (if not many) guys use C# (which has the .net requirement) to build GUI utils.

So what our game developers think, what language is the most valuable for small type cmd line / GUI tool developing?

Or is the question more deeper; it doesn't matter what language you choose, its how you understand the programming itself? :)
PMC Tactical Forum New User Registration please read new info here.

PMC since 1984

Editing knowledge, visit PMC Editing Wiki
The leading, most detailed and comprehensive modification made for the Vietnam War - Vietnam: The Experience homepage
View our videos in PMC Youtube channel

PMC Tactical forum Advanced Search is power.

"ALPHA BLACK TO PAPA BEAR. ALL RUSSIANS ARE TOAST. OVER."

T_Rex
FreeFalcon
Posts: 848
Joined: 2001-03-04 23:01:01
Location: here

Re: Choosing a programming language

Post by T_Rex » 2009-03-25 20:13:12

I think the understanding is more important at this point.

I've actually invested in a C++ game development app, the LeadWerks engine. It is routinely updated, and is actually kinda a wrapper, so you can program in C# and the Blitz scripting language, I believe.

http://www.leadwerks.com/

I have VERY little programming experience, but was able to get a basic understanding relatively quickly.
Sic Semper tyrannosauro.

User avatar
Vigilante
Recruit
Posts: 33
Joined: 2008-12-03 11:41:58
Gaming Interests: Armed Assault (ArmA)
Editing Interests: All, I (try) to edit everything.
Contact:

Re: Choosing a programming language

Post by Vigilante » 2009-03-28 18:50:50

there is a very nice book, originally in english (i only have the german translation) its called the "C++ weekend crashcourse" (C++ Wochenend Crashkurs) by Stephen R. Davis [Original English language edition text and art copyright © 2000 by IDG Books Worldwide, Inc.] ...

Its separated into 30min chunks of learning, so on one weekend (15hours in all) you can learn the basics/fundamentals.... i like the 30min parts, since im hardly interested i more work for just checking out that stuff... but its for sure the next book i read...

So actually im proposing to learn C++, its the 'newer' C, so if you can do that you can do C too (good for PIC projects and such ;) [who doesnt thinks about building a simpit? ha?]) also its the language i ALWAYS read and hear when the game companies are hiring ... and you get eclipse or other opensource free IDE to do your work ... and the free microsoft visual c++ 2008 express edition ...

But there are a lot of C and C++ learning books, like the 'for dummies' series or the 'learn X in 24h' series and whatnot ...

I need to learn it because i need to programm some soft soon, handling/transfering windowspipes between two softs... so not even a gui or so ... should be a simpler task i found out in my research
a.k.a. PhilippRauch
Check out my Addons Wiki @ http://vigilante-systems.webs.com (WIP but already contains lots of infos)

Snake Man
Commander-In-Chief
Posts: 9338
Joined: 2000-07-31 22:01:01
Gaming Interests: ArmA, ArmA 2, Falcon 4.0 and OFP.
Editing Interests: All, I (try) to edit everything.
Location: PMC
Contact:

Re: Choosing a programming language

Post by Snake Man » 2009-03-28 19:18:43

My latest discussions with my pro coding friends and the usual observations throughout the net and gaming etc industry... definitely suggests that I'll start to (re)learn C++ so I can become a real programmer.

I'm hoping that in year or two, when there is need for "anykind" of small util for myself (heh yeah narrow the parameters when making "promises" hehe), then I'm able to just open up C++ file and start to develop it. (I just need to finish some of my game projects now so I can actually have time to learn C++ heh).

But I think there is still room for perl/python for those small scale quick & dirty game edits, like text editing or small database tweaking.

Keep the feedback coming.
PMC Tactical Forum New User Registration please read new info here.

PMC since 1984

Editing knowledge, visit PMC Editing Wiki
The leading, most detailed and comprehensive modification made for the Vietnam War - Vietnam: The Experience homepage
View our videos in PMC Youtube channel

PMC Tactical forum Advanced Search is power.

"ALPHA BLACK TO PAPA BEAR. ALL RUSSIANS ARE TOAST. OVER."

User avatar
Vigilante
Recruit
Posts: 33
Joined: 2008-12-03 11:41:58
Gaming Interests: Armed Assault (ArmA)
Editing Interests: All, I (try) to edit everything.
Contact:

Re: Choosing a programming language

Post by Vigilante » 2009-03-28 22:51:25

actually i fool myself into thinking, my knowledge of sqf helps me in learning C++ (too in the next 12 month *chuckle*)
:lol:

no seriously, my main problem, also with sqf, was/is to understand/'get' the ideas of inheritance and this kind of structured stuff you encounter there setting up 'proper' code ... after that it was MUCH easier for me to actually use that because then its basically 'only' learning a new 'language' i.e. new verbs and nomes (right term?) ... all the gramatical stuff is/was the hard part for me.
a.k.a. PhilippRauch
Check out my Addons Wiki @ http://vigilante-systems.webs.com (WIP but already contains lots of infos)

KKB
Newbie
Posts: 2
Joined: 2009-05-18 11:25:11
Gaming Interests: Armed Assault (ArmA)
Editing Interests: Modeling + Texturing

Re: Choosing a programming language

Post by KKB » 2009-05-19 11:15:40

Snake Man wrote:Or is the question more deeper; it doesn't matter what language you choose, its how you understand the programming itself? :)
Thats exactly it. Once you "got it"* language is secondary, it's more about the right language for the job at hand (or the limits the system sets, for instance it's nice to know FORTRAN (yes, I went for an absurd example to make a point :wink: ), but for serverside stuff you'll need PHP or PERL or whatever the system supports).

If more then one language is available and would be a sane choice (it's amazing what you can do with batch programming at the Windows Command Prompt, but sanity isn't the strong suit of elaborate batch files) go for the one you're most comfortable with.
The problem at hand will also dictate if doing it object oriented makes things easier or not etc.

To start getting into programming I sugest something that gives you fast results. All you need for JavaScript for instance is a browser (an error console like the one in FireFox is essential though) and notepad. No Compilers needed.

For something more elaborate I recommend Java or C#, since they're IMO pretty straightforward. If you want to share your results or a GUI is called for go for C#. Even though everyone has a JRE installed nowadays I came across too many *.jar files I couldn't run out of the box because the author forgot to include libraries or I would have made changes to classpath the author never mentioned.

I don't recommend C to learn programming (I still recommend to give C a shot later on though, since you learn alot about how things work under the hood), because the memory management is too important to get results, but too complicated for beginners to let them focus on other important stuff. Learning curve is steep. And if you don't program game engines or other stuff were every second counts C# or Java will get you there. Of course, if you need to have a mean lean exe without this virtual machine bs you'll need C too :wink:


* By "it" I mean the ability to think about the problem at hand, and breaking it down to functions and loops etc. Once you understand how to tell a computer what he should do it's only a matter of a reference manual (and maybe some source code in the given language to get a feel for how things are done) for any given language. For example, until last month I never wrote a line of PHP code, I somehow got stuck into a PHP class for beginners, and after I knew some basic stuff I was able to do complicated stuff, because in the end a loop is a loop in any language, only semantics are different.

Of course I would be completely lost with a functional language, because they don't even have loops (afaik) :mrgreen:

User avatar
DoctorX
Recruit
Posts: 38
Joined: 2009-06-04 02:15:18
Gaming Interests: Falcon 4.0
Editing Interests: All, I (try) to edit everything.

Re: Choosing a programming language

Post by DoctorX » 2009-10-29 23:47:24

I realize this is an old thread, and hopefully you have made progress with your programming studies, but having recently achieved my own personal C++ epiphony I figured I'd share it.

As far as programming languages go, C/C++ is arguably the most daunting and least straightforward language to learn, however it is also arguably the most highly regarded as far as "real" programming languages go, so I committed myself to learning it.


That was nine years ago.


I just started understanding it two months ago. 8-)


Seriously. I bought several books on the subject, read through them multiple times, and by the end of each one each time I came to the same conclusion... I don't get it. I took a course in C++ in university. Still didn't get it. So I sort of gave up and instead fufilled my programming needs with a scripting language, in my case I chose AutoIT ( http://www.autoitscript.com ). I found that much more straightforward and to me, the language made more sense, so I was able to pick it up quickly and spend more time thinking about how to design the program rather than how to decipher the syntax.

Still, I couldn't get over the fact that I wasn't "really" programming with a "real" language, so once I mastered AutoIT (which had a syntax that made sense to me), I decided to try to write my own library of functions with C++ that were equivalent to the AutoIT functions.

It took a little while (and alot of asprin) to figure how to translate the first function and figure out all of C++'s little foibles, but then there was literally a eurika moment where it finally all made sense. Ever since then I've been churning out code and have compilated a fairly substansial library of basic functions (file handling, string handling, GUI, etc... even starting to screw around with voice recognition :wink: ).


I didn't intend to learn C++ this way, but it worked for me. By breaking it down into small manageable problems and figuring them out one problem at a time, "learing by doing", I had exponentially more success than with my previous attempts. In fact, some of the more advanced areas I thought I would avoid (classes, Windows API, and the whole object-oriented paradigm) started making more sense and I was able to learn them even though I wasn't studying them explicitly.


I'm still learning, but if there's any help or advice I can give you just let me know.

-cheers

Snake Man
Commander-In-Chief
Posts: 9338
Joined: 2000-07-31 22:01:01
Gaming Interests: ArmA, ArmA 2, Falcon 4.0 and OFP.
Editing Interests: All, I (try) to edit everything.
Location: PMC
Contact:

Re: Choosing a programming language

Post by Snake Man » 2009-11-04 06:51:41

Wow, cool post, much appreciated.

I'm now learning C++ and I use the Qt Creator as compiler. I've been doing some small utils which very unstructured programming (I googled it up heh) way. Only now I'm reorganizing my sources into using lot of functions (or are they called methods now?) so they look more clean.

Just the past few days I've been trying to learn or understand fully how to implement the system that your "main.cpp" calls out just one function and lists one header file and then the program unfolds from there. So I have made changes to couple of my sources to split them up into main.cpp and function1.cpp, function2.cpp etc, still not sure why some stuff is not available on few functions etc.

Then of course the object oriented programming. I understand that I should learn it, but past few days also I've been looking into it a bit and I just so far don't comprehend how I can implement that class system thing for my own sources at the moment. I have looked some tutorial/example but it makes no sense to me relating to my own code.

Also the thing I'm trying to learn now is to understand the basic GUI in Qt to be able to draw a 2d painting like Falcon 4 theater terrain or ArmA 2 terrain elevations. So far I've not come up to any simple tutorials of "make main window, draw pixel to x,y like this" type tutorial which I'd need heh. I'll get there eventually.

But its just the learning progress, I'm really slow learner :)
PMC Tactical Forum New User Registration please read new info here.

PMC since 1984

Editing knowledge, visit PMC Editing Wiki
The leading, most detailed and comprehensive modification made for the Vietnam War - Vietnam: The Experience homepage
View our videos in PMC Youtube channel

PMC Tactical forum Advanced Search is power.

"ALPHA BLACK TO PAPA BEAR. ALL RUSSIANS ARE TOAST. OVER."

T_Rex
FreeFalcon
Posts: 848
Joined: 2001-03-04 23:01:01
Location: here

Re: Choosing a programming language

Post by T_Rex » 2009-11-04 14:35:46

BTW, the really good Unity engine is now available for free.

http://www.moddb.com/engines/unity/news ... developers

I grabbed it, just to have. :)
Sic Semper tyrannosauro.

Post Reply

Return to “General Editing (tools)”

Who is online

Users browsing this forum: No registered users and 7 guests