Over the last week I have had sort of a realization as you can call it.
34 replies, posted
Since I can remember I have always wanted to be a Doctor when I was growing up. (I loved watching House) Over the last few years in my high school year, I started to realize something, my gift has been with computers and it will always be. So to actually put my gift to use I am going to start early and make something of it, with this realization I have made a decision in my life that I am going to become a programmer for a job and START to learn a language so I can better equip my self for collage.
Language of choice: LUA
So, with this being said, I want to know:
Where to start?
What should I expect?
Is Lua a good language to learn or should I learn something else?
Are the books from the official Lua website worth reading?
How did you learn it and what way would you recommend for me?
What would be the best piece of advice you can give me?
Well lua is awesome, it's a scripting language so it differs from actual programming language. I started with c++ but haven't gotten too far into it, so i decided to try another language. I am currently learning python, nice language as it's both scripting and programming as far as i can tell. It's really up to you try lua first, if it doesn't hit the nail on the head for you try another language :)
[editline]4th December 2014[/editline]
i should also mention that reading the documentation will help a lot!
[QUOTE=confinedUser;46641424]Well lua is awesome, it's a scripting language so it differs from actual programming language. I started with c++ but haven't gotten too far into it, so i decided to try another language. I am currently learning python, nice language as it's both scripting and programming as far as i can tell. It's really up to you try lua first, if it doesn't hit the nail on the head for you try another language :)
[editline]4th December 2014[/editline]
i should also mention that reading the documentation will help a lot![/QUOTE]
Thank you for your imput! (:
I will go ahead and pick that up before my Christmas break so I can start.
Programming in Lua is an excellent book.
i learned lua by making stupid shit in gmod
for me it was 10000x more fun and interesting than just reading shit from a book and making boring console programs over and over
i think I can even go as far as to say I learned more from making stupid shit in gmod than I would have from reading a book
i started off by looking at code other people wrote, trying to see how it worked, and then trying to experiment, modify, and improve them and seeing how it reacted to my changes. i crashed and burned a lot, but that's how I learned. and it just went from there
that's just me though, so it might not apply to you.
like legit i could never bring myself to learn a programming language from a book or set of tutorials
[QUOTE=TSquirrel;46641189]Since I can remember I have always wanted to be a Doctor when I was growing up. (I loved watching House) Over the last few years in my high school year, I started to realize something, my gift has been with computers and it will always be. So to actually put my gift to use I am going to start early and make something of it, with this realization I have made a decision in my life that I am going to become a programmer for a job and START to learn a language so I can better equip my self for collage.
Language of choice: LUA
So, with this being said, I want to know:
Where to start?
What should I expect?
Is Lua a good language to learn or should I learn something else?
Are the books from the official Lua website worth reading?
How did you learn it and what way would you recommend for me?
What would be the best piece of advice you can give me?[/QUOTE]
It depends exactly how enthusiastic you are. If you want to program (to start with), I would recommend starting with something like C#, or Java. If you want to script (to start with) LUA, and maybe something like LOVE2D, or GMod, would be great. I make the distinction because, if you learn to program, you will want to be creating your own software. Starting small obviously, hello world etc. Scripting is basically programming ANOTHER program to do what you want.
There is nothing to say you can't switch though. It might be easier to learn to script then start programming, or vice versa. Although I imagine scripting might be a lot more appealing due to the fact that you can simply "mod" another program to do things you want.
Personally I started with a year of Java, then 2 years of C# and now I have been using C++ for about 3-4 years. Haven't really learnt any scripting other than messing around with LOVE2D but it would be easy to pick up.
If you're going serious about this I'd start with something [U]strict[/U] [B]like [/B]C++ , because I think it'll be more easier to get used to dynamic typing (Lua, Python) and other simplifications rather than the other way around.
Also [B]personally[/B] I wouldn't like to start with C# or Java because it already shoots you with OOP things even if you're making something simple, of course you can go ahead of it and learn about it later, but still I don't like leaving things unexplained and yet I wouldn't start right away with OOP.
I'd start with C# It's very close to C++ and will allow you to get a better grasp of programming languages. It's a very commonly used language too. Due to its great Visual-Studio setup it will save you quite a lot of time when learning and allow you to get much more used to strict programming before moving over to C++.
Jesus, don't rush in to deciding that's what you want to do until you get some experience with a language. A lot of people find that it isn't for them.
I'd suggest C#.
[QUOTE=Meladath;46642862]It depends exactly how enthusiastic you are. If you want to program (to start with), I would recommend starting with something like C#, or Java. If you want to script (to start with) LUA, and maybe something like LOVE2D, or GMod, would be great. I make the distinction because, if you learn to program, you will want to be creating your own software. Starting small obviously, hello world etc. Scripting is basically programming ANOTHER program to do what you want.
There is nothing to say you can't switch though. It might be easier to learn to script then start programming, or vice versa. Although I imagine scripting might be a lot more appealing due to the fact that you can simply "mod" another program to do things you want.
Personally I started with a year of Java, then 2 years of C# and now I have been using C++ for about 3-4 years. Haven't really learnt any scripting other than messing around with LOVE2D but it would be easy to pick up.[/QUOTE]
Thank you for this (:
[QUOTE=reevezy67;46643608]Jesus, don't rush in to deciding that's what you want to do until you get some experience with a language. A lot of people find that it isn't for them.
I'd suggest C#.[/QUOTE]
The only reason I was going to start scripting in Lua was because of well Garry's Mod. (I am aware that Lua is not strictly for GMod)
As for all of these suggestions, I proably will actually start up with make a decision soon then.
(: thank you all for the help so far.
Edit: for all the professional game programmers out there
What language do you use?
How easy was it for you to get your job?
What language(s) do you use?
I was poking around on the Internet and saw some average sallieries, on average how much do you make?(no need to post here, just me pm me this if you wish.
Don't do it for the money, the money is only a bonus, programming isn't something you can do without interest. If you are trying to make quick money with programming than you are in the wrong place, programming takes years just to get used to and able to do your own cool shit and during those years you will have little to no income.
Programming language doesn't really matter as most things you learn in a programming language is mostly universal to the same types of languages.
[QUOTE=AnonTakesOver;46644345]Don't do it for the money, the money is only a bonus, programming isn't something you can do without interest. If you are trying to make quick money with programming than you are in the wrong place, programming takes years just to get used to and able to do your own cool shit and during those years you will have little to no income.
Programming language doesn't really matter as most things you learn in a programming language is mostly universal to the same types of languages.[/QUOTE]
Believe me, this is something I have been thinking about for a while. I'm sure this is the direction I want my life to go, really because I'm interested in this and I believe starting early will help me exponentially.
I'm just going to throw this out there.
Python is one of the easiest languages to handle as a beginner, it's a pretty good job language, it has a strong community behind it, and the developers behind it aren't insane.
I'd recommend giving that a try. There's a lot of good literature for getting to know the language. You can pick up Learning Python and start going at it, with no real programming experience beforehand.
[QUOTE=nikomo;46645865]I'm just going to throw this out there.
Python is one of the easiest languages to handle as a beginner, it's a pretty good job language, it has a strong community behind it, and the developers behind it aren't insane.
I'd recommend giving that a try. There's a lot of good literature for getting to know the language. You can pick up Learning Python and start going at it, with no real programming experience beforehand.[/QUOTE]
Thank you for your imput, but here are my questions:
Is python actually still usefull in today's world or is it strictly to get a grip on programming?
What applications are their for it?
If I don't chose to start with python what are the disadvantages to me?
[QUOTE=TSquirrel;46645926]Thank you for your imput, but here are my questions:
Is python actually still usefull in today's world or is it strictly to get a grip on programming?
What applications are their for it?
If I don't chose to start with python what are the disadvantages to me?[/QUOTE]
I learned to program basically by making E2s in GMod with wiremod. It was a lot more engaging since there was absolutely no delay between 'does the thing I want' and 'oh shit why is it doing that'. After learning that to get the basics of if statements, for loops, variables etc, it was pretty easy to pick up other languages. Plus it was fun to build vehicles and robots and shit.
Python to me feels like E2s honestly. Its great and in my first internship I basically used python to hold together a continuous integration system. Python is excellent for text processing and automation type stuff, although its by no means limited to that. It is certainly useful in todays world, its like ducktape: you just have to deal with the things you need to, and the language doesn't make you write tons of code just to get to the thing you're trying to do.
If you're going to college more than a year from now, I'd stick with Lua and GMod. You'll learn all of the important concepts, and have the benefit of working in a pre-existing code environment. Sure its easy to make a program if you built the whole thing from scratch, but its a lot more useful to be able to come into an existing environment, and learn to use that within a few weeks. Plus with GMod & Lua you'll learn object oriented stuff in a much better way imo, because if you're scripting actual entities it becomes really easy to see them as objects and then translate that to other object oriented languages where you don't see the objects represented with a physical state.
[QUOTE=Kybalt;46646351]I learned to program basically by making E2s in GMod with wiremod. It was a lot more engaging since there was absolutely no delay between 'does the thing I want' and 'oh shit why is it doing that'. After learning that to get the basics of if statements, for loops, variables etc, it was pretty easy to pick up other languages. Plus it was fun to build vehicles and robots and shit.
Python to me feels like E2s honestly. Its great and in my first internship I basically used python to hold together a continuous integration system. Python is excellent for text processing and automation type stuff, although its by no means limited to that. It is certainly useful in todays world, its like ducktape: you just have to deal with the things you need to, and the language doesn't make you write tons of code just to get to the thing you're trying to do.
If you're going to college more than a year from now, I'd stick with Lua and GMod. You'll learn all of the important concepts, and have the benefit of working in a pre-existing code environment. Sure its easy to make a program if you built the whole thing from scratch, but its a lot more useful to be able to come into an existing environment, and learn to use that within a few weeks. Plus with GMod & Lua you'll learn object oriented stuff in a much better way imo, because if you're scripting actual entities it becomes really easy to see them as objects and then translate that to other object oriented languages where you don't see the objects represented with a physical state.[/QUOTE]
Here is where I'm at, currently I'm a senior in high school and have a TINY bit of lua background from GMod and Roblox. What I was thing was continuing with lua until the day collage starts, possibly even try to advance further with to make a career out of game development or some sorts.
[QUOTE=TSquirrel;46645926]Thank you for your imput, but here are my questions:
Is python actually still usefull in today's world or is it strictly to get a grip on programming?
What applications are their for it?
If I don't chose to start with python what are the disadvantages to me?[/QUOTE]
Python is used a ton nowadays.
It's used pretty much anywhere, so it's hard to name any specific applications.
Scientists use Python because of the excellent math-related libraries available, some web developers use Flask, Django etc. to create rich web applications with Python, you can control different electronics with Python if you have a Raspberry Pi because there's an excellent library for accessing the GPIO pins on the Pi from Python...
I don't see any immediate disadvantages if you don't start with Python. Well, maybe other than the fact that some other languages are really strict with how you use them.
With Python, you can start really small. Just have some code, see how it runs, modify, run, move that stuff into a function, play with that etc.
Also, the interactive shell for Python is great for learning, I don't really know any other languages that have something as cool as that.
[t]http://i.imgur.com/VRYHxMZ.jpg[/t]
[QUOTE=TSquirrel;46645926]Thank you for your imput, but here are my questions:
Is python actually still usefull in today's world or is it strictly to get a grip on programming?
What applications are their for it?
If I don't chose to start with python what are the disadvantages to me?[/QUOTE]
Python is one of the most increasingly popular languages to use. Its popular however because it's incredibly simple. You don't need to worry about the implementation of data structures or typing at all really.
Personally I'm a proponent of starting with something low level and only giving yourself access to more convenient methods once you understand the theory behind them - the first language I learnt was C and I'd recommend anyone do the same - but if you want to start with a scripting language, start with python or lua
[QUOTE=killerteacup;46647553]Python is one of the most increasingly popular languages to use. Its popular however because it's incredibly simple. You don't need to worry about the implementation of data structures or typing at all really.
Personally I'm a proponent of starting with something low level and only giving yourself access to more convenient methods once you understand the theory behind them - the first language I learnt was C and I'd recommend anyone do the same - but if you want to start with a scripting language, start with python or lua[/QUOTE]
Thank you for the response! :)
While Python is a popular programming language, I'd say Lua is an even more popular scripting language. If you see yourself working on games, go with Lua. If you see yourself making practical programs that get jobs done, go with Python.
[QUOTE=Ott;46648685]While Python is a popular programming language, I'd say Lua is an even more popular scripting language. If you see yourself working on games, go with Lua. If you see yourself making practical programs that get jobs done, go with Python.[/QUOTE]
Thank you for your response :)
I'm starting to get the feeling LUA will be the direction I am heading seeing as I would like to start working with games for my future.
Programming is definitely a field of heavily opinionated people, and those opinions are often polar opposites.
I'd be careful with terms like "popular", "useful", "easy"...
You seem to like Lua. Go with Lua.
There really is no fixed path to programming.
[editline]6th December 2014[/editline]
Also a note. Lua isn't an acronym. Sometimes people flip their shit when they see someone saying LUA
[QUOTE=Darwin226;46652457]Programming is definitely a field of heavily opinionated people, and those opinions are often polar opposites.
I'd be careful with terms like "popular", "useful", "easy"...
You seem to like Lua. Go with Lua.
There really is no fixed path to programming.
[editline]6th December 2014[/editline]
Also a note. Lua isn't an acronym. Sometimes people flip their shit when they see someone saying LUA[/QUOTE]
I have no idea why I capitalized it, lol but thank you for the advice!
Garry himself suggests that Lua is a bad language to practice.
[url]http://garry.tv/2014/08/16/i-fell-out-of-love-with-lua/[/url]
If you become adept in Lua and someday want to try something new, such as C# or JS, you're probably going to have a hell of time adjusting your syntax.
-snip-
[QUOTE=Crayz;46658109]Garry himself suggests that Lua is a bad language to practice.
[url]http://garry.tv/2014/08/16/i-fell-out-of-love-with-lua/[/url]
If you become adept in Lua and someday want to try something new, such as C# or JS, you're probably going to have a hell of time adjusting your syntax.[/QUOTE]
It's still faster than learning C# or JS as your first language. You'll have problems for maybe a day.
[QUOTE=Ott;46658237]It's still faster than learning C# or JS as your first language. You'll have problems for maybe a day.[/QUOTE]
Learning faster isn't better. Becoming a good programmer takes time and effort, and Lua isn't going to give him a very sturdy foundation.
I don't consider myself an experienced programmer, so my opinions could be wrong.
[QUOTE=Ott;46658237]It's still faster than learning C# or JS as your first language. You'll have problems for maybe a day.[/QUOTE]
Thankyou for the info!
Oh come on, Facepunch. You're gunna scare away the friendly new guy with your programming drama.
I personally started with C/C++.
It really depends what you wanna focus on in your programming. I stuck with the C languages so I could do more graphics stuff with OpenGL and such.
Just to be clear, I'm not suggesting that you shouldn't start with Lua. Sure, it's easy, and you'll be scripting simple mods before you know it. But you'll also be picking up bad habits. If you read Garry's blog, you'll see that Lua is different just for the sake of being different. Because of that, you're going to be learning things that aren't implemented or practical in any programming language. You will learn the basic fundamentals (variable types, loops, functions, etc), which can just as easily be learned in almost any other language.
It doesn't matter what language you begin with, if you keep at it sooner or later you're going to pick up a new language and diversify anyways. My first language was HTML about 10 years ago. HTML didn't help me much (if at all) when I started getting into programming.
edit: "You’re teaching them that arrays start at 1 not 0." is a good example of what I'm trying to say.
Sorry, you need to Log In to post a reply to this thread.