Heroes of Might and Magic Community
visiting hero! Register | Today's Posts | Games | Search! | FAQ/Rules | AvatarList | MemberList | Profile


Age of Heroes Headlines:  
5 Oct 2016: Heroes VII development comes to an end.. - read more
6 Aug 2016: Troubled Heroes VII Expansion Release - read more
26 Apr 2016: Heroes VII XPack - Trial by Fire - Coming out in June! - read more
17 Apr 2016: Global Alternative Creatures MOD for H7 after 1.8 Patch! - read more
7 Mar 2016: Romero launches a Piano Sonata Album Kickstarter! - read more
19 Feb 2016: Heroes 5.5 RC6, Heroes VII patch 1.7 are out! - read more
13 Jan 2016: Horn of the Abyss 1.4 Available for Download! - read more
17 Dec 2015: Heroes 5.5 update, 1.6 out for H7 - read more
23 Nov 2015: H7 1.4 & 1.5 patches Released - read more
31 Oct 2015: First H7 patches are out, End of DoC development - read more
5 Oct 2016: Heroes VII development comes to an end.. - read more
[X] Remove Ads
LOGIN:     Username:     Password:         [ Register ]
HOMM1: info forum | HOMM2: info forum | HOMM3: info mods forum | HOMM4: info CTG forum | HOMM5: info mods forum | MMH6: wiki forum | MMH7: wiki forum
Heroes Community > Tavern of the Rising Sun > Thread: Official Programming Thread
Thread: Official Programming Thread This thread is 3 pages long: 1 2 3 · NEXT»
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 08, 2010 11:46 PM
Edited by Shares at 10:20, 09 Feb 2010.

Official Programming Thread

I noticed that there was no programming thread here at HC, even though I'm certain that a lot (and I know of a few) program, not only mod. And maybe we should keep the heroes stuff out of this thread (there's plenty of other threads for that). Any way, there should be a thread about programming. A place to ask questions, tell people about your current projects or just brag with your skills and tell us what stuff you can program. And I guess there'll be some stuff about scripting and even some visual stuff.

So some examples of what I'm actually talking about. I for example is currently reading "Advanced programming" (the quote marks both symbolize sarcasm and rough translation) at school. There I get some extremly easy asignments and then free time, where I'm supposed to program on some free projects. I mostly make small, but often complex, applications to help when role playing. Especially for a game called EON, an extremly complex and quite realistic fantasy roleplaying game. I'm thinking about taking it to the next step and actually making a game out of it.

So there's short about my current projects, but there's a lot more projects that I'm planning to do, and projects that I have yet to finish.

There's also this thread!
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
pei
pei


Famous Hero
Fresh Air.
posted February 08, 2010 11:56 PM

I could use something like this if someone is into javascript and sql, TD perhaps?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 12:03 AM

I did a lot of scripting for a couple of years, but it was quite long ago. Mostly JASS and Java. I'm a bit(meaning a lot) rusty, but what is that you need?
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
pei
pei


Famous Hero
Fresh Air.
posted February 09, 2010 12:23 AM

I have no needs, i find the term "exchange of info" more fitting.

I learnt coding by myself(thx to google ) and i usually come up with some solution for my problems, the thing is that i sometimes have to google a while before finding anything useful and it could be handy to have another place of reference.  

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
TheDeath
TheDeath


Responsible
Undefeatable Hero
with serious business
posted February 09, 2010 12:24 AM

To be honest this thread will feel more like a programmer's blog rather than a 'thread' seeing as this is HC after all... why not try some programming forums?

And I don't know javascript or online stuff (php/sql/whatever)... I know C(++) and assembly language
____________
The above post is subject to SIRIOUSness.
No jokes were harmed during the making of this signature.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
pei
pei


Famous Hero
Fresh Air.
posted February 09, 2010 03:25 AM

yes...i wonder if TD has an upper lip or not...what side are u on???huh?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 08:55 AM

As mentioned I read "advanced programming" (quotes implies both sarcasm and rough translation), but I've decided to learn something useful instead. I'm thinking about C(++), Python or Perl. Propably C.
So what could HC recomend/suggest?
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
dimis
dimis


Responsible
Supreme Hero
Digitally signed by FoG
posted February 09, 2010 07:51 PM
Edited by dimis at 19:53, 09 Feb 2010.

It really depends on what you want to do and actually "get" from the process Shares.
Not many people use Perl these days; Python is a very easy alternative, but my feeling is that it is not good for introductory stuff. The reason is that it leaves much ambiguity for the beginner, and for real cpu-demanding problems it simply sucks. But on the other hand, this is not why Python was created anyway.

So, my suggestion is C/C++. And between the two, I think for starters C is better. If you know C you can do anything. C++ is - let's say - "a nice extension" of C that gives you extra power with the so-called classes. But this means that you already know the basic stuff, which is not really true (I suspect).

* So, what sort of OS (Operating System) do you have at home (at least, on the machine where you plan to program) ?
* Another question was hidden above; what do you want to do/achieve with this language ?
* Finally, do you have a plan of what you actually want to implement ? Do you want to play around with arrays and recursion ? Do you want to work with dynamic memory allocation; e.g. lists, stacks, queues, trees ? Do you want to learn these data structures ? What about complexity issues ? Have a look on your book and syllabus and write down something.
____________
The empty set

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 07:57 PM

Well, I've done som scripting before, mainly flash, html and JASS, but I've done some programming and the main reason I want to learn a programming language is because VB doesn't really cut it (Yeah, we read VB in school, hence the explained sarcasm). I've decided to go with Python for it's cross OS availability. If I'm not happy with it, I'll go with C#, but really, the most important thing is that it supports 3d objects.
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Warmonger
Warmonger


Promising
Legendary Hero
fallen artist
posted February 09, 2010 07:58 PM
Edited by Warmonger at 20:05, 09 Feb 2010.

Quote:
I think for starters C is better.

I disagree. Raw C is low-level 30-years old language with no use in user applications. C++, on the other hand, has clear structure, simplifies the process of developing actual software with its huge library base and is inspiration and reference for many high-level languages.
One should start with something convenient, then turn to memory allocation or byte/bit processing.
____________
The future of Heroes 3 is here!

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
ihor
ihor


Supreme Hero
Accidental Hero
posted February 09, 2010 08:17 PM

I'd say C++ is also past. I'd recommend to start right from .NET. Choose between C# or VB.NET(this is not VB). If you have some experience with HTML and javascript, then developing professional websites with ASP.NET, AJAX, Silverlight could be interesting for you. I myself am working with ASP.NET, so could help with it

 Send Instant Message | Send E-Mail | View Profile | PP | Quote Reply | Link
dimis
dimis


Responsible
Supreme Hero
Digitally signed by FoG
posted February 09, 2010 08:19 PM
Edited by dimis at 20:20, 09 Feb 2010.

Shares, simple advice: Forget the 3d objects right now. You do not know the basics.

Also, there is a difference between:
(1) I want to learn X programming language
and
(2) I want to learn how to program

My feeling is, that you want (2). Is this right or wrong ? What's the point of talking about ray-tracing, when you don't know how to implement simple stuff and have the job done ?


Warmonger, what do you mean ? A big portion of your OS (no matter what OS you use) is written in C. C++ simplifies the process with classes, but this also means that you know the basics, and hence you want to work in an object-oriented world. As of the "huge library", usually I am not a big "fan". The reason is simple; you can tailor each program and do exactly what you want, and in many cases you can do it faster than using these "huge libraries". The problem is, that using "black boxes" may be a faster way to develop a program, but when you actually want efficiency, it might not be the right way to go. Typically, a list or a tree with some user-defined data structure will do the trick faster. As of inspiration and reference; well, what about  C, that inspired C++ ? I mean, is this all about being "cool" when he will say to somebody else "I learn C++" (because of the "plus-plus") ? I don't think so; he doesn't know basic stuff. Finally, as of "clear structure", what sort of argument is this ? Clearer than C ? How ?
____________
The empty set

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 08:24 PM

No, it's the first one actually.
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
dimis
dimis


Responsible
Supreme Hero
Digitally signed by FoG
posted February 09, 2010 08:25 PM

Ok. So, why do you need thread for that ?
____________
The empty set

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 08:31 PM

I don't really, but it's an interesting and wide topic. There should be a thread about it. My only problem right now is to choose which language I should learn, and for now I've settled for python.
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
dimis
dimis


Responsible
Supreme Hero
Digitally signed by FoG
posted February 09, 2010 08:37 PM

Ok, when you encounter a problem, post.
____________
The empty set

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
TheDeath
TheDeath


Responsible
Undefeatable Hero
with serious business
posted February 09, 2010 09:34 PM
Edited by TheDeath at 21:36, 09 Feb 2010.

Quote:
If you know C you can do anything.
Not quite correct. You can do almost anything. And I'm not talking about low-level hardware stuff. If you interface C with a procedure from a library with a "custom" calling convention (i.e in assembly) or written in a calling convention your C compiler doesn't know, you're screwed.

I also hate the fact that you can't use "dynamic jumps" in C (even though the 'switch' statement does that 'under the hood', but it is very simplified!)... even though you can do "dynamic calls" with 'function pointers'... but other than that I love C.

And Perl's pattern matching is very useful dimis, I don't know Python but I don't think it has anything similar at all... I don't know the full Perl language, just the pattern matching because some software I use has it... and it automates a lot of tedious manual pattern replacements.


@Shares: Learn 'C'... it's one of the best ones, in "power" speaking (i.e how much you can do with it), one of the ones that the others are derived from (you may have heard of the phrase 'C-like language'), and it's simply more awesome than a 'scripted' language that doesn't compile to native binary.
____________
The above post is subject to SIRIOUSness.
No jokes were harmed during the making of this signature.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 09:51 PM

I'll go with Python for now, just because its' cross over abilities and the sheer lack of size makes it a lot easier to move around, which'll be good for me that travel a lot between a lot of computers in different places. I really have to get a laptop, and when I do, I'll propably go for a C-language, propably sharp. That's my plan for now.
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
TheDeath
TheDeath


Responsible
Undefeatable Hero
with serious business
posted February 09, 2010 09:58 PM

Python may seem a little complicated for initial though, because it combines object-oriented with structured programming, or so I read. C is only structured/procedural.

Also what do you mean by 'lack of size'? A C compiler is very tiny, it's the API interface that's "big"... of course Microsoft software is terribly bloated (Visual C++), but if you get MinGW (GNU compiler on Windows, otherwise you already have it on Linux... most open-source software has to be compilable after all...), it's only around 70MB, with all the includes and stuff... but the compiler itself is tiny)


C# is crap btw. Personal taste tho
____________
The above post is subject to SIRIOUSness.
No jokes were harmed during the making of this signature.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Shares
Shares


Supreme Hero
I am. Thusly I am.
posted February 09, 2010 10:02 PM

Python was 16MB, and with C you also have to get .NET. Most people have it, but not every one. Heck, a lot of non hard core gamers, programmers/modders don't have it when I think about it!
____________

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Jump To: « Prev Thread . . . Next Thread » This thread is 3 pages long: 1 2 3 · NEXT»
Post New Poll    Post New Topic    Post New Reply

Page compiled in 0.0540 seconds