Hey there! Sign in to join this conversationNew here? Join for free
    • Thread Starter
    Offline

    0
    ReputationRep:
    Hey guys,

    I am currently on my gap year, so I have a bit of free time, and I would like to learn another programming language, for fun and also to keep my brain active before I go to uni to do Maths and CS in Sept 11.

    I currently know: VB.NET (the shame! ), PHP, XHTML/CSS, Javascript and I have done a tiny bit of python. I am pretty good in all of the above, I can make decent programs (I am best in VB.NET just because it was the language my college taught)

    I'm just looking for something to enjoy really, and something that will help me in my degree next year, I think we learn C, Java, Haskell.

    Any ideas? I did think of Python, but does anyone else have any suggestions?
    Offline

    16
    ReputationRep:
    Getting started on C can't hurt and learning to program at a low level will give you a deeper appreciation for how your higher-level languages really work.
    Offline

    2
    ReputationRep:
    lolcode
    Offline

    1
    ReputationRep:
    (Original post by paper-wings)
    Hey guys,

    I am currently on my gap year, so I have a bit of free time, and I would like to learn another programming language, for fun and also to keep my brain active before I go to uni to do Maths and CS in Sept 11.

    I currently know: VB.NET (the shame! ), PHP, XHTML/CSS, Javascript and I have done a tiny bit of python. I am pretty good in all of the above, I can make decent programs (I am best in VB.NET just because it was the language my college taught)

    I'm just looking for something to enjoy really, and something that will help me in my degree next year, I think we learn C, Java, Haskell.

    Any ideas? I did think of Python, but does anyone else have any suggestions?
    Doesnt look like you know much OOP? So i'd go for an OOP language like Java.
    C is good to learn about stack/memory management though.
    Offline

    2
    ReputationRep:
    Learn more Python or start C.
    EMZ=]
    Offline

    12
    ReputationRep:
    (Original post by paper-wings)
    Hey guys,

    I am currently on my gap year, so I have a bit of free time, and I would like to learn another programming language, for fun and also to keep my brain active before I go to uni to do Maths and CS in Sept 11.

    I currently know: VB.NET (the shame! ), PHP, XHTML/CSS, Javascript and I have done a tiny bit of python. I am pretty good in all of the above, I can make decent programs (I am best in VB.NET just because it was the language my college taught)

    I'm just looking for something to enjoy really, and something that will help me in my degree next year, I think we learn C, Java, Haskell.

    Any ideas? I did think of Python, but does anyone else have any suggestions?
    C will help you understand what's going on on a much more basic level, which will definitely be useful in your degree (as well as interesting).

    Learning some haskell or lisp (common lisp or scheme) now would be excellent exposure to new and different concepts, and would also help you in your degree.

    Learning anything else would probably also help you, but most obviously you might want to try the object oriented thing by learning java or similar. I think the above two options are more interesting, though.
    Offline

    3
    ReputationRep:
    I'm going to say don't learn C until you know java. Java is a really nice language and you can do so much with it without pulling too much of your hair out. I learned C++ as my first language and I can honestly say that I wish I'd learned java first.
    Offline

    12
    ReputationRep:
    (Original post by coldplasma)
    I'm going to say don't learn C until you know java. Java is a really nice language and you can do so much with it without pulling too much of your hair out. I learned C++ as my first language and I can honestly say that I wish I'd learned java first.
    C++ is a mess built on top of C, and doesn't reflect that well on what C actually is.
    Offline

    3
    ReputationRep:
    Java

    Multiplatform, easy to learn with it's community, IDEs, fun (as you can test out interesting things like Java applets etc..)

    And you'll probably find it quite easy considering you already know PHP and they have a similar syntax, JavaScript especially is incredibly similar.
    Offline

    2
    ReputationRep:
    Whitespace and BrainF*ck are both good for a laugh. As is chef. You could try INTERCAL.
    Offline

    2
    ReputationRep:
    (Original post by coldplasma)
    I'm going to say don't learn C until you know java. Java is a really nice language and you can do so much with it without pulling too much of your hair out. I learned C++ as my first language and I can honestly say that I wish I'd learned java first.
    C and Java are based on totally different paradigms, so I'd say you could even learn them concurrently if you so desired. C will allow you to appreciate lower level aspects such as memory management which you will need to learn as part of the course. Java will allow you to learn about Object Oriented Programming. In my course we did C first and then Java later. This combination has allowed me to pick up C++ quite easily, it's essentially combining knowledge of C and Java with a few extra features.
    • Thread Starter
    Offline

    0
    ReputationRep:
    Thanks for all your comments guys. I have decided to go ahead and get started on C, as I would like to understand lower level concepts more.

    Cheers!
    Offline

    3
    ReputationRep:
    (Original post by paper-wings)
    Thanks for all your comments guys. I have decided to go ahead and get started on C, as I would like to understand lower level concepts more.

    Cheers!
    Good luck
    Offline

    3
    ReputationRep:
    My point is that java is an easy language to learn and the concepts are transferrable to another language. Java skips over all that memory management stuff and for the purpose of learning that is a good thing.
    Offline

    3
    ReputationRep:
    I've just started learning C as my first language and although it drives me crazy sometimes I think its good because its so basic, I can only assume (as I don't really know any other languages bar HTML/CSS and a bit of Actionscript/Javascript) that its a good base and make you a less 'lazy' programmer i.e doesn't give you too many shortcuts.
    Offline

    3
    ReputationRep:
    I would say in a language like C, it is easier to form bad habits as it doesn't enforce a strict style of programming like Java. A lot of the time, I find C/C++ completely unreadable when written by poor programmers. This isn't the case in Java, at least for me anyway.
    Offline

    0
    ReputationRep:
    (Original post by coldplasma)
    I would say in a language like C, it is easier to form bad habits as it doesn't enforce a strict style of programming like Java. A lot of the time, I find C/C++ completely unreadable when written by poor programmers. This isn't the case in Java, at least for me anyway.
    You can write poor or unreadable code in any language.

    I frankly find a lot of Java hard to read as I'm not nearly as familiar with it as I am with C, it comes down to individual preferences and the task at hand at the end of the day.
    Offline

    14
    ReputationRep:
    (Original post by Inversion)
    C and Java are based on totally different paradigms, so I'd say you could even learn them concurrently if you so desired. C will allow you to appreciate lower level aspects such as memory management which you will need to learn as part of the course. Java will allow you to learn about Object Oriented Programming. In my course we did C first and then Java later. This combination has allowed me to pick up C++ quite easily, it's essentially combining knowledge of C and Java with a few extra features.
    I'm guessing Bristol is where you study and not Liverpool. I don't think there are many other unis that take that approach. I think it's a good idea to teach it that way (biased obviously as I went to Bristol too).

    C gives you an appreciation of how data is actually stored and represented in memory. Where as in Java that's all hidden away from you.
    Offline

    2
    ReputationRep:
    (Original post by Psyk)
    I'm guessing Bristol is where you study and not Liverpool. I don't think there are many other unis that take that approach. I think it's a good idea to teach it that way (biased obviously as I went to Bristol too).

    C gives you an appreciation of how data is actually stored and represented in memory. Where as in Java that's all hidden away from you.
    Yeah, do you remember one of the lecturers saying: "C is a razor sharp tool with which you can make an elegant program or a bloody mess"? Pretty relevant to this thread.
    Offline

    0
    ReputationRep:
    Python then Java then C.
 
 
 
  • See more of what you like on The Student Room

    You can personalise what you see on TSR. Tell us a little about yourself to get started.

  • Poll
    What newspaper do you read/prefer?
    Useful resources
  • See more of what you like on The Student Room

    You can personalise what you see on TSR. Tell us a little about yourself to get started.

  • The Student Room, Get Revising and Marked by Teachers are trading names of The Student Room Group Ltd.

    Register Number: 04666380 (England and Wales), VAT No. 806 8067 22 Registered Office: International House, Queens Road, Brighton, BN1 3XE

    Quick reply
    Reputation gems: You get these gems as you gain rep from other members for making good contributions and giving helpful advice.