Jump to content

Photo

New to programming, whats a good first language?


  • Please log in to reply
37 replies to this topic

#1 Skeletor

Skeletor

    Byte

  • Members
  • 14 posts

Posted 23 August 2012 - 09:08 AM

Hi all, sorry if there was already a thread for this. I'm trying to learn programming, but all I know how to do so far is a little bit of AppleScript (I don't own a mac) and simple Batch files on windows. I want to get past the point I am at, which is mainly making popups that say "Hello! I a virus." as April fools jokes. Any advice?

#2 SpleenBeGone

SpleenBeGone

    Deer Leader of the Goriest Revolution

  • Administrators
  • 14,951 posts
  • LocationHouston

Posted 23 August 2012 - 09:57 AM

Java is, from my understanding, simple to learn. It's also an in demand language. Python is easy to learn, and if you want to go to web based stuff, PHP and JavaScript are nice.
nmjUGDL.jpg

#3 Guest_ElatedOwl_*

Guest_ElatedOwl_*
  • Guests

Posted 23 August 2012 - 10:00 AM

Java so overrated. Python is getting more and more popular, it's fairly easy to pick up as far as languages go and can be used as a functional language or object oriented.

#4 K_N

K_N

    Megabyte

  • Members
  • 576 posts
  • LocationPhoenix

Posted 27 August 2012 - 03:41 AM

Python is nice, I just wish it didn't use whitespace as a mechanism.

Rumors of my demise have been greatly exaggerated.


#5 godofchaos

godofchaos

    Byte

  • Members
  • 32 posts
  • LocationWestminster, Colorado

Posted 28 August 2012 - 10:12 AM

I would say first Learm HTML than go on from there HTML is for beginners if you ask me for web based stuff.
Resist obsolence!

#6 Bowsette

Bowsette

    Tentacular!

  • Members
  • 4,064 posts

Posted 28 August 2012 - 10:44 AM

From what little I remember from my college class, C++ was relatively easy.

LL1Yc5i.gif

“Shimatta! Bare… nan no koto kashira?”


#7 Wolf

Wolf

    Zettabyte

  • Members
  • 6,487 posts

Posted 28 August 2012 - 07:03 PM

From what little I remember from my college class, C++ was relatively easy.

That it is

especially with visual

#8 Guest_ElatedOwl_*

Guest_ElatedOwl_*
  • Guests

Posted 28 August 2012 - 07:08 PM

C++ definitely one of the less forgiving languages

Honestly the only reason to use it is if you're going to be doing low level memory stuff or need every ounce of effeciency

#9 Wolf

Wolf

    Zettabyte

  • Members
  • 6,487 posts

Posted 28 August 2012 - 07:12 PM

C++ definitely one of the less forgiving languages

Honestly the only reason to use it is if you're going to be doing low level memory stuff or need every ounce of effeciency

hmm, that's good to know

before I start pouring time and effort into fully learning that beast

#10 K_N

K_N

    Megabyte

  • Members
  • 576 posts
  • LocationPhoenix

Posted 02 September 2012 - 10:27 PM

It will be nice once we reach a point where application programmers never have to worry about memory management. Engineering professions can take care of the low levels, let IT not have to worry about anything under that abstraction layer.

If you really want to learn how stuff works from the bottom up, give C or C++ a whirl - but if you just want to write applications and not spend all your time nitpicking over the fine details, stick with things like Java or C#, the lower level languages aren't really for the non OCD.

Rumors of my demise have been greatly exaggerated.


#11 Guest_ElatedOwl_*

Guest_ElatedOwl_*
  • Guests

Posted 03 September 2012 - 11:29 AM

^ truth. Being able to manage memory certainly has its merits, but for the majority of people you're not going to need to.

People always try to give the argument that people who have never dealt with mem management can't program efficiently and appreciate every byte, but IMO a shit programmer is just a shit programmer. If you write inefficiently with high abstraction, chances are you're too ignorant to be able to manage memory properly anyway.

#12 Wolf

Wolf

    Zettabyte

  • Members
  • 6,487 posts

Posted 04 September 2012 - 09:53 AM

That's good to know, I picked up a couple books on writing applications and it was recommended I learned C and C++, in that order, stressing the importance of knowing the relationship between high level and assembly level code.

In light of recent news, though, I think I'm going to pick up Java

#13 JubalBarca

JubalBarca

    Byte

  • Members
  • 10 posts

Posted 09 September 2012 - 10:52 AM

It depends on what you're doing as a programmer - I'm a scripter, so JavaScript and Python are the mainstays of what I use. I should really pick up C or C++ sometime though. Lower level languages only truly seem to be worth it for really large programs where the mem usage is going to be huge. I love Python to bits as a language, but any exe files compiled with it end up huge as you don't really compile the code, you just leave the code as is and create a standalone interpreter which is bundled together with it in the .exe.

#14 Guest_ElatedOwl_*

Guest_ElatedOwl_*
  • Guests

Posted 09 September 2012 - 02:27 PM

If it's something you intend to compile I wouldn't go with Python anyway. Compiling Java or Python to EXEs makes me sad. Languages are meant to be cross platform. :[

#15 SushiKitten

SushiKitten

    Coffee Cat

  • Members
  • 1,916 posts
  • LocationCanada

Posted 19 September 2012 - 07:47 PM

As an engineer I was required to learn basic C++ which I did not find that difficult. Now, this term I have to take a course with a more advanced look and I can see where the others are coming from with the memory allocation stuff. It is quite confusing.

Even though it's not "true" code, I figured out HTML and CSS pretty quickly at 15. I really enjoyed being able to create and customize my own website and see what other people did with theirs. I'd totally recommend it, it's instantly gratifying, doesn't take forever to produce quality stuff, and it's super easy to understand.

#16 Wolf

Wolf

    Zettabyte

  • Members
  • 6,487 posts

Posted 20 September 2012 - 09:44 AM

As an engineer I was required to learn basic C++ which I did not find that difficult. Now, this term I have to take a course with a more advanced look and I can see where the others are coming from with the memory allocation stuff. It is quite confusing.

Even though it's not "true" code, I figured out HTML and CSS pretty quickly at 15. I really enjoyed being able to create and customize my own website and see what other people did with theirs. I'd totally recommend it, it's instantly gratifying, doesn't take forever to produce quality stuff, and it's super easy to understand.


Good to know, I'll keep that in mind

#17 stackcollision

stackcollision

    Byte

  • Members
  • 34 posts

Posted 21 September 2012 - 08:57 PM

I probably won't say anything that hasn't already been said here, but as a professional software engineer here's my two cents.

Do not learn Java as your first language. It will ruin you as a programmer forever. Java has a lot of abstraction and automagically takes care of a lot of things like memory management. That is why a lot of people try to teach it as a first language, but I am going to go against the grain here and say that it is a Bad Thing.

I learned C (pure, unadulterated) as my first language and because of that hated Java when I had to take it in college. On the flip side, knowing C helped me in my numerous assembly courses (which I loved). I now use C++ at work and for hobby game development. I also work a lot in Perl at my job, and I am approaching Guru status in both languages.

A friend of mine, on the other hand, learned Java as his first language, and never had to take assembly courses because of his special program (combination of CS and business). Now he is going for his Masters, and he's asking me questions about bit-twiddling and memory management and pointers because he was never taught it at the beginning.

Don't get me wrong, Java is a very useful language. Yes, it is great to not have to worry about malloc() and free() and levels of indirection when working on enterprise level applications. But learning to use them effectively makes you a stronger hacker, because you understand what is going on behind all that abstraction even if you're not directly doing it.

#18 K_N

K_N

    Megabyte

  • Members
  • 576 posts
  • LocationPhoenix

Posted 29 September 2012 - 10:53 PM

Do not learn Java as your first language. It will ruin you as a programmer forever. Java has a lot of abstraction and automagically takes care of a lot of things like memory management. That is why a lot of people try to teach it as a first language, but I am going to go against the grain here and say that it is a Bad Thing.

I'm sorry but that's a load of horse shit. For fucks sake, I learned PHP and then Java as my first languages and I grasp memory management just fine. It's only a bad thing if you lack the ability to learn more than one similar thing, like a simple primate or something.

Java includes a full overview of basic programming structures, and is a GREAT way to introduce people to OOP (everything is a class! EVERRRYYYYTHHIIIIIIINNNGGGG~). It's not hard to pick up memory management and lower level operations after moving from Java.

Rumors of my demise have been greatly exaggerated.


#19 Dasherman

Dasherman

    Megabyte

  • Members
  • 496 posts
  • LocationAzeroth and Sanctuary, simultaneously by using quantum powers

Posted 13 October 2012 - 11:21 AM

I think you should learn Python, because it gives you insight into some concepts which make it a lot easier to learn other languages. And Python is easier to learn, because it is so incredibly high level.
Quis custodiet ipsos custodes?
(//MihiPotestasSit\\)

#20 ITblasters

ITblasters

    Byte

  • Members
  • 53 posts

Posted 20 February 2013 - 12:38 AM

In my opinion C/C++ for new programmers...