Off Topic: The Flood
This topic has moved here: Subject: Which programming language should I start on?
  • Subject: Which programming language should I start on?
  • Pages:
  • 1
  • 2
  • of 2
Subject: Which programming language should I start on?

C++, while a nice language probably should not be your first language to learn. C should not be your first language to learn unless you have someone teaching you who has experience. For a starter language (not to say that the languages I recommend are any less powerful), you want something that will slap your wrist when you do something silly (like declaring new variables and never deleting them, accessing memory you didn't mean to, etc...). Java, and C# should be a good start for a full language. Languages like C and C++ assume responsibility on the programmer and do not clean up messes, or even check for messes.

  • 01.06.2013 7:40 AM PDT


Posted by: ParanoidHipster
Help me out, Flood. Not really sure what I want to do with my life, not really good with anything. Thinking of majoring in computer science. Good idea?


Hey man calm down. I have no experience in that subject sorry :/ but I doubt you're "not really good with anything". Code takes a VERY long time to learn and I'm having an extremely hard time getting into it as well. The learning curve isn't very nice to us newbies

  • 01.06.2013 7:41 AM PDT


Posted by: ParanoidHipster
Help me out, Flood. Not really sure what I want to do with my life, not really good with anything. Thinking of majoring in computer science. Good idea?
how good are you at maths?

  • 01.06.2013 7:41 AM PDT

Dear Floodians:

A Girl thread a day keeps the ladies at bay and gets us banned, the lonely single way.


Posted by: Binman59

Posted by: ParanoidHipster
What are the uses for these languages? I mean, which ones succeed in which categories? (IE C++ better for games)


Python is better and quicker (I believe) for small scripts and tools. I saw one guy who used it to check a website every ten mins and alert him when there was something he was looking for.

A friend of mine used Python to make his laptop automatically log out when his mobile phone was a certain distance away from it. Cool stuff.

On topic: To learn the basics, C++ or Java are basically the same, they only split ways when it comes to pointers and references with the former one being the hardest to manage yourself but having the most possibilities.

As a starter, don't punish yourself with memory management yet, take it easy with some easy exercises, nothing long or fancy yet, to get familiar to the syntax and what not.

[Edited on 01.06.2013 7:46 AM PST]

  • 01.06.2013 7:45 AM PDT
  • gamertag: [none]
  • user homepage:

Don't do anything you wouldn't want to have to explain to paramedics. Trust me, I'm a pilot.

C is probably the easiest one to start out with. If you have a book on it, I would suggest going through some of the exercises and make some arrays, sorts, searches, etc. Once you feel comfortable working in one language, you'll be able to work in any language.

  • 01.06.2013 7:49 AM PDT

My 2E-2 $:

1. Start with a simple scripting language.
-- Python is kind of badly designed, but it's easy and there's a ton of books and tutorials for beginners because Python's what usually recommended these days.
-- If you choose to learn Python, do not learn Python 2.x, learn Python 3.x.
-- I suggest taking a look at the Python 3 Essential Training video course from Lynda.com. It's... widely available.
-- Lua is a cool language too.
-- Do not waste much time here, just learn the basics, do some small projects and move on. Do not mess with 3rd party libraries too much. If you don't like what you've learned and experienced or find it excessively hard, you won't like programming.

2. Learn C. Work starts here.
-- Pick up a good book and learn the basics. DO LEARN pointers, they're the best thing about using C.
-- There's no need to mess with 3rd party libraries or anything really complicated.
-- GOD-TIER TIP: Do NOT use an IDE like Visual Studio or Code::Blocks or Eclipse. Use a simple text editor and a discrete compiler. The editor I use is Vim (GVim for Windows); it's very easy to use, you just need to memorize about 5 keys. You could also use Notepad++, it's pretty decent. You should definitely use the GCC compiler; I think you need something like MinGW if you use Windows (it's kind of like a GCC port for Windows). Makefiles are cool too.

3. Learn an Object Oriented programming language.
-- By this time you should have a fair knowledge of what programming is about. Feel free to use whatever tool you need. Visual Studio is pretty great. If you're a college student you can get Visual Studio Professional (and other tools) for free from DreamSpark. I love Vim, so it's all I use.
-- I like C#. Use Mono if you're a Linux user. Because I'm used to it I also use it for Windows, but you don't need to worry about it if you use an IDE like Visual Studio.
-- Java is very widely used, but I absolutely HATE it. It's a valuable tool, nonetheless.
-- C++ is a tremendously complicated language. Do not mess with it until you are an experienced programmer. It's NOT just an extension of C or "C with classes". Anyone who says that deserves a severe beating.

4. Let your mind be blown by completely different paradigms.
-- Take a look at Common Lisp. You will become a better programmer and a better person.
-- Buy an AVR or a PIC and learn how C for embedded devices works.
-- Learn Assembly. You can use the microcontroller you bought (AVR or PIC) or just use a simple microprocessor. The 6502 is cool and there are lots of simulators available on the Internet.
-- Do not fall in love with hardware: loved ones will begin to seem less and less interesting because of how fun it is to make something actually tangible work.

5. Get an awesome job.
-- By this time you should have a much broader experience than 99% of the code monkeys out there, so it shouldn't be too hard to find a fun job.

  • 01.06.2013 8:27 AM PDT

Dear Floodians:

A Girl thread a day keeps the ladies at bay and gets us banned, the lonely single way.

Also, learning the most common design patterns can help you alot when making complicated applications.

[Edited on 01.06.2013 9:30 AM PST]

  • 01.06.2013 9:29 AM PDT

Butt ugly ape” remarked Sergeant Johnson always making fun out of the situation even though he had been hit by a spiker round in the arm. He mustered up the strength to continue and the team moved on. The Arbiter informed him that the next room held The Prophet of Truth and this was the final room before extraction. Jun proposed that he takes a shot from a distance the prophet and they all head back to the ship bay for extraction. The team agreed on this and breached the last door…

In my opinion, I think you should learn about whatever OS your using or interested in. Learn some terminal/command prompt or bash shell commands.

Then either C++ or Visual Basic should be the way to go!

  • 01.06.2013 9:43 AM PDT


Posted by: Pulse Cloud
My 2E-2 $:

1. Start with a simple scripting language.
-- Python is kind of badly designed, but it's easy and there's a ton of books and tutorials for beginners because Python's what usually recommended these days.
-- If you choose to learn Python, do not learn Python 2.x, learn Python 3.x.
-- I suggest taking a look at the Python 3 Essential Training video course from Lynda.com. It's... widely available.
-- Lua is a cool language too.
-- Do not waste much time here, just learn the basics, do some small projects and move on. Do not mess with 3rd party libraries too much. If you don't like what you've learned and experienced or find it excessively hard, you won't like programming.

2. Learn C. Work starts here.
-- Pick up a good book and learn the basics. DO LEARN pointers, they're the best thing about using C.
-- There's no need to mess with 3rd party libraries or anything really complicated.
-- GOD-TIER TIP: Do NOT use an IDE like Visual Studio or Code::Blocks or Eclipse. Use a simple text editor and a discrete compiler. The editor I use is Vim (GVim for Windows); it's very easy to use, you just need to memorize about 5 keys. You could also use Notepad++, it's pretty decent. You should definitely use the GCC compiler; I think you need something like MinGW if you use Windows (it's kind of like a GCC port for Windows). Makefiles are cool too.

3. Learn an Object Oriented programming language.
-- By this time you should have a fair knowledge of what programming is about. Feel free to use whatever tool you need. Visual Studio is pretty great. If you're a college student you can get Visual Studio Professional (and other tools) for free from DreamSpark. I love Vim, so it's all I use.
-- I like C#. Use Mono if you're a Linux user. Because I'm used to it I also use it for Windows, but you don't need to worry about it if you use an IDE like Visual Studio.
-- Java is very widely used, but I absolutely HATE it. It's a valuable tool, nonetheless.
-- C++ is a tremendously complicated language. Do not mess with it until you are an experienced programmer. It's NOT just an extension of C or "C with classes". Anyone who says that deserves a severe beating.

4. Let your mind be blown by completely different paradigms.
-- Take a look at Common Lisp. You will become a better programmer and a better person.
-- Buy an AVR or a PIC and learn how C for embedded devices works.
-- Learn Assembly. You can use the microcontroller you bought (AVR or PIC) or just use a simple microprocessor. The 6502 is cool and there are lots of simulators available on the Internet.
-- Do not fall in love with hardware: loved ones will begin to seem less and less interesting because of how fun it is to make something actually tangible work.

5. Get an awesome job.
-- By this time you should have a much broader experience than 99% of the code monkeys out there, so it shouldn't be too hard to find a fun job.
I'd agree with this so much. But Python 2.x over Python 3.x at this point. Seriously, 2.x has FAR more support at the moment. Don't look over BASIC to help learn the basics of programming, BASIC might look overly simple but it's actually very powerful.

EDIT: Also, hardware is FUN! Something like Arduino is really good to get started programming (it was the first platform I self-taught myself) and it's really simple to get into circuitry and embedded programming.

[Edited on 01.06.2013 9:46 AM PST]

  • 01.06.2013 9:43 AM PDT
  • gamertag: [none]
  • user homepage:

Genabis, Exobus, Levitibus.

~Greensleeves.

C or Java.

Forget Flash and Javascript.

  • 01.06.2013 9:45 AM PDT

RIP Logan ~B.B.

C++ or Java. You want to learn all the concepts of an object-orientated language, and it's helpful to be familiar with C syntax because so many other languages are modeled after it.

  • 01.06.2013 9:48 AM PDT

Posted by: DarkBen64
I'd agree with this so much. But Python 2.x over Python 3.x at this point. Seriously, 2.x has FAR more support at the moment. Don't look over BASIC to help learn the basics of programming, BASIC might look overly simple but it's actually very powerful.

Oh god my eyes, don't quote big posts like that, please...

Python 2.x is only recommended for those who have big codebases in 2.x (therefore making the transition too costly/time consuming) or for those who depend on libraries that haven't been updated to 3.x, which is definitely not the case.
Python 3.x is more powerful, has less inconsistencies and is both the present and the future. There is absolutely no reason for a beginner to learn 2.x.

BASIC is DEPRECATED. :)

  • 01.06.2013 9:49 AM PDT
  •  | 
  • Fabled Legendary Member

Start with C++.

  • 01.06.2013 9:49 AM PDT

Xbox LIVE gamertag: Dat3lessNutella
Steam username: TopWargamer
To look up my Halo stats...search for the gamertag TopWargamer.
SAVED THREAD PAGES: 283
One does not simply get rid of TopWargamer so easily.
You know this to be true.
ALL HAIL GABEN


Posted by: timothy pumpkin
c++ or c.

once youre competent at them all the others are easy.

  • 01.06.2013 9:49 AM PDT


Posted by: Pulse Cloud
Posted by: DarkBen64
I'd agree with this so much. But Python 2.x over Python 3.x at this point. Seriously, 2.x has FAR more support at the moment. Don't look over BASIC to help learn the basics of programming, BASIC might look overly simple but it's actually very powerful.

Oh god my eyes, don't quote big posts like that, please...

Python 2.x is only recommended for those who have big codebases in 2.x (therefore making the transition too costly/time consuming) or for those who depend on libraries that haven't been updated to 3.x, which is definitely not the case.
Python 3.x is more powerful, has less inconsistencies and is both the present and the future. There is absolutely no reason for a beginner to learn 2.x.

BASIC is DEPRECATED. :)
I picked up Python 2.x because of the larger support. Sure, 3.x is getting there, but I'm not going to use it for stuff that large so I just learnt 2.x.

  • 01.06.2013 9:51 AM PDT
  • gamertag: [none]
  • user homepage:

So do all who live to see such times, but that is not for them to decide. All we have to decide is what to do with the time that is given to us.

-Gandalf

Java.

  • 01.06.2013 9:51 AM PDT
  •  | 
  • Fabled Legendary Member

Also, if you want to write flash games you're going to be using ActionScript which is based on Java so I guess you should just learn Java first.

  • 01.06.2013 9:54 AM PDT
  • gamertag: [none]
  • user homepage:


Posted by: DarkBen64

Posted by: ParanoidHipster
Help me out, Flood. Not really sure what I want to do with my life, not really good with anything. Thinking of majoring in computer science. Good idea?
how good are you at maths?


Not very good at geometry, maybe slightly above average algebra? I am a very logical thinker though, and from the basic programming class I took, it came fairly easy.

  • 01.06.2013 10:06 AM PDT


Posted by: ParanoidHipster

Posted by: DarkBen64

Posted by: ParanoidHipster
Help me out, Flood. Not really sure what I want to do with my life, not really good with anything. Thinking of majoring in computer science. Good idea?
how good are you at maths?


Not very good at geometry, maybe slightly above average algebra? I am a very logical thinker though, and from the basic programming class I took, it came fairly easy.
Get good at algebra, get good at vectors. You'll be fine.

  • 01.06.2013 10:06 AM PDT

Currently studying Computer Science & Software engineering. Hope to work on mobile devices of the future! When a certain game's credits roll, look out for my name! ;)

You will -blam!- bricks when you see what game it is! =)

Start with Java because its VERY easy to get into it. Once you master it, you can easily move onto anything else, new syntax for sure but all of the concepts are pretty much the same if youre talking about modern langugaes. Older langugaes such as C and C++ have certain things about them whih you will have to learn from scratch (*cough* garbage collection *cough*). With C, its not class oriented (remember that classes are just descriptions of objects), so you will have to learn how to compensate for not having object interaction.

  • 01.06.2013 10:24 AM PDT
  •  | 
  • Honorable Legendary Member

Sometimes starting back from square one does good...

Ask smart questions
http://catb.org/esr/faqs/smart-questions.html

Try Python, it's a nice start.

  • 01.06.2013 10:30 AM PDT

  • Pages:
  • 1
  • 2
  • of 2