Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411430 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 07:28:34 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperTechnical (Moderator: ThemsAllTook)Programming Language to start with
Pages: [1] 2
Print
Author Topic: Programming Language to start with  (Read 4264 times)
♪ Redix ♪
Level 0
**


Timetraveler


View Profile
« on: February 28, 2013, 04:58:26 PM »

First, i don't know if this is the right section, and if is not i hope a mod will move it to the right one.
So i want to get in the life of an "indie game developer" i know it sounds kind of silly. I'm 18 years old so i assume i have time to learn and is not too late.

I'm confused what programming language i should learn first, what softwares to use and some useful tips. I don't have any knowledge of any programming language, i know the basics of Photoshop and that's it. So with what should i start first, programming, more photoshop...?
Any tips and oppinions will be useful, thank you.
Logged





ThemsAllTook
Administrator
Level 10
******



View Profile WWW
« Reply #1 on: February 28, 2013, 05:15:46 PM »

Sounds like a nebulous goal. Do you want to be self-sufficient and make games as a living, or just do some cool stuff as a hobby? Do you want to specialize in artwork and contribute to a team working on a game, or make something on your own? Photoshop won't help you write a game, so if you want to do it on your own, you'll need to learn something about programming. Which language is most appropriate depends on a lot of things, though once you know one programming language, it's fairly trivial to learn another.

I don't really know what to recommend for starting these days. Maybe Python? You'll need to get comfortable with the basics of programming before you actually write any game code, so what I'd do is read through some getting started guides (maybe this one?) and play around with a test program on the command line for a while.

A small tip: Every new game developer fails at their first serious project. It's going to be too ambitious, and will become unmanageable long before you finish. This happens with remarkable consistency. Hopefully, you'll learn from the experience, write something tiny and actually finish it, then with some new perspective be able to climb the ladder and work toward larger projects over time.
« Last Edit: February 28, 2013, 06:09:27 PM by ThemsAllTook » Logged

Ryland
Level 0
**


View Profile
« Reply #2 on: February 28, 2013, 06:08:05 PM »

I second Python. A lot of people will tell you it's too slow, but that doesn't matter as you're just starting to learn. If speed is an issue, you're probably trying to make something to complex for your first game anyways.
Logged
♪ Redix ♪
Level 0
**


Timetraveler


View Profile
« Reply #3 on: February 28, 2013, 06:21:14 PM »

@ThemsAllTook
Yeah, it is kind a nebulous goal. As for making games as a hobby or for living i would say both, of course at the beginning i probably can't do bigger things, so i will focus more on learning and i will do what i can as a hobby in my free time. Yes i want to make something on my own for a while untill i got the decent skills for making a decent game. For the future i'm thinking having a few people's joining me and then create an indie game studio or join an existent one, who knows, but for a while i want to learn and do it on my own.

As for photoshop, i don't have any magnificent skills for doing bigger artworks, just basics pixel art and for the moment learning more photoshop is not my goal, i want to learn programming.

Python hmm-.. I thought about it, but i saw it was inspired by C and C++, so i was thinking of learning that first, but yet i'm so confused, 2 days ago i wanted to learn GML ( Game Maker Language ) seeing is pretty easy and i'm still confused with what should i start first.
« Last Edit: February 28, 2013, 09:02:10 PM by ThemsAllTook » Logged





Gregg Williams
Level 10
*****


Retromite code daemon


View Profile WWW
« Reply #4 on: February 28, 2013, 07:07:49 PM »

In the end it doesn't matter, just pick a language and start.  I went from basic on a trash 80 to turbo C. Most programming is really about logic and thinking about flow and how to solve a problem, programming language syntax is pretty minimal in that.

Logged

rosholger
Level 1
*



View Profile
« Reply #5 on: February 28, 2013, 07:54:23 PM »

well about learning c/c++, both of those languages are from what i have heard really hard, python is an attempt to make an easy language so it is very much suited for a first language.
game maker is also a good place to start. just pick one and go for it it will involve a lot of learning which ever you chose and one is not better than the other.
Logged
ThemsAllTook
Administrator
Level 10
******



View Profile WWW
« Reply #6 on: February 28, 2013, 09:02:25 PM »

at any rate you changed it, so it's a non-issue

Indeed, let's just leave this one alone please. Removed drama from thread.
Logged

Muz
Level 10
*****


View Profile
« Reply #7 on: February 28, 2013, 09:05:20 PM »

Go with the really easy stuff first - Game Maker, Multimedia Fusion, Construct, modding other games. Starting with something like C is like reading Shakespeare when you don't even know your ABCs. You'll figure it out, but it will be painful. Most of us who did just had nothing better to do (or really wanted to make a game)

Python is ok too. My 12 year old sister managed to code something in Python in a couple of days with no experience, so it's not too bad.

Try something like the videos on Udacity or Wibit.net. Wibit will hold your hand through C and the basics (something like learning through college). Udacity throws you into programming Python from the start. But they're fun and teach you the foundations.

Logged
nikki
Level 10
*****


View Profile
« Reply #8 on: March 01, 2013, 01:58:22 AM »

yeah python would be good, gamemaker would be good too.
which one is better would depend on what you think is more important :
gamedesign or programming skills.
I think you need both, so try em both.



for learning python when a beginner I think this is the best place ever
Quote
This simple book is meant to get you started in programming. The title says it's the hard way to learn to write code; but it's actually not. It's only the "hard" way because it's the way people used to teach things using instruction. This book instructs you in Python by slowly building and establishing skills through techniques like practice and memorization, then applying them to increasingly difficult problems.
Logged
ஒழுக்கின்மை (Paul Eres)
Level 10
*****


Also known as रिंकू.


View Profile WWW
« Reply #9 on: March 01, 2013, 03:56:09 AM »

most languages are pretty much identical; i started with qbasic, then went to c, hamsterspeak, game maker, as2, etc., and didn't really notice all that much different between them. the biggest difference is that some are object oriented and some aren't. but other than that the differences are only basically in which key words do what

when making games, you are only going to use a small percent of a language's features. it's not like you need to learn every obscure part of a language to make a good game, all you basically need are for loops, if-then statements, how to assign values to variables and arrays, that type of stuff. and that type of stuff is almost identical between all programming languages. you can learn enough about programming to make a simple game in a week, no matter what the language

so i'd suggest not worrying about which crayon or pencil or pen you are going to use to draw with, and instead worry about what you intend to draw
Logged

nikki
Level 10
*****


View Profile
« Reply #10 on: March 01, 2013, 04:07:13 AM »

Quote
most languages are pretty much identical; i ...
anecdote ain't data you know.

check this for some real life differences:
http://en.wikipedia.org/wiki/List_of_Hello_world_program_examples

I do however completely agree with your conclusion Wink
Logged
impulse9
Guest
« Reply #11 on: March 01, 2013, 04:54:56 AM »

Python if you want to get your feet wet with programming.

C if you want to actually become a worthy programmer one day.
Logged
sublinimal
Level 8
***



View Profile
« Reply #12 on: March 01, 2013, 05:00:51 AM »

^Eventually you should know both, but start with Python.
Logged
ஒழுக்கின்மை (Paul Eres)
Level 10
*****


Also known as रिंकू.


View Profile WWW
« Reply #13 on: March 01, 2013, 05:18:57 AM »

Quote
most languages are pretty much identical; i ...
anecdote ain't data you know.

check this for some real life differences:
http://en.wikipedia.org/wiki/List_of_Hello_world_program_examples

I do however completely agree with your conclusion Wink

i meant most commonly used ones -- of course there are rare languages which nobody would ever use for games which work completely differently. also, most of the differences in that article are just syntax, they aren't differences in how they work. no matter what the syntax, most languages have variables, flow control (loops and conditionals), and functions (or a way to use "goto" to simulate functions in the case of very early languages)
Logged

nikki
Level 10
*****


View Profile
« Reply #14 on: March 01, 2013, 05:48:18 AM »

that's true and all female mammals have mammary glands, that still doesn't make them 'pretty much identical'.

if you -for example- take the c++ hello world (assuming we agree c++ is not a rare languages which nobody would ever use for games)
Quote
#include <iostream>
int main()
{
    std::cout << "Hello, World!" << std::endl;
}

you are confronted with : header files, main loop entry point function call (with no argument) and a missing return value, namespaces (std), scope resolution operator, cout , endl , insertion  operator and one semicolon .
oh and don't forget the { } .

for a beginner these are the 'weird' characters you have to type :
#<>(){::<<""<<::;}
for a simple 'Hello, World!' it's quite alot to grasp/ to do wrong.

on the other hand the python example
Quote
print("Hello, world!")
just confronts you with one function call and an argument to that call.


there is  a good reason universities start teaching with Python nowadays. and not c++.

Logged
ஒழுக்கின்மை (Paul Eres)
Level 10
*****


Also known as रिंकू.


View Profile WWW
« Reply #15 on: March 01, 2013, 05:59:14 AM »

i don't really see any difference at all between those two examples; different computer languages aren't even as different from one another as different human languages are (say, english vs russian). the difference between different computer languages is largely syntax and formatting, whereas the difference between human languages is much greater -- if you know one computer language, you can learn another in a few weeks, whereas knowing english won't help you at all when learning russian, it'll still take years and years
Logged

nikki
Level 10
*****


View Profile
« Reply #16 on: March 01, 2013, 06:30:09 AM »

nah your right my dog is almost identically to a giraffe too and  Panda ==  Tiger
...if you know one computer language, you can learn another in a few weeks...

I am glad to see you became a much better programmer though in the last two weeks.

..learning an entirely new engine and IDE takes months to years...

the only real similarities in those two examples is the string "Hello, World!"
and because you know and have been working with (different) programming languages for a long time you see many (conceptual) similarities.
But the OP is a beginner (hasn't touched a programming language)

but whatever.
to the OP

try Python Wink
Logged
♪ Redix ♪
Level 0
**


Timetraveler


View Profile
« Reply #17 on: March 01, 2013, 07:05:23 AM »

Thank you all for the answers. In the end i decided to start with Python, then probably i will stay around a while with Game Maker before i will get into C. As impulse9 said, i just want to get my feet wet with programming and Python seems pretty easy. I don't want to hang really long on Python and if after i decide to learn another programming language what should it be? Game Maker Language or C?

Also i found this playlist with Python tutorials: http://www.youtube.com/course?list=ECEA1FEF17E1E5C0DA I guess is good to start with. As for IDE i want to use Eclipse with PyDev plug-in. If you have any useful links for python tutorials please post them, and is Eclipse and PyDev a good combination to start?
Thanks again.
Logged





nikki
Level 10
*****


View Profile
« Reply #18 on: March 01, 2013, 07:27:35 AM »

I wouldn't worry about what to do after Python at this point, thats for another day.
I would advice against any ide at this point.

Python has nice repl environment by nature. You don't need an ide for that.
And running a python file is just a matter of
Quote
python yourfile.py

So again don't use an ide it'll only be alot of unneeded crap that can go wrong. just follow the right steps for your os
and continue on to the next exercise and you'll have written your first Python program within an hour. I promise.
Logged
kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #19 on: March 01, 2013, 07:44:39 AM »

I'll back what other(s) said - In the end it doesn't matter what language will you start with. Going python as 1st language, you'll probably end up with same experience as somebody who started with any sort of BASIC / LUA. Doesn't matter I think.

Personally, I had this route:

Macromedia Flash MX + ActionScript 2* -> RPG Maker 2003 -> DarkBASIC Professional -> A bit of LUA -> C++

I started with AS 2 when I was about 8 though, switched to RPG Maker 2003 when I was like 10, then to DBPro when I was 13, LUA when I was 14 and C++ when I was 15.

Also somebody mentioned hello world list in all languages. Here's an alternative site:
http://www.roesler-ac.de/wolfram/hello.htm

 Giggle
Logged

Pages: [1] 2
Print
Jump to:  

Theme orange-lt created by panic