Learning computer programming - any advice/tips? | INFJ Forum

Learning computer programming - any advice/tips?

Discussion in 'Science and Technology' started by James, Jun 26, 2010.

Share This Page

Watchers:
This thread is being watched by 2 users.
More threads by James
  1. James

    James Infamy, infamy.. they've all got it infamy
    Retired Staff

    Joined:
    Dec 29, 2009
    Threads:
    121
    Messages:
    5,560
    Featured Threads:
    8
    Likes Received:
    21,586
    Trophy Points:
    3,498
    Gender:
    Male
    MBTI:
    INFJ
    Hi all,

    I've decided to learn some computer programming. I have started to have a look at Java and I was wondering if anyone has any experience in that area, or suggestions that might help me. I know it will take considerable time and patience.

    I want to establish;



    1) What are the most important/valuable languages to learn.

    2) Which are most likely to be useful in looking for a new job in that area.

    3) Any suggestions or links to useful resources.

    I'm in no huge rush, and even if I only learn something for fun then that's ok with me, but I'd like to develop my ability to go further than that, and write useful software.

    Thanks for reading, I'm grateful for any constructive feedback.



     
  2. mooseman

    mooseman Local Claviger
    Donor

    Joined:
    Sep 29, 2009
    Threads:
    18
    Messages:
    880
    Likes Received:
    105
    Trophy Points:
    175
    MBTI:
    INFJ
    Enneagram:
    9-ish


    Hi James. I work as a programmer. Sometimes I wonder if that is what I really should do with my life, but that's another story. I'll just go ahead and try to answer your questions. :)

    1) What are the most important/valuable languages to learn.
    Java is definitely one of the most versatile and widely used laguages. It is relatively easy to write programs in Java, which is a plus for beginners. It takes care of a lot of memory management details for you, at the cost of performance, but in most cases that's worth it. Java is a very good first language to learn.
    C# was created by Microsoft to compete with Java. The languages are very similar. C# is specialized for Windows while Java works on all platforms. C# would not be a bad choice either.
    C++ is the most common language used for high performance applications, such as games and number crunching. As a beginner, I'd recommend - just don't go there.
    Flash/ActionScript is used mostly for graphics intensive web applications. (Also known as Rich Internet Applications, RIA.) This is what I'm into at the moment. It is really easy to make small programs that make fun things, but I wouldn't recommend it to a beginner who wants to build a solid foundation of programming knowledge. It is very easy to write ugly, complicated code in ActionScript if you are not careful, and you don't want to make that a habit. For someone who just wants to have some fun, it might be the perfect language.
    PHP
    is used for the web. I have no personal experience with that, but it's good to know at least that it exists.

    2) Which are most likely to be useful in looking for a new job in that area.
    Java.

    3) Any suggestions or links to useful resources.

    When I want to learn a new language, I go to Amazon and look for books with 5-star reviews. I google for beginners' tutorials and for forums on the particular topic I'm interested in. I find looking at other peoples' code very enlightening. You also need to remember that there are many levels of understanding of programming. There is the syntax of the language, then the common basic ways of use the constructs, then the higher level design patterns and more. It is also good to know a little about the OS, the compiler and how the comupter works under the hood. No programmer can be expected to have complete knowledge about all this, but knowing a little of everything will benefit. Try to find resources that are direcred towards your level and you will learn in time.

    So, that's all I can think of right now. Hope it helps. Good luck and have fun! :)
     
    DoveAlexa likes this.
  3. DoveAlexa

    DoveAlexa Chaz's Lovey Bunny
    Donor

    Joined:
    Mar 5, 2010
    Threads:
    30
    Messages:
    1,996
    Likes Received:
    271
    Trophy Points:
    0
    MBTI:
    INFJ
    Enneagram:
    9
    Also, javascript, which has nothing to do with java, is a language used in many web pages for use in rollovers and drop-down menus. Roll-overs are super easy to learn and make, but it'll soon test your patience because it tends to just 'not run' even though everything is fine XD. Something about the nature of the web itself I think, and caching. However, the beginning stuff is easy to learn, and is very useful.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. Blind Bandit

    Blind Bandit Blind Man Being Lead to Nowhere
    Donor

    Joined:
    Jan 28, 2009
    Threads:
    132
    Messages:
    3,869
    Featured Threads:
    2
    Likes Received:
    1,106
    Trophy Points:
    792
    Gender:
    Male
    MBTI:
    INFJ
    Also take a look at CSS, HTML, XHTML, Ruby, Rub on rails, and mySQL,
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  5. OP
    James

    James Infamy, infamy.. they've all got it infamy
    Retired Staff

    Joined:
    Dec 29, 2009
    Threads:
    121
    Messages:
    5,560
    Featured Threads:
    8
    Likes Received:
    21,586
    Trophy Points:
    3,498
    Gender:
    Male
    MBTI:
    INFJ
    Thanks to all of you for your help and advice. I've previously ran a website and learned some html, but its years since I tried to write any code (that was in basic back in the 80's).

    Anyway thanks for the support, and the swift replies. This is a good forum with some very helpful people.
     
  6. corvidae

    corvidae ohai internets
    Donor

    Joined:
    Dec 23, 2008
    Threads:
    60
    Messages:
    806
    Likes Received:
    54
    Trophy Points:
    0
    MBTI:
    INTJ
    Enneagram:
    ?
    to me, the most important thing I should have learned earlier is that programming ≠ computer science.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  7. JohnDoe

    JohnDoe Guest

    If you want to learn how to program learn C# or Java.
    If you want to understand how to program learn C++. I would say learn straight C, but having the standard libraries available is really useful.

    Learning C++ will give you a better foundation but learning C# or Java will get you started quicker.
     
  8. mooseman

    mooseman Local Claviger
    Donor

    Joined:
    Sep 29, 2009
    Threads:
    18
    Messages:
    880
    Likes Received:
    105
    Trophy Points:
    175
    MBTI:
    INFJ
    Enneagram:
    9-ish
    [ame="http://www.youtube.com/watch?v=A1zySeNpW20"]YouTube- Java 4-Ever Trailer[/ame]
     
    Siamese cat likes this.
  9. testing

    On Holiday

    Joined:
    Aug 14, 2009
    Threads:
    37
    Messages:
    902
    Likes Received:
    90
    Trophy Points:
    0
    MBTI:
    qwer
    Hi James,
    I'm working on learning Flash/Action Script right now... and am also dabbling in CSS and HTML. There seems to be a fair amount of demand for these languages, and I'm enjoying learning them, but it is not exactly easy. I'll probably move on to Ruby on Rails and maybe Flex after this. Good luck with learning these things -- I've found it is very similar to learning actual spoken languages, once you figure out the logic behind them and remember the punctuation. It can be incredibly frustrating and rewarding at the same time! Would love to hear your experiences as you pursue this...
    Janet
     
    Blind Bandit likes this.
  10. frozen_water

    frozen_water Community Member

    Joined:
    Aug 11, 2008
    Threads:
    10
    Messages:
    367
    Likes Received:
    45
    Trophy Points:
    0
    MBTI:
    INTP
    Java is definitely the best, if you're looking to get a job.

    And actually... if you're looking to tune your mind to work in a programing-friendly way, I would recommend giving http://www.kongregate.com/games/Coolio_Niato/lighbot-2-0 a try. Don't be discouraged if you have trouble, because it gets very hard rather quickly... but there's a link to solutions if you ever get stuck. I'm not certain, but it seems like it would be a great tool for a new person to learn the basics of functions, conditionals, recursion, problem solving by programing, and the general flow of how a program runs.
     
  11. Wyote

    Wyote (#/-\[]$ ([]`/[]'|'[-
    Staff Member Administrator

    Joined:
    Sep 28, 2008
    Threads:
    254
    Messages:
    38,619
    Featured Threads:
    19
    Likes Received:
    213,157
    Trophy Points:
    4,271
    Gender:
    Male
    MBTI:
    INFJ
    Enneagram:
    954 so/sx
    If you want a decent job you'll have a major advantage if you know Perl. I've seen lots of job apps with it requested/preferred.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  12. IndigoSensor

    IndigoSensor Product Obtained
    Retired Staff

    Joined:
    Nov 12, 2008
    Threads:
    762
    Messages:
    14,154
    Likes Received:
    1,298
    Trophy Points:
    0
    MBTI:
    INFJ
    Enneagram:
    1w2 sx/so/sp
    I'd rather stick my tongue on a mousetrap then study computer programing!
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  13. Blind Bandit

    Blind Bandit Blind Man Being Lead to Nowhere
    Donor

    Joined:
    Jan 28, 2009
    Threads:
    132
    Messages:
    3,869
    Featured Threads:
    2
    Likes Received:
    1,106
    Trophy Points:
    792
    Gender:
    Male
    MBTI:
    INFJ
    Honestly I wouldn't even touch perl its outdated. I would rather spend time learning a more current language.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  14. Ecton

    Ecton Community Member

    Joined:
    Feb 25, 2010
    Threads:
    4
    Messages:
    894
    Likes Received:
    126
    Trophy Points:
    0
    MBTI:
    INFJr
    I recommend Java or C# for beginners.

    You can learn C++ as a beginner but stick with examples and books that use the language wisely.

    If you want to learn computer science, get three books:
    1) Algorithms
    2) Theory of Computation
    3) Computer Architecture

    Then branch out from there.

    If you prefer to stick your tongue in a mouse trap, I recommend applying Orajel first. Just be careful not to accidentally study organic chemistry, as it is considered torture by the UN. ;)
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  15. JohnDoe

    JohnDoe Guest

    Get Hennesy's computer org book and once you've read it get his architecture book. It requires very little programming knowledge and explains how things work at the hardware level. If you really want to be a programming genius start this way.
     
  16. durentu

    durentu Regular Poster

    Joined:
    Mar 22, 2009
    Threads:
    1
    Messages:
    100
    Likes Received:
    19
    Trophy Points:
    0
    MBTI:
    INTP
    I should point out that android cell phone applications are all java.

    If you need practice, there's a site called http://codingbat.com/
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  17. frozen_water

    frozen_water Community Member

    Joined:
    Aug 11, 2008
    Threads:
    10
    Messages:
    367
    Likes Received:
    45
    Trophy Points:
    0
    MBTI:
    INTP
    oh yeah... another good one for practice problems is http://projecteuler.net/

    It's a page full of math problems which require that you write a program to solve (else they'd take you forever to do). After the first dozen or so, they require that you put considerable thought in the algorithm, because solving them the "obvious, easy way" would take a computer far too long to do. I taught myself Python using that site, hehe.
     
  18. OP
    James

    James Infamy, infamy.. they've all got it infamy
    Retired Staff

    Joined:
    Dec 29, 2009
    Threads:
    121
    Messages:
    5,560
    Featured Threads:
    8
    Likes Received:
    21,586
    Trophy Points:
    3,498
    Gender:
    Male
    MBTI:
    INFJ
    Thank you to all

    Thank you to everyone for the advice and suggestions. Especially the mousetrap one, that really cracked me up..

    I'm going to give JAVA a go first, and I'll probably be posting again soon, to say I can't work it out !

    Thanks again,
    James


     
Loading...

Share This Page