The Thread for Programming
The Thread for Programming
I noticed that we have many programmers in talkhaus. So I made a general thread to talk about it.
How did you learn programming or scripting? What programming language do you prefer: C, Java, Haskell, etc.? Maybe you have experience with a more specialized language such as MATLAB or GML?
For me, the first language I learned was C++ as part of college curriculum. I liked it back then, but now it feels a bit mishmashed and confusing. Later I learned Java and I'm more comfortable with that.
return 0;
How did you learn programming or scripting? What programming language do you prefer: C, Java, Haskell, etc.? Maybe you have experience with a more specialized language such as MATLAB or GML?
For me, the first language I learned was C++ as part of college curriculum. I liked it back then, but now it feels a bit mishmashed and confusing. Later I learned Java and I'm more comfortable with that.
return 0;
Last edited by ano0maly 10 years ago, edited 1 time in total.
Re: The Thread for Programming
I'm in a game design class right now and we're using Python. It's pretty simple and easy to use, but I've not really used anything else.
- Diggertron
- Posts: 32
- Joined: 11 years ago
- Location: The United Kingdom of Great Britain and Northern Ireland
Re: The Thread for Programming
Programming fascinates me, but I've never really sat down and tried to learn how to code, with the exception of one small bit of HTML in class last year.
This is something I want to fix this year, however.
What's a useful, yet beginner friendly language to learn?
This is something I want to fix this year, however.
What's a useful, yet beginner friendly language to learn?
Skynet.That makes raocow a victim of proprietary software.
- Diggertron
- Posts: 32
- Joined: 11 years ago
- Location: The United Kingdom of Great Britain and Northern Ireland
Re: The Thread for Programming
Wow, thanks for that! :D
I think based on your post I'll look at C#
I think based on your post I'll look at C#
Skynet.That makes raocow a victim of proprietary software.
Re: The Thread for Programming
I did (not for actual applications and not at a heavy level). It's...unusual, mainly because it works so differently from anything in the C family and beyond. It does have a couple of neat quirks though.Cup wrote:(i've never used haskell)
If starting with HTML I recommend having a look at JavaScript, which has the added bonus of being able to manipulate HTML pages which means it's easy to play around with a graphical interface, which might be a good idea for beginners. Plus it has some really nice functional elements. (I'm not sure if I like how the object system works, though).
(Not a programming language, but as a complement to HTML I strongly, strongly recommend having a good look at CSS since it's pretty much mandatory to build any decently styled web page.)
Python seems to be quite popular but I still have to take a good look at it, though I'm not a fan of how it uses indentation as the only way to handle some parts.
For how little I've actually used it I also found Ruby to be pretty nice and easy to use, though I repeat I haven't really done anything relevant with it.
Java is fine, I guess, it has a bunch of nice immediately available libraries for all the basic functions.
- ultratowel112
- Posts: 22
- Joined: 15 years ago
- Pronouns: He/him
Re: The Thread for Programming
I had to do a little bit of HTML and Java(script? I don't remember exactly) in web design classes in high school, but it wasn't anything more than the most basic tutorial could teach you and I couldn't really do it without a guide now. I could probably understand it and picture what the page would look like, but I don't remember the syntax/key words. In another class, I did some of whatever Adobe Flash uses. Sidenote: I took Flash because some people said it would be a prereq for a game design class. That class never happened (probably because I was one of the few who was interested).
In college so far, I had to use C for simple robot programming (basic movement and playing a song), had a class on Python, used a bit of MATLAB for linear algebra, had a class in C++ (although we started by learning a simplified assembly and our final project was an app in Java). One of my classes I'm taking this semester will be using Verilog.
We covered GUIs in Python and my group made one in MATLAB for lin al, but we didn't in C++. I wish we did, although I don't know how difficult it would be. I'd imagine that it wouldn't be too different from Python, but I don't know for sure. Once I don't have much on my plate (probably over the summer), I might get into 65816 assembly.
In college so far, I had to use C for simple robot programming (basic movement and playing a song), had a class on Python, used a bit of MATLAB for linear algebra, had a class in C++ (although we started by learning a simplified assembly and our final project was an app in Java). One of my classes I'm taking this semester will be using Verilog.
We covered GUIs in Python and my group made one in MATLAB for lin al, but we didn't in C++. I wish we did, although I don't know how difficult it would be. I'd imagine that it wouldn't be too different from Python, but I don't know for sure. Once I don't have much on my plate (probably over the summer), I might get into 65816 assembly.
- Ashan
- The world has become a place
- Posts: 2825
- Joined: 14 years ago
- Location: Canada
- https://ashan.talkhaus.com/
Re: The Thread for Programming
I've been learning Java. My goal is to learn how to develop for Android, but I haven't even gotten to making GUIs of any sort so far. At the moment I can basically make programs that do math or spit out basic information, and make classes interact with each other. It's pretty fun from what I've learnt so far but I really don't know a ton.
Re: The Thread for Programming
When I was about 13, I hung around some of the Jedi Knight 3 modding communities and when I suggested a game for them to make, they pointed me to Game Maker, so I learned from that :)
It helped to have two older brothers who studied Computer Engineering (which is what I'm taking now, as well). I'm obviously biased, because we learn Python and Assembly at my university when we're starting out, but I think Python is a great beginner language, since the syntax is simple and gets you used to proper indentation and you don't have to worry about lower level things, like declaring variables.
https://www.coursera.org/courses/browse
It helped to have two older brothers who studied Computer Engineering (which is what I'm taking now, as well). I'm obviously biased, because we learn Python and Assembly at my university when we're starting out, but I think Python is a great beginner language, since the syntax is simple and gets you used to proper indentation and you don't have to worry about lower level things, like declaring variables.
https://www.coursera.org/courses/browse
Oui oui. Je suis très jambon.
Re: The Thread for Programming
i want to program really bad but im such a procastonator i'll probably give up before i can make anything worthwhile... (thats what i did with html nyahah)
spatula
Re: The Thread for Programming
So basically, the whole shtick with me is that I'm coming from a (mainly) web development background. PHP/MySQL are what I've been using in school (with a tiny bit of Javascript on the side), but a couple weeks ago I decided to start learning C and take that as far as I can.
Going from a web scripting language to a low level language like C is pretty intimidating at first, but I don't think it's so bad.
I'm a big nerd when it comes to software stuff - I wanna really understand how things like operating systems and game engines and compilers and stuff work and see what it's like to actually work on those types of things. With any luck, next year I'll be at a nice Uni studying Computer Science.
Going from a web scripting language to a low level language like C is pretty intimidating at first, but I don't think it's so bad.
I'm a big nerd when it comes to software stuff - I wanna really understand how things like operating systems and game engines and compilers and stuff work and see what it's like to actually work on those types of things. With any luck, next year I'll be at a nice Uni studying Computer Science.
Unless you want to learn Javascript or something as your first language or want to get into web design, I'd say not to bother with HTML. Procrastination isn't a good thing to do, but still. Also, I think it helps to have an idea of what you're interested in when learning a language - EG do you want to make web apps, a game engine, an operating system, and so on and so forth.Hazelnut wrote:i want to program really bad but im such a procastonator i'll probably give up before i can make anything worthwhile... (thats what i did with html nyahah)
I'm a lot like email, except instead of mail you get me.
-
Ditocoaf
Haustone Tournament Finalist
- Posts: 725
- Joined: 12 years ago
- Pronouns: he/him/his
- Location: On the horizon of the brandscape
- https://ditocoaf.talkhaus.com/
Re: The Thread for Programming
I guess I taught myself "the basic principles of programming" with GML as a teenager. Then in college I took some programming classes and I know a bit of C, Java, and Python. Programming is fun, especially when you make interesting things with it.
Re: The Thread for Programming
meow!
I mean
ror!
I mean
ror!
Trouble with a capital COW.
<math>\tan{A}\sin{N}</math>
- docopoper
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla non pharetra enim, nec maximus odio.
- Posts: 78
- Joined: 12 years ago
- First name: Shane Farrell
- Pronouns: they/he
- Location: Ireland
Re: The Thread for Programming
I started using GameMaker when I was about 10 and used it right up into college - so I've made hundreds of half made games (honestly premature optimisation is the worst thing ever) and a few complete ones.
When I got to college I found it pretty easy (and I still do) since it assumes you haven't been programming for eight years, but since GML was the only language I knew - I have still learned a lot. We learned C in first year and are learning C# now. I entered a Robocode competition in Java. Yesterday I entered a game I spent all year making in Python into the Imagine Cup (big Microsoft competition).
And I learned some C++ from a summer job and working with LunaDLL.
... Programming is so much fun!
Also - you should all buy my game when it comes out! It's called Utter Confusion and is about trying to maintain your ability to focus and fight off enemies while the camera starts spinning faster and faster. :D
When I got to college I found it pretty easy (and I still do) since it assumes you haven't been programming for eight years, but since GML was the only language I knew - I have still learned a lot. We learned C in first year and are learning C# now. I entered a Robocode competition in Java. Yesterday I entered a game I spent all year making in Python into the Imagine Cup (big Microsoft competition).
And I learned some C++ from a summer job and working with LunaDLL.
... Programming is so much fun!
Also - you should all buy my game when it comes out! It's called Utter Confusion and is about trying to maintain your ability to focus and fight off enemies while the camera starts spinning faster and faster. :D
The first thing I would do with infinite power would be to make myself a cave where I could look at my shadow forever.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
- SAJewers
- ASMBXT Level Wrangler/A2XT Project Coordinator /AAT Level Designer
- Posts: 4219
- Joined: 12 years ago
- Location: Nova Scotia
Re: The Thread for Programming
Am I the only on here who knows Visual Basic.NET?
I know a bit of Java and PHP thanks to a high school programming class, and had to take a VB.NET class in College.
I know a bit of Java and PHP thanks to a high school programming class, and had to take a VB.NET class in College.
- Ashan
- The world has become a place
- Posts: 2825
- Joined: 14 years ago
- Location: Canada
- https://ashan.talkhaus.com/
Re: The Thread for Programming
Is VB.NET developed by Microsoft, or what? I'm not really sure what Microsoft's relationship with it is.
- docopoper
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla non pharetra enim, nec maximus odio.
- Posts: 78
- Joined: 12 years ago
- First name: Shane Farrell
- Pronouns: they/he
- Location: Ireland
Re: The Thread for Programming
I don't know VB. I've never had a need to learn it.
The first thing I would do with infinite power would be to make myself a cave where I could look at my shadow forever.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
Re: The Thread for Programming
I know this is kind of out of nowhere but, well, here we go anyways.
I've been trying to teach myself C since a few months ago and it's going pretty well I think. I'm almost done reading and studying a C book that I bought that I think covers all the bases.
My goal is to develop a game in C. So I got SDL and everything and I've been looking for SDL tutorials for C but have found nothing. I've found a ton of tutorials that are either
a) SDL 2.0 with C++ or
b) SDL 1.2 with C
It seems that SDL underwent some significant modifications between its prior version and 2.0. What I really want is an SDL 2.0 tutorial with C. I haven't found a single one.
So I guess my question is, does anyone know of a C SDL 2.0 tutorial out there? Or if not, does anyone have any suggestions as to what I should do? As far as I can tell, my only other options are either
a) Try to teach myself SDL using the comments and whatnot included with the source and header files (which I've been trying and hasn't been going well),
b) Learn C++ (though I'd much rather put my C knowledge to use and not have to spend another eternity learning a colossal language), or
c) Use an earlier version of SDL, but that doesn't really seem like a good idea to me.
I'd really appreciate any advice. Thank you!
I've been trying to teach myself C since a few months ago and it's going pretty well I think. I'm almost done reading and studying a C book that I bought that I think covers all the bases.
My goal is to develop a game in C. So I got SDL and everything and I've been looking for SDL tutorials for C but have found nothing. I've found a ton of tutorials that are either
a) SDL 2.0 with C++ or
b) SDL 1.2 with C
It seems that SDL underwent some significant modifications between its prior version and 2.0. What I really want is an SDL 2.0 tutorial with C. I haven't found a single one.
So I guess my question is, does anyone know of a C SDL 2.0 tutorial out there? Or if not, does anyone have any suggestions as to what I should do? As far as I can tell, my only other options are either
a) Try to teach myself SDL using the comments and whatnot included with the source and header files (which I've been trying and hasn't been going well),
b) Learn C++ (though I'd much rather put my C knowledge to use and not have to spend another eternity learning a colossal language), or
c) Use an earlier version of SDL, but that doesn't really seem like a good idea to me.
I'd really appreciate any advice. Thank you!
- docopoper
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla non pharetra enim, nec maximus odio.
- Posts: 78
- Joined: 12 years ago
- First name: Shane Farrell
- Pronouns: they/he
- Location: Ireland
Re: The Thread for Programming
Hmm, well you're going to have a hard time writing a game in C. Object orientation is probably one of the most useful things you can have for writing a game. I honestly haven't written anything more complex game wise than a console based hangman in C, but you could always try interacting directly with OpenGL or something - I don't know how you would get input then though.
Honestly I recommend that you make a few console based games in C and then try learning something like C#. I know the temptation is always to go for the lowest level languages because they're the most efficient - but honestly these higher level languages exist for a reason - because it can be a complete pain to write anything sufficiently complex down at that level.
Heck, you could even try Game Maker - that's what I used for nine years and I am now well ahead of everybody else in college (except one other guy that also used GM for the same length of time). If what you want is to make a game quickly without much pain - then I recommend trying GM.
Still though - if you are dead set on using C, someone else might be able to give you advice geared towards it. As I said - I have only made console games in it and made a triangle draw and spin in OpenGl (at which point I started missing OOP too much and went back to GM).
Honestly I recommend that you make a few console based games in C and then try learning something like C#. I know the temptation is always to go for the lowest level languages because they're the most efficient - but honestly these higher level languages exist for a reason - because it can be a complete pain to write anything sufficiently complex down at that level.
Heck, you could even try Game Maker - that's what I used for nine years and I am now well ahead of everybody else in college (except one other guy that also used GM for the same length of time). If what you want is to make a game quickly without much pain - then I recommend trying GM.
Still though - if you are dead set on using C, someone else might be able to give you advice geared towards it. As I said - I have only made console games in it and made a triangle draw and spin in OpenGl (at which point I started missing OOP too much and went back to GM).
The first thing I would do with infinite power would be to make myself a cave where I could look at my shadow forever.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
Re: The Thread for Programming
Well, the reason I'm so dead-set on using C is because a good friend of mine made a solid game using C and SDL and he said he really liked it and highly recommended it to me. Though I very rarely ever get to talk to him as he's always busy and I'd really like to not bug him with questions besides occasionally.docopoper wrote:[whole bunch of generous advice]
Anyways, you're certainly right, I could use GameMaker. I guess the only thing making me not want to is that I've come all this way with C so to just say "eh screw it" and do something completely different just really doesn't appeal to me. Although heck, maybe I'm just being incredibly hard-headed.
So I guess a lot of this stuff is just a huge matter of preference? I dunno, but thank you very much anyways!
You're going to regret your decision to let me ask you questions but okay, thank you very much! I promise to try as hard as I possibly can to not ask dumb questions and also not flood you with ten million questions every hour.Rena wrote:ummm the SDL parts of those C++ tutorials should be applicable to C too, if you have any problems just ask me and I can whip you up a basic example or explain the differences or something?
also maybe ask bartle in IRC i think he's learning C + SDL right now too
(i'm pretty much always in IRC at sensible GMT times so feel free to ask me stuff)
- Ashan
- The world has become a place
- Posts: 2825
- Joined: 14 years ago
- Location: Canada
- https://ashan.talkhaus.com/
Re: The Thread for Programming
I don't even plan on learning to make games in Java (maybe I'll get into that at some point but so far I don't care to learn swing) but I watched a video on making games in Java and it was kinda scary. Manually creating a runtime and threading and cap on framerate and whatnot.
Is that how it works with every language, or do some have like built-in libraries or something that do that stuff for you? Minecraft was created completely with Java in Eclipse from my understanding, so it must be SOMEWHAT decent for making games. It's also super object-oriented which is nice.
Is that how it works with every language, or do some have like built-in libraries or something that do that stuff for you? Minecraft was created completely with Java in Eclipse from my understanding, so it must be SOMEWHAT decent for making games. It's also super object-oriented which is nice.
Re: The Thread for Programming
i did some programming and then i stopped
mostly because i met some actual professional programmers and they tried to lecture me on programming being a foreign language etc etc
i could rant on but i think programming is a super interesting thing that is used only by super interesting assholes (thats a generalization, but every programmer ive met is a bad person so)
mostly because i met some actual professional programmers and they tried to lecture me on programming being a foreign language etc etc
i could rant on but i think programming is a super interesting thing that is used only by super interesting assholes (thats a generalization, but every programmer ive met is a bad person so)
- docopoper
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla non pharetra enim, nec maximus odio.
- Posts: 78
- Joined: 12 years ago
- First name: Shane Farrell
- Pronouns: they/he
- Location: Ireland
Re: The Thread for Programming
Don't worry about using different languages after learning C. It just so happens that C is the basis for almost every modern language and is thus probably one of the most useful languages you could have learned. That, and it will have given you a good understanding of how languages work underneath the hood. C is a very useful language for when you want to write something that will execute as fast as possible but it's missing a lot of things that help you structure your code in a way that makes intuitive sense (which is important for games since they can get pretty damn big and you'll want it to make as much sense to you when you read what you've written as possible or else it'll get very hard to maintain).
Actually that last bit is important regardless of what language you use. Make sure your code will make intuitive sense to you or anyone else that reads it later. Comments help with this since they let you explain your intentions with code - but it's much more important for your code itself to make sense. So use both - but don't use comments as an excuse for writing illegible code.
Also - premature optimisation and feature creep ruin projects. Always write code to be as simple to understand as possible at first and ONLY optimise it if you need it to be faster. Seriously - optimisation can make your code a lot harder to follow (unless it's the kind where you're just using a better algorithm or something) - but if you make your code too hard to follow you may (and probably will) end up missing bigger changes you could have made that would give you a much bigger speed increase. And feature creep - don't get too carried away with "ooh - that'd be cool" - you will end up with loads of features tacked on and will never actually get anywhere with the core of your project. And honestly who cares about a game with a lot of cool features that was never completed?
Actually that last bit is important regardless of what language you use. Make sure your code will make intuitive sense to you or anyone else that reads it later. Comments help with this since they let you explain your intentions with code - but it's much more important for your code itself to make sense. So use both - but don't use comments as an excuse for writing illegible code.
Also - premature optimisation and feature creep ruin projects. Always write code to be as simple to understand as possible at first and ONLY optimise it if you need it to be faster. Seriously - optimisation can make your code a lot harder to follow (unless it's the kind where you're just using a better algorithm or something) - but if you make your code too hard to follow you may (and probably will) end up missing bigger changes you could have made that would give you a much bigger speed increase. And feature creep - don't get too carried away with "ooh - that'd be cool" - you will end up with loads of features tacked on and will never actually get anywhere with the core of your project. And honestly who cares about a game with a lot of cool features that was never completed?
The first thing I would do with infinite power would be to make myself a cave where I could look at my shadow forever.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
- docopoper
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla non pharetra enim, nec maximus odio.
- Posts: 78
- Joined: 12 years ago
- First name: Shane Farrell
- Pronouns: they/he
- Location: Ireland
Re: The Thread for Programming
D: I'm not a bad person. The reason I love programming is because I can make people happy with it. I mean I can make games and I can make things that make people's lives easier.midibreak wrote:i did some programming and then i stopped
mostly because i met some actual professional programmers and they tried to lecture me on programming being a foreign language etc etc
i could rant on but i think programming is a super interesting thing that is used only by super interesting assholes (thats a generalization, but every programmer ive met is a bad person so)
Also - if programming was anything like a foreign language I would suck at it. xD
Really though. Correlation does not equal causation.
Here, have a compensation cupcake. *gives you a cupcake*
Last edited by docopoper 10 years ago, edited 1 time in total.
The first thing I would do with infinite power would be to make myself a cave where I could look at my shadow forever.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
<- Go team Yeah Doctor Shemp.!
<- That's everyone being nice to me. ^^
I made a game called Utter Confusion! Play it! :D
It's a lot of fun and has been incredibly popular at every indie game dev party I've brought it to.
-
Ditocoaf
Haustone Tournament Finalist
- Posts: 725
- Joined: 12 years ago
- Pronouns: he/him/his
- Location: On the horizon of the brandscape
- https://ditocoaf.talkhaus.com/
Re: The Thread for Programming
Wow midibreak you sound like a super great person yourself.