Computer Programming


Last Updated:

  1. SuperRon

    SuperRon Member This Topic's Starter

    Joined:
    Jan 15, 2009
    Messages:
    14
    Likes Received:
    0
    Hi Everyone,

    I am interested in learning computer programming such as C++, Java, HTML etc. and just wondered if anyone could tell me which is best to learn first.

    Also if you know of any good websites that can teach you the stuff.

    Cheers

    SuperRon
     

    Advertisement
  2. Phases

    Phases Community Manager Administrator

    Joined:
    Sep 9, 2008
    Messages:
    8,498
    Likes Received:
    18,872
    There's a ton out there on the googles. Just search for "[whatever] tutorials".

    I've used this site a little for introductory stuff. (web stuff) I liked it.

    http://www.tizag.com/

    I couldn't help ya with what order to learn stuff in, I only mess with html/php/sql.
     
  3. Ageless Stranger

    Ageless Stranger Well-Known Member

    Joined:
    Dec 2, 2008
    Messages:
    699
    Likes Received:
    49
    First of all there is no "best" language to learn first, the best thing to learn first are the concepts of software design. I would even go as far as saying it is important to understand hardware architecture, number base systems, logic and bit manipulation before delving in to languages and syntax (although you can skip these but you might end up wishing you hadnt)

    Now C is my favourite language, once you get your head around pointers the rest of the language is childs play. If you know C you can easilly adapt to C++ and Java as the syntax is very similar.

    Now what language is best to learn? First ask yourself how to get from A to B, more specifically what A and B are? In other words, why do you want to learn to program? What are your objectives? Do you want to write web applications, games, desktop applications, embedded applications? What you want to do with your program is dependant on what language you will write it in.

    For the Web, you might as well learn the concepts and structure of HTML, XML, Java, Javascrip and PHP for starters.

    For games, well you are best learning C and C++

    For applications, you are best learning C and C++ (unless you want to write for mobile devices then Java will help too)

    For embedded systems you will need to know C,C++ and assembler and any language dependencies on the system you are writing for.

    Assembler I hear you gasp? I love it, it is essential if you want to debug at a low level.

    So much information, so many choices. Sorry its the best I can do with the limited information I have about what you want to do.
     
  4. SuperRon

    SuperRon Member This Topic's Starter

    Joined:
    Jan 15, 2009
    Messages:
    14
    Likes Received:
    0
    Thanks for the reply's.

    I was originally wanting to learn so that i could try and create my own small applications for Android as i had a few ideas for nice apps.

    But i would also like to create my own webpage.

    SuperRon
     
  5. Cryptic79

    Cryptic79 VIP Member VIP Member

    Joined:
    Sep 10, 2008
    Messages:
    576
    Likes Received:
    24
    For Android, it's Java.

    For web, I prefer ASP.NET with either VB.NET or C#.NET for the "real" code.
     
  6. mmaitlen

    mmaitlen Member

    Joined:
    Nov 20, 2008
    Messages:
    13
    Likes Received:
    2
    A decent place to start online is at Sun's Java Tutorial site. But if you truly want to go through the whole process of learning a language by yourself, you gotta be patient. It's tough to start off from zero and dive right in...I did it, but it was way (wayyyy) back on the Apple IIe with Applesoft Basic, much (MUCH!) easier to learn.

    Anyway, give it a go, start off with the easy stuff, and don't give up! Good luck!

    Another course may be to find an Java/Android programmer near by and see if they want to collaborate with you to help get your ideas going. An hour with someone who knows what they are doing is priceless!
     
  7. mmaitlen

    mmaitlen Member

    Joined:
    Nov 20, 2008
    Messages:
    13
    Likes Received:
    2
    As far as the web stuff, you may also check out Ruby on Rails...seriously easy to get something simple going. And as long as you aren't building out a huge back end infrastructure architecture, it's more then adequate (imho).
     
  8. MotoDroidHelpandInfo

    MotoDroidHelpandInfo Well-Known Member

    Joined:
    Nov 8, 2009
    Messages:
    189
    Likes Received:
    0
    Java is good to learn. It's getting very very popular. It also helps for developing android apps. Also try a book store. Some are extremely boring others are a great way to pass the time.
     
  9. big_z

    big_z Well-Known Member

    Joined:
    Nov 4, 2009
    Messages:
    253
    Likes Received:
    57
    I would try to learn the concepts of object oriented programming (OOP) before I picked up a language (assuming you've got the core programming concepts understood: variables, conditionals, loops, and functions). I don't have a good reference for learning "pure" OOP (and in fact almost any reference is going to use sample code in some real world language).

    Trying to learn a modern language before you understand OOP will leave you not fully understanding why the languages are the way that they are. For example, when you get to collections of objects in Java, you'll probably be very confused when they keep talking about Lists but you find that the compiler won't let you create just a List. Then you'll find the ArrayList and start using that, but then you'll ask yourself "why would anybody mess around with List when you can just use ArrayList and have it work?". At that point you'd be missing the entire point of OOP.

    Once you grok OOP, I'd go for one of Java, or C#. After that I'd learn about how the browser cycle works (HTTP requests, responses, that kind of thing) and then pick up PHP or ASP.

    I would never bother with C unless you were looking to write a compiler, an operating system, or very low level embedded code. There are things which are perfectly moral (and necessary) in C that are the equivalent of inhuman crimes in more modern languages. For example, in C it is not unheard of to take a pointer, figure out some arbitrary number of bytes away from that pointer, start grabbing bytes from that location, and cramming those bytes into some array somewhere. In Java, C#, PHP, Ruby and other modern languages doing that would crime against humanity because it's asking (more like begging) for your code to crash.

    And of course, bottom line, Android apps are written in Java (though you won't necessarily have access to all the same stuff that you do when, say, you go through Sun's Java tutorials).
     
  10. geekygrl

    geekygrl Member

    Joined:
    Nov 3, 2009
    Messages:
    11
    Likes Received:
    0
    Having just finished my first year of an IT degree this is what we studied as our 'first' programming languages - C++ and Java. (Actually found them rather similar to one another as well)

    Neither of them at my beginner level are what I considered hard, and once you start picking up the basics you will find its a matter of learning the rest of the language in 'steps' so to speak, as in once we had the basics, I found that writing basic code was able to be expanded upon, and do more things once you got deeper into the language.

    Remember, its all about algorithms (and pseudocode and flowcharts)! :D
     
  11. twospirits

    twospirits AF's janitor Moderator

    Joined:
    Oct 4, 2009
    Messages:
    6,182
    Likes Received:
    5,028
    outstanding thread.
     
  12. stoyv

    stoyv New Member

    Joined:
    Jan 15, 2010
    Messages:
    1
    Likes Received:
    0
  13. neemo6

    neemo6 Well-Known Member

    Joined:
    Nov 19, 2009
    Messages:
    58
    Likes Received:
    1
    Great thread, I went back to school to a community college to learn programming. Im wanting to learn C/C++ and Java, and learn some basics of networking.
     
  14. SoulTerror

    SoulTerror Well-Known Member

    Joined:
    Feb 18, 2010
    Messages:
    724
    Likes Received:
    48
    W2schools.com JavaScript Tutorial is a good site. I'll actually be taking my first Java class next semester online, so I'm pretty excited about that. I'm hoping one day to be writing some apps, but probably not for a long time.
     
  15. GIR

    GIR Well-Known Member

    Joined:
    Feb 14, 2010
    Messages:
    96
    Likes Received:
    10
    I'd recommend python for quick results, but its not always so great for any heavy lifting such as image processing, but it gets results. There are a LOT of python tutorials, and there is almost no limit to what can be done with it.

    If your really determined to learn more about programming then I suggest you visit microchip.com, and have a look into PIC chips.
    Learning assembler and about real-time programming, even with something a trivial as blinking a LED, or making tunes with speaker will really open your eyes as to what is possible.
    There are many easy to follow schematics for PIC flashers to get your code into the chip, as well as many sites with projects for pics - one of my favorites is hackaday.com. If your wise enough to be running Ubuntu there is the piklab (piklab.sourceforge.net) for putting the PIC code together.

    Hope this of use,
    GIR
     

Share This Page

Loading...