First language!

Discussion in 'Programming' started by areza1, Oct 26, 2009.

  1. #1
    Hey guys. I am great at designing websites etc but want to learn programming. Always have thought that programming would be fun but have never had the guts to start. It doesn't have to be a web development language, I would actually prefer an application language!

    I am only 14 so don't want the most complex language. I have a mac so I don't think I can do all the languages but will be getting a PC very soon!

    Thank you
     
    areza1, Oct 26, 2009 IP
  2. wisdomtool

    wisdomtool Moderator Staff

    Messages:
    15,826
    Likes Received:
    1,367
    Best Answers:
    1
    Trophy Points:
    455
    #2
    How about C? It should be one of the most popular around.
     
    wisdomtool, Oct 26, 2009 IP
  3. nihangshah

    nihangshah Prominent Member

    Messages:
    5,536
    Likes Received:
    271
    Best Answers:
    3
    Trophy Points:
    395
    #3
    Level 1 - Start with C, then with object oriented C++.

    Level 2 - Java and .net
     
    nihangshah, Oct 26, 2009 IP
  4. areza1

    areza1 Peon

    Messages:
    358
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #4
    Alright, so I should go with C. Does it require any specific program etc?


    Also, any specific books I should use as a learning tool. I really like those books that at the end of the chapter, you have a challenge which you need to complete then you can go to the next chapter. Like a quiz or something!

    Thanks guys. Been here for less then 2hrs at digital point and already loving it:)
     
    areza1, Oct 26, 2009 IP
  5. personal-tips

    personal-tips Peon

    Messages:
    11
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #5
    since your on a MAc C is usually a pain to get their. at least was when C was still use buy mostl. C is a great language fast, powerful, but incredibly complexe and require more code it also don't let you make mistakes.

    I would suggest java. easy to get free from http://java.sun.com/

    to devellop i suggest to use eclipse . tons of tutorial and samples on the web. distrubution is easy to get for java base from easy to get free from http://java.sun.com/


    if you want to bcomes a very good programmer comes back to C and assembler to understand memory and it's management, but this is a pain to start with.

    P.S. a programmer that try to learn web :)
     
    personal-tips, Oct 26, 2009 IP
  6. areza1

    areza1 Peon

    Messages:
    358
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #6
    hmmmmmmm.

    So now between C and Java. Java I think is good as it's cross platform, but what things can you make with
    JAVA and what things can you make with C.

    I want to compare the potential of both of them before making any decisions!

    Thanks for the help guys. Really appreciate it!
     
    areza1, Oct 26, 2009 IP
  7. Gungz

    Gungz Peon

    Messages:
    65
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #7
    I vote for Java.
    You can visit link in my signature to find some programming resources.
    Who knows there's something that interests you.
    Good Luck..
     
    Gungz, Oct 27, 2009 IP
  8. areza1

    areza1 Peon

    Messages:
    358
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #8
    Alright thanks. It looks like its JAVA. Thanks everyone. By the way, what are the most popular type of programs made with JAVA.
     
    areza1, Oct 27, 2009 IP
  9. organicCyborg

    organicCyborg Peon

    Messages:
    330
    Likes Received:
    8
    Best Answers:
    0
    Trophy Points:
    0
    #9
    I started programming when I was your age. Over 10 years later and I'm still at it too.

    It goes against the advice already here, but I say learn Python. It's a great beginners language, and it's something you can keep using throughout your programming career.

    You can use it for applications or web apps.

    Check out the tutorial here: http://docs.python.org/tutorial/
     
    organicCyborg, Oct 27, 2009 IP
  10. areza1

    areza1 Peon

    Messages:
    358
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #10
    Hey mate. Yeah I have heard of python before. Is it web programming or application development. Also does it work on a mac?
     
    areza1, Oct 27, 2009 IP
  11. organicCyborg

    organicCyborg Peon

    Messages:
    330
    Likes Received:
    8
    Best Answers:
    0
    Trophy Points:
    0
    #11
    It works on mac, windows, and linux.

    You can do both web development and application development with it.
     
    organicCyborg, Oct 27, 2009 IP
  12. areza1

    areza1 Peon

    Messages:
    358
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #12
    hmmmmm. Another tough decision. Because I found a book that looks great on JAVA but you say Python is a great beginners language. Can I have someone else give me a suggestion or a direction!
     
    areza1, Oct 27, 2009 IP
  13. wafel

    wafel Peon

    Messages:
    2
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #13
    I think you have to focus on getting a feeling for how programming works. To do that, it doesn't really matter a lot which language you choose. It's a mindset. I started at 11 with an old BASIC machine.. and that was fine too ;-)

    What I would suggest though is that you start off with an object-oriented language... since that's really the most important concept to get a feeling for nowadays. Java is good for making client/server software.. if you want to do more with web-applications you could check Ruby or Python.

    But overall every language will benefit you as you start to know what it is like to program. Once you get good at that it is very easy to learn new languages as they're all similar.. so don't worry about it too much and just experiment a bit :)

    Have a great day!

    --
    Walter
     
    wafel, Oct 27, 2009 IP
    personal-tips likes this.
  14. personal-tips

    personal-tips Peon

    Messages:
    11
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #14
    i would agree with wafel it's the programming mind ad technics that need to be learn the language is a tools.

    C and C++ are for real time, time critical, OS and driver. was used in application but less and less (execp possibly for C# for .net)

    java is widely is in big enterprise solution. nearly all web trasactional for the banks made in tha last 10 years are made in java. the disavantage of java is GUI interface are ugly. that's oe of many reason that al interface are going web

    python, PHP, perl. are language based mostly to make web backend easy by simplifying some issue(making some very complexe like perl and it's very non intuitive language)

    I suggest taht you take a small project and make in in steps. I would suggest as first one a calculator. make it first command line, then add the gui, then make it web command line, then add a gui and then make it web using calculation back-end. (you should then find that your backend should have the same interface with 3 front-end)
     
    personal-tips, Oct 27, 2009 IP
  15. NeoCambell

    NeoCambell Peon

    Messages:
    456
    Likes Received:
    6
    Best Answers:
    0
    Trophy Points:
    0
    #15
    I have experience in programming for about 19 years now and I started computing when I was 11 with a Sinclair Spectrum like most of the guys in the good old era. So I thought I better give some help to get you started.

    RULE 1: Programming is a passion. You must love to sit in front of a computer long hours ( sometimes I did 20 hours a day :) ). When you love your computer, it will let you learn how to code it :D

    RULE 2: You must learn programming concepts first. "Concepts of Programming Languages - Sebesta" is a good book. It explains you the structures used in coding, so you can use any language you want as appropriate for different applications without fear. Learn some object oriented coding concepts.

    RULE 3: Learn Data Structures & Algorithms
    These are the building blocks of programming. Stacks, Queus, Trees, Link lists, etc... Choose a book with reference to C/C++.

    RULE 4: Learn C/C++. Both are almost same (Don't worry about the differences for now. Just learn C).
    Start with the following code.

    #include <stdio.h>

    void main(){

    printf ("Hello World!\n");
    return;
    }

    Don't get this small code simple. All genius coders started with this including Bill Gates.

    RULE 5: Learn Assembly Programming at least to some extent
    Without knowledge in assembly, I don't employee any programmer in my organization. The reason is simple. People with a knowledge in ASM coding knows how computers are working. Others are just writing high level codes without knowing how they are converted to ASM at the end to make the electronic components of the computer to understand.

    ------------------
    Remember coding is easy. But to put things right you must catch the concepts perfectly which is also easy. Only thing is you need to follow one step at a time. Don't try to learn everything at once. Believe me, I still learn even after a BS and many years of experience. There is no end for learning. (The day you realize you are a programming genius, that's the end of your programming carrier :) )

    Also, when you learn the concepts right with C language, you can switch to C#, VB.Net, C++.Net, Java, Delphi, Ada or any other programming language quite easily.

    I must tell you that I personally don't like Java for Applications. It is extremely slow as it has to pass through another layer called Java Virtual Machine which makes Java platform independent. I don't believe in Java platform independence as C/C++ performs a far more better role with cross compilers for almost all platforms in the world. In simple terms your C code will run under all common operating systems with simple porting.

    However Java is essential for Web Programming. Javascript, JSP, AJAX all based on the principles of Java.

    I think I have written a complete article which will give your a perfect start. (This is the way I have started and end up as a professional programmer, Tech lead and a CEO)

    Good luck!
     
    NeoCambell, Oct 28, 2009 IP