1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Development I want to learn programming

Discussion in 'Software' started by Slaughter, 12 Jan 2009.

  1. Slaughter

    Slaughter What's a Dremel?

    Joined:
    1 Aug 2007
    Posts:
    167
    Likes Received:
    0
    Well the time has come (i am nearly 16) and really want to learn how to code, thats what actually I want to do in my career as well in the future... So as a mac bi@tch, I was thinking starting with Java (or not)... So how do you learn to code? I am going to be coding from a netbook (Samsung NC10-Mac OS X) as well as my main rig because of the nicer keyboard!

    I was thinking starting with an IDE (Netbeans maybe) but what are my options

    But the basic thing that I havent got to realise just yet is HOW DO YOU LEARN TO PROGRAM? So where should I begin and what should I do
     
  2. ch424

    ch424 Design Warrior

    Joined:
    26 May 2004
    Posts:
    3,112
    Likes Received:
    41
    Don't use java, it's ugly and complicated.

    Go and play with Python, using their provided tutorial.

    It's very easy to use, and is very extensible.
     
  3. Paolo

    Paolo What's a Dremel?

    Joined:
    20 Sep 2004
    Posts:
    198
    Likes Received:
    1
    ... and don't forget to ask questions! Many, many questions.

    And the best thing to do is to set yourself challenges, otherwise you'll find that enthusiasm slips away after you complete the "hello world!" tutorial in (insert buzzword programming language here).

    Or, you know, I could set you one ;)
     
  4. ch424

    ch424 Design Warrior

    Joined:
    26 May 2004
    Posts:
    3,112
    Likes Received:
    41
    Write a script that searches google for random words and displays the images that come back on the surface of a cube :)
     
  5. notatoad

    notatoad pretty fing wonderful

    Joined:
    25 Jun 2004
    Posts:
    3,213
    Likes Received:
    60
    do use java, it's a great first language. the syntax has a lot in common with many other languages, and the strong object-oriented design with a clear division between objects and classes is a good thing to learn first. those ugly complicated things enforce rules that you should be following as you are learning. when you get better, you can move to a language that doesn't always make sure you do things the right way.

    read books. actual books, with pages printed on paper. you can't really learn from blogs and web tutorials. i learned from cay horstman's big java, but there are many good ones.

    the best way to really learn is to have something you want to accomplish with the language. if your goal is to learn java, you will never succeed. if your goal is to write a java program that does [something], you will succeed and you will learn java along the way.
     
  6. Slaughter

    Slaughter What's a Dremel?

    Joined:
    1 Aug 2007
    Posts:
    167
    Likes Received:
    0
    Yes but I find my goals not realistic and sometimes I cant even find a project I like especially for mac...

    So I am starting with Java could you introduce me a good book preferably in English,because I can become better in english too with that :worried: :p

    Anyways my goal for now is make a programm sheduler so you wont need to do anything with your windows system to keep it clean...

    Was thinking about running some freeware programms on the back round and people could choose to do it when the computer is not used!

    Thats my :geek: unrealistic idea!
     
  7. OS-Wiz

    OS-Wiz Old School OCer

    Joined:
    16 Dec 2006
    Posts:
    61
    Likes Received:
    1
    JAVA! If you want a job as a programmer, learn JAVA. Go to Sun Microsystems and download their JAVA Development Kit (JDK) and do their tutorials. Might also check out "JAVA for Dummies" book.
     
  8. notatoad

    notatoad pretty fing wonderful

    Joined:
    25 Jun 2004
    Posts:
    3,213
    Likes Received:
    60
    i would choose a different project, especially if you are using java. with that idea you are going to have to spend more time learning APIs and operating system hooks than actually learning java. choose something that has a text based interface, you enter some data, it does something with it, and then gives you a result, maybe some sort of text-based game or something. you want to rely on as little external stuff as possible. as you get better, you can learn GUIs, file operations, and other stuff.
     
  9. Slaughter

    Slaughter What's a Dremel?

    Joined:
    1 Aug 2007
    Posts:
    167
    Likes Received:
    0
    So I searched on older posts and I am on a delema, read in one of the searches that is better to learn C++ first :confused: what should I do?
     
  10. notatoad

    notatoad pretty fing wonderful

    Joined:
    25 Jun 2004
    Posts:
    3,213
    Likes Received:
    60
    you can find somebody who will say just about any language is the best one to learn first. they're all just opinions, there is no absolute 'best learning language'. you've got to make a decision.
     
  11. Slaughter

    Slaughter What's a Dremel?

    Joined:
    1 Aug 2007
    Posts:
    167
    Likes Received:
    0
    I am actually dreaming programming as my future carrier, I want solid bases for the languages that will come and that are already in the market!

    Also I heard C++=>Java is easy but not the reverse S:
     
  12. Paolo

    Paolo What's a Dremel?

    Joined:
    20 Sep 2004
    Posts:
    198
    Likes Received:
    1
    When working as a tutor for 1st and 2nd year students at Uni, I found that adding the concepts of Object Orientation (Java, C# etc) on top of just 'learning the basics' to be too much for most.

    Our course started with ADA, but that's a bit dated now so they've switched to Python - which has its merits in that you can get started right away without worrying about the surrounding 'scaffolding' you need with languages like Java etc.

    I'd recommend as others have starting small with something 'light 'n' easy' like Python and learning about concepts such as control structures (IF Statements, Loops, Case Statements) then move forward from there.

    I found an effective way to get the concepts across was do a few weeks of drills on the absolute basics, and then giving the students a challenge - first was a console version of Connect 4, then a version of Battleships! Fun times :)
     
  13. Matticus

    Matticus ...

    Joined:
    23 Feb 2008
    Posts:
    3,347
    Likes Received:
    117
    On my degree course, the first year of programming was dedicated to Java, this year the first semester was C++ and now back to java for a more in depth look at objects.

    I think you should start with java, it is a very useful language if you are looking to get into programming as a career. Some say it is a horrible language, but it is the horrible bits that make you a good programmer.

    I would say java is like learning to drive in an old banger, you will get to know the car more and how it works and it will then be a breeze to drive a nice new car (python).
    Also to further this analogy and make it rubbish, you could then say after using the banger for a while you realise that after a bit of tinkering you can make a very reliable, powerful and easy to drive car and feel good about yourself because you learnt the hard way.

    I know there is a good XKCD comic which expresses exactly what I have just done.
     
  14. Ending Credits

    Ending Credits Bunned

    Joined:
    4 Jan 2008
    Posts:
    5,322
    Likes Received:
    245
    I moved from HTML into a game creation orientated, Basic based, language (Blitz-basic).

    I've done some C++ recently but all the module based stuff means you have to accept you're not going to be able recognise/understand some bits. (also I used some strange APIand a compiler designed with C in mind so it was doubly confusing.)
     
  15. Paolo

    Paolo What's a Dremel?

    Joined:
    20 Sep 2004
    Posts:
    198
    Likes Received:
    1
    As you might have seen, everyone has their own opinion on which language/approach to go for.

    I'd say give a couple a go (the usual "hello world!" type tutorials) and see how you get on. Keep in mind that most of us talking had tutors and lectures on this stuff daily - and even then, Software Engineering aint easy to get a good degree in!!

    Let us know how you get on, good luck :thumb:
     
    notatoad likes this.
  16. ch424

    ch424 Design Warrior

    Joined:
    26 May 2004
    Posts:
    3,112
    Likes Received:
    41
    I started with Logo, then PIC assembly code, moved into JScript/ASP (and HTML/CSS but they don't count as programming), then C, AVR assembly, and now Python (with PyGTK), PHP and MATLAB.

    I have absolutely no doubt that the best place to start is Python. You don't need to learn about the compiler, the linkers or any of that stuff; it just works. Once you've taught yourself the basics, it's very easy to make really cool things quickly. In the summer, I wrote a serial port oscilloscope in Python, in about ten minutes. There's no way you could do that with any other programming language.

    When you're confident that you understand procedural programming (which is what the python tutorial will teach you), you can start taking advantage of python's Object Oriented bits, or move into C++ or Java.

    The argument that you should learn java because it teaches you how a computer works is complete tosh. By that argument, everyone should start with assembly and move into C before going anywhere near object-based stuff.

    Python is the fast, easy, fun way into programming.
     
  17. lcdguy

    lcdguy Minimodder

    Joined:
    25 May 2004
    Posts:
    2,336
    Likes Received:
    19
    what. No ones codes in turbo pascal anymore :D
     
  18. adam197

    adam197 What's a Dremel?

    Joined:
    22 Feb 2005
    Posts:
    507
    Likes Received:
    1
    Another vote for Java and the book Big Java. Nicely paced stuff and I've found Java a decent starting ground for small forrays into other languages.
     
  19. Matticus

    Matticus ...

    Joined:
    23 Feb 2008
    Posts:
    3,347
    Likes Received:
    117
    All I can say is assembly for the winz0rs!

    No but seriously, I messed with python prior to learning C++ and java and thought it was cool. Now I have just gone back to it and written my previous assignement for C++ in a matter of minutes and with a much more efficient code. Maybe you win.:thumb:
     
  20. Stig

    Stig What's a Dremel?

    Joined:
    21 Dec 2008
    Posts:
    102
    Likes Received:
    2
    Don't learn java first if you think you'll end up using C++. One of my prof's complains all the time about the transition from Java > C++.

    I'm gonna throw this out there knowing a lot of people will disagree. I would learn Actionscript 3. Why? Well, because its an object oriented language that is VERY easy to integrate with a GUI. After you've mastered the basics of the language, you can very easily move into programming for flash. There are some benefits to this - such as being able to easily create programs you can actually show off to people. It is always kinda frustrating to finish a program that you've worked hard on and are proud of, but you can't show your non-programming friends because they wouldn't get what is going on. With Actionscript you get real programming experience, but in the end can create something that everyone will understand (be it a game or some other app) because they can see what it does.

    It may not be the best language out there, but its not too hard to learn, the principles are very similar to other languages, you get a good grasp of object orientation, and you can make something to show off to your friends/family!
     

Share This Page