Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Programming newbie

Options
  • 18-07-2003 5:03am
    #1
    Closed Accounts Posts: 149 ✭✭


    Hey,
    If i manage (somehow) to get into the course i'm after, there will be some programming involved.
    I was thinking of geting a bit of a head start in understanding how everything works, i've only ever messed around with basic stuff for short periods of time.

    ok, i was told pascal is the best language to start with.
    So if you could post what you think is the best one, and a progression which one after that etc, any books/urls that would be of use to me too :)

    Was told to stay away from ms vb because it gives you bad habbits.

    I'm probably just gona mess around with it a bit anyway write some programmes to output lotto numbers exciting stuff like that :)

    Anyway, any help is welcome.


Comments

  • Moderators, Home & Garden Moderators, Regional Midwest Moderators, Regional West Moderators Posts: 16,723 Mod ✭✭✭✭yop


    Pascal is what a lot of colleges start you on alright. Who ever told you to stay away from VB because of bad habits must be a big mad! :p
    VB is your next step up from PASCAL and if you want to go irishjobs.ie and have a look at jobs in VB you will see there are plenty.
    If you want to take the next step up from VB then start learning .NET or JAVA, if I had the choice I would have learnt JAVA a long time back, there seems to be good money in JAVA.


  • Registered Users Posts: 4,276 ✭✭✭damnyanks


    Never seen pascal so cant really comment on it. But :) if you really wanna get a foundation in the whole programming jive I'd reccomend looking into Coldfusion :)

    Coldfusion is a web scripting language / Application server. Its tag based like HTML and very simple but it does have the traditional aspects of most languags (Loops, if statments etc.) You wont get scared off by long and akwar syntax (at least not in the start:P)


    The whole process would give you an understanding of programming and when you look at some source code of something you will have some sort of idea what is going on :)


  • Registered Users Posts: 413 ✭✭padraigmyers


    I'd reccomend learning C, it may be a steep learning curve at the start but it contains
    all the important stuff that you need to learn. Pascal is quite similar to C, but is less
    complicated (and also less powerful and is only really used for education, its not used
    in the industery at all really), thats why most collages start off on Pascal for 1
    semester and then move onto C after that. Also, if you get you head around C, you
    will be able to pick up most other languages like C++, Java etc pretty quickly.

    There is loads of stuff out there on the net about C so you should have no problem
    finding tutorials etc in it, also you can easily download free compilers so that you can
    work on the programs at home.

    I wouldn't reccommend starting on Java/C++ or any object orientated language
    because then you will be trying to learn the basics of programming and trying to get
    your head around Object Orientated thinking at the same time. Not reccomended!

    Learn C, just start of with the "Hello Word" sort of stuff and gradually work your way
    up to loops and then functions, don't be put off by C in the first week or two, its
    really a quite easy language one you get used of it.


  • Registered Users Posts: 8,048 ✭✭✭BKtje


    I'd also have to reccoment going with C.
    Did it for my first year in college this year, while it can get very confusing at times (especially pointers, argh ;) )it does give you a basic understanding of everything. After doing C ive looked at a lot of languages (atm ASp with VB) and i see alot of things which i recognise etc.

    So basically once u got basics of C you will find a lot of other languages a lot easier imo.


  • Registered Users Posts: 336 ✭✭lampsie


    I started off with C in my first year and got on grand... however,

    One thing to watch out for is transferring your brain to Object Oriented languages like Java, c++ after doing C...it can do your head in a bit, so bear that in mind! Some people make the transition grand, I on the other hand got a poor OO lecturer after having a great C lecturer, and struggled to grasp the concepts.

    Maybe consider investigating a little into OO languages like Java, just to even understand what differentiates OO from languages like C (objects, reuseable code, etc).

    Have fun!

    Lampsie


  • Advertisement
  • Closed Accounts Posts: 9,314 ✭✭✭Talliesin


    I don't think much of Pascal at all I have to say.

    VB can teach bad habits, but only lazy people learn bad habits.

    C++ is easier than C for beginning IMHO. The abstraction means that C++ can do a lot of things at a higher level than C. Use a very up-to-date compiler with full STL support and it will be particularly easy to use. Certainly if you intend to eventually know both C and C++ then I'd say learn C++ before C.


  • Registered Users Posts: 413 ✭✭padraigmyers


    I'd have to disagree with you there, I think C++ involves a lot of concepts to be
    understood initally before you can actually get down to writing a program. The first
    few programs you write in C++ will probably look more like C anyway.

    The abstraction in C++ that you talk about hinders understanding and learnng if you
    ask me. In C you can start from the ground up and see how everything works, more
    complicated stuff like pointers or even functions can be left until a few months down
    the line, but all the time you are forced to understand at a low level how things work.

    C++ is an extremely complicated language, and is probably overly-complex, in fact
    Java is really C++ without all the complications. I'd recommend Java before I would
    reccomend C++.

    Another problem with getting an up-to-date C++ complier is that the compiler itself
    can be an uphill battle to get used to, setting up a project in Visual C++ is no newbie
    task.

    As for VB, its fine if thats all you want to learn, but VB has a very high level of
    abstaction, so when you write a program in it you will only be seeing about 10% of
    what is really going on, while this sounds like a good thing for a begineer, its not
    realy because you will never get your head around the real guts of programming
    and when you move on to Java, C/C++ etc you will kinda be starting from scratch
    again.

    Anyway, thats just my €0.02.


  • Closed Accounts Posts: 94 ✭✭boo-boo


    If you're doing console / simple file operations I'd advise C, as you'll learn a lot more working with it than any other lang. IMHO.
    If you want to use GUI's , then VB (as other posters have said
    it hides a lot) , or next Java- . BUT OO programming is a LOT different than procedural. If you want a general , all round useful thing to know which you're almost guarenteed to use regardless of the application language then learn SQL - You'd pick up the basic in a few days & its used everywhere.


  • Closed Accounts Posts: 304 ✭✭Zaltais


    I'm gonna really rock the boat here and suggest you learn PHP or Perl.

    Perl, cos it's as powerful as C++
    (/me ducks to avoid objects being thrown)

    PHP cos it's so well documented and a little less 'beardy'

    And both cos there's no compile time overhead, so you can edit -> test -> edit -> test verrrry quickly.


  • Registered Users Posts: 413 ✭✭padraigmyers


    Perl wouldn't be a bad one to learn, but I just think that you need to start with a
    language that is low level and is at the foundation of other languages and for me this
    is C, Fortran, Pascal, BASIC etc, and the best choice of those is C becuse is is still
    in use in many, many companies today, knowing C will always benifit you.

    As for the compile-time, I dont think that would be a factor woth someone starting
    out, the programs are going to be max 100 lines, should comile in lesss then a sec.


  • Advertisement
  • Registered Users Posts: 16,413 ✭✭✭✭Trojan


    Hmm, well I gotta say I don't agree with a lot of the answers here including my co-mod, so I guess it's a matter of what your preference and experience is.

    I learned Pascale first before moving to C and I believe it's a great introduction to structured programming before getting into all the BS that C has associated with it - forget the power of C, it's too bloody dangerous to use.

    Java is probably a good way to go if you want to start into OOP straight off without going the more normal route of learning structured first. At least Java will force you to use correct OO constructs and won't let you away with the crap that C++ does (you ending up with a half-OO, half-structured, half-POS ... you get the picture).

    My 2x10[-2] euros.

    Al.


  • Registered Users Posts: 2,149 ✭✭✭dazberry


    I'd recommand Borland Delphi (object Pascal), although you could look at one of the older Borland Pascal compilers like Turbo Pascal (DOS).

    [Pros]
    Both have really good IDEs for stepping thru' code (following program flow), setting breakpoints, viewing variables and stack traces etc.

    Both are blindingly fast compilers. When you're messing around, compiling, fixing, compiling again, this is really a great benefit. Allows you to experiment more.

    The Pascal language is type checked and is a bit verbose. When you're starting off I think this is better because it has a better chance of not letting you get away with things you shouldn't, and not getting you confused over some obscure language features.

    Turbo Pascal (5 or better) and Delphi (Delphi model is better) are fully object orientated. But you can move onto this when you're ready, you just write procedural stuff until you're ready or until you need to go further.

    If you go the Delphi route, its RAD like VB, so you don't have to get to into Windows programming because its abstracted. But if you go that far, Delphi is far far superior for Win API (and everything else - Threads/DCOM/Services/Sockets) than VB.

    [Cons]
    Pascal is not sexy :D So don't expect this to stand to you in the job front. Even if it does the (Delphi) market is minute compared to VB (regardless how much better the product actually is) and most of those companies here actually write crap products badly (IMO).

    As above, you will have to at some point learn more languages. Is it worth? i.e. if you do say C, and Java in college, is there any point coming from a Pascal background (apart from the Pros above), especially when these will be thought to you.

    Delphi can allow you to do things easily, but like any RAD environment, it introduces as many bad habits to be learned as it does good.

    D.


  • Closed Accounts Posts: 25,848 ✭✭✭✭Zombrex


    one thing to keep in mind is that is it better to learn how to program than it is to learn how to program in language X.

    What I mean is you should read up on general programming theory, what structured programming is (before you move on to object oriented programming) and how the CPU actually processes data and logic.

    This will give you a good basic for learning any programming language quickly, cause they all do basically the same thing just in different ways.


  • Closed Accounts Posts: 9,314 ✭✭✭Talliesin


    Originally posted by padraigmyers
    I'd have to disagree with you there, I think C++ involves a lot of concepts to be
    understood initally before you can actually get down to writing a program. The first
    few programs you write in C++ will probably look more like C anyway.

    Not true. The first few programs in C++ being taught by someone that assumes knowledge of C will look more like C, indeed they will possibly be the common subset of C and C++.

    However it's totally possible to give a newbie some high-level classes where they don't have to worry about, or know, the inner workings and they can work quite easily.

    I'd say that C++ for complete beginners is easier than C for complete beginners. Intermediate C is easier than intermediate C++. Advanced C and Advanced C++ are both "advanced" and at that stage both languages are being used "fluently" to the best of their abilities so its even more meaningless to compare than usual, at that stage its really how they enable other things (dealing with innately complex problems in particular) where the difference matters.


  • Closed Accounts Posts: 9,314 ✭✭✭Talliesin


    If you want to start with some programming right now play with javascript. All you need is a text-editor and a browser. It is not a good language by plenty of sensible criteria, but it is something you can get into quickly and it does have real-world applications as well.


Advertisement