Your way of learning a programming language?

Discussion in 'OT Technology' started by RaginBajin, Feb 24, 2006.

  1. RaginBajin

    RaginBajin Have you punched a donkey today?

    Joined:
    Dec 24, 2001
    Messages:
    8,740
    Likes Received:
    0
    Location:
    NoVA
    I've been thinking about this some today. I've talked to a couple of people I know that have learned to program and each of them have a different way they learned. One of my friends can just read a book and go to town. He has no real training or anything like that. Apparently, he's just gifted when it comes to that. My other friend picked it up in college. He had to do projects that forced him to work more and more with it. How did you guys learn?

    For me, I'm struggling with trying to pick up java. I don't know where to really start and what to do. I have a couple of books, but they are usually too simple project wise, so I kinda just tinker around and then eventually lose interest because I have nothing to do. I really want to pick it up again. Ideas?
     
  2. jwynn

    jwynn Yeah I Know I Dont Have Enough Posts

    Joined:
    Jan 28, 2006
    Messages:
    288
    Likes Received:
    0
    Location:
    FL
    Do you know any languages now?

    If not you might be best to pick up a book on a common scripting language like Perl or Python, they dont require compiling, have a simpler syntax, and smaller learning curve.

    If you want to jump into programming I would start with C almost every other programming language is based off it in someway.

    OReilly has good "Learning (whatever)" Books and "Programming (whatever)" Books." For both scripting and programming languages. I find this publisher to consistantly be the best for computer books.

    If you are programming for fun I wouldn't go to far into C because it can get pretty chaotic, but a good intro book would do you well. Then you can move on to "easier" C-like languages (C# is pretty damn easy) that dont have all the headaches, but require a basic knowledge to help pick up the grasp.

    As for how to learn, only you know how you learn. Some people are good at memorizing so they can read a book and then do it with little actual practice along the way. Others can learn by example and dont require any teaching of the step by step process.

    Right now go read this link:

    http://www.ibiblio.org/obp/thinkCSpy/index.htm

    The preface, foreword and chapter 1 will do you well on your journey and help you see the different ideas on how to start your first computer language.
     
  3. antiyou

    antiyou OT Supporter

    Joined:
    Jul 13, 2005
    Messages:
    25,295
    Likes Received:
    0
    Location:
    in ur base
    I started with Basic in HighSchool. I learned by coding in college but my program was pretty intensive and focused on proper programming methods. After that I was able to pick up a book on a language and code in it easily with the on;y major difficulty being memorizing syntax. I started with c/c++ at the same time along with html and unix shell scripting, then java, pascal, c# and VB
     
    Last edited: Feb 24, 2006
  4. Peyomp

    Peyomp New Member

    Joined:
    Jan 11, 2002
    Messages:
    14,017
    Likes Received:
    0
    Most people in here seem to approach programming languages like new check boxes. It doesn't work like that. It will take you 10 years to get good at a langauge. Period.

    If you're having trouble learning Java, then do this: spend your time learning about Object Oriented Analysis and Design, and Design Patterns. Amazon search for books with those two titles. Those two books will teach you the concepts behind OO languages, so that you can approach them rationally, and effectively.

    The other thing is to learn by doing. Learn as you go. If you don't have any use for programming langauges... if you can't think of a project that motivates you... then you don't really want to learn to program.
     
  5. Yep

    Yep Knick knack paddy whack, give the old dog a bone

    Joined:
    Jan 22, 2001
    Messages:
    4,603
    Likes Received:
    0
    Location:
    South Jersey
    I started in college with C++ and then moved to VB6. Now I'm moving to VB.NET. I love VB.NET because if it's built in support for multithreading and creating windows services. Not to mention the IDE is incredible coming from VB6. Collapsable sub-routines, syntax highlighting, text-suggest. I fought moving from VB6 to VB.NET, but my progects at this point pretty much force me to move away from it.

    I still prefer VB6 for a lightweight app, but for the app I'm working on at work, it's VB.NET all the way.

    With just about all of the popular languages today, it would do you good to learn the concept of classes and inheritance. Once you understand the concept of how a Windows program functions and what it requires and what can go wrong, it's just a matter of learning the syntax.

    BTW - Anyone looking to get in to .NET programming MS is giving away Studio Express versions of VB, C++, ASP, Java, etc. Until 11/06. Completly free license to build and use apps, even after the end date. The Visual Studio 2005 Express pack is about a 450MB download. And it comes with a lightweight version of MS SQL (I haven't used it since I use MySQL). You will need the .NET framework 2.0 (can be installed alongside 1.1) to develop and distribute applications.
     
  6. samm

    samm Next in Line

    Joined:
    Dec 22, 2000
    Messages:
    2,630
    Likes Received:
    0
    Location:
    San Jose, CA
    I agree with Peyomp. Read the gang of four design patterns book, it will help you understand object oriented design techniques and how they can be applied to engineering problems.

    I learned to program by reading textbooks, participating in newsgroup discussions, and from classes in college. To keep yourself motivated I suggest participating in an open source project.
     
  7. Peyomp

    Peyomp New Member

    Joined:
    Jan 11, 2002
    Messages:
    14,017
    Likes Received:
    0
    Before Design Patterns, best to read Object Oriented Analysis and Design.
     
  8. kingtoad

    kingtoad OT Supporter

    Joined:
    Sep 2, 2003
    Messages:
    55,915
    Likes Received:
    8
    Location:
    Los Angeles
    Painful book to go through, but they'll help.
     
  9. rpark

    rpark New Member

    Joined:
    Apr 9, 2005
    Messages:
    1,082
    Likes Received:
    0
    Location:
    Isla Vista, California
    I started at a really young age and I had no clue what I was doing. But constantly looking at it I began to understand how the language works. It'll be different for you now that many old languages are dead (some may not even considered to be one) but I began in this fashion.

    First: qBasic
    Second: Turbo Pascal
    Third: C/C++
    Forth: Java
    and so on....

    after you have a couple down, it becomes extremely easy to pick up the basics of another... after that its just a matter of figureing out the complicated things that are specific to a lanugage. Programming may be discouraging at first, but if you keep with it you may actually find that you enjoy it.

    Because of the nature of the languages I learned, I agree with the posters above. You may want to start with simple scripting languages. JavaScript, Perl, Python to name a few.

    Good Luck!
     
    Last edited: Feb 24, 2006
  10. MrMan

    MrMan New Member

    Joined:
    Jul 13, 2004
    Messages:
    308
    Likes Received:
    0
    Hey Yep, usually VB6 programmers move onto VB.NET and C++ to C#. You happen to have both backgrounds and made a decision to go for VB.NET. Any reason you chose VB.NET over C#?

    -----

    And to answer the thread, I started BASIC, Pascal, C++ in high school. It makes you believe you actually understand how to program. And then college tells you to understand the importance of object oriented programming.

    Seriously, from reading many programming books, they just explain what classes are, but do not teach you that concept of object orientation. Usually, once you have the programming concepts down, it becomes easier to learn a language, because most of the time, it's just learning the syntax and some additional features the language provides. Like a car, once you get a concept of driving, you should be able to handle a different car. It just takes a little time to get use to handling the car, and its new features.
     
  11. D1G1T4L

    D1G1T4L Active Member

    Joined:
    May 4, 2001
    Messages:
    16,489
    Likes Received:
    0
    Location:
    Bay Area
    the way i learned C#, i just read the book but i already knew java, and they are both kinda the same
     
  12. zanyspy_dude

    zanyspy_dude King of teh n00bz

    Joined:
    Aug 29, 2002
    Messages:
    4,473
    Likes Received:
    0
    Location:
    Indianapolis, IN
    thanks for the head's up. Trying j# and C# just to see what they're like :big grin:
     
  13. jwynn

    jwynn Yeah I Know I Dont Have Enough Posts

    Joined:
    Jan 28, 2006
    Messages:
    288
    Likes Received:
    0
    Location:
    FL
    C# is great, but you need to know object oriented design first.

    Check out "Learning C#"

    Lots of reading a little code, great for learning the concepts then get "Programming C#" to get to work coding now that you know how it works and what it all means. These 2 books got me through my Software Systems Development Course with ease.
     
  14. Peyomp

    Peyomp New Member

    Joined:
    Jan 11, 2002
    Messages:
    14,017
    Likes Received:
    0
    Yeah, just keep checking langauges off the list, that way you can suck at as many as possible.

    :uh:
     
  15. Yep

    Yep Knick knack paddy whack, give the old dog a bone

    Joined:
    Jan 22, 2001
    Messages:
    4,603
    Likes Received:
    0
    Location:
    South Jersey
    There really wasn't a reason, other than the fact that my C++ knowledge is rusty... even though it doesn't look anything like C++ to me. I should probably learn a little C# since that's what one of our applications is written in by an outside vendor.
     
  16. MrMan

    MrMan New Member

    Joined:
    Jul 13, 2004
    Messages:
    308
    Likes Received:
    0
    You're right, C# looks more like Java, and Java takes some concepts from C++. That's pretty much the only similarity.
     
  17. Peyomp

    Peyomp New Member

    Joined:
    Jan 11, 2002
    Messages:
    14,017
    Likes Received:
    0
    Java descends more from smalltalk, although C, C++, Java and C# all share a C like syntax.
     

Share This Page