Java a good place to start?

Discussion in 'Scripting & Programming' started by Nick74, Oct 3, 2010.

  1. Nick74

    Nick74 Bit Poster

    35
    1
    8
    Would appreciate some opinions please.

    I am going to have some time on my hands for a few months so should be able to dedicate a bit more time than I expected to studying. I would like to try and make some progress with programming, having no skills in this area at all at the moment.

    I have read so many threads on here and other stuff on the net and seem about as confused as when I started! Ideally I would like to start an OU course march time which will incorporate Java, but would like to use the time in the meantime wisely.

    I have a teach yourself book - I know opinions are mixed on these but in the absence of anything better..... I have also seen mention of Stanford lectures on youtube which seem worth a look.

    Anyone else have a suggestion as to a starting point into programming? I am not looking for a short cut quick fix, I am prepared to put some time into this, but could do with some guidance. I would like to set myself a structure, I learn better when I have a set aim to achieve, but to be honest I dont even know if starting with Java is the best route - others seem to think VB or C# may be a better starting point?

    Ideally I would like to start a structured course, the local college does nothing at the moment, but the OU may be a step too far at this point.

    Any help much appreciated guys!
     
    Certifications: C&G, A+
  2. Kitkatninja
    Highly Decorated Member Award 500 Likes Award

    Kitkatninja aka me, myself & I Moderator

    11,140
    555
    383
    I can only speak from previous experience (even though I work in IT Support).

    I started to learn programing using VBA (Visual Basic for Applications), then moved on to Visual Basic 2 (then 3) by doing the C&G's 7261 range of certs. Took a break and tried Pascal, but didn't get on with the language. Restarted VB, in the form of the NVQ 2 in Software Creation.

    Then started up the HNC and did C++ for a year before doing JAVA. I won't go into the other languages I did after that, but what I can say is that I found taking on JAVA alot easier with VB & C++ knowledge. And I actually finished my BSc in Computing which specialised in Software engineering :) Saying that, when learning a second or third language it'll always be easier with previous knowledge.

    Is starting with JAVA the best choice? Personally I don't know. What path I'd recommend - the path I took, mainly because... That's the route I did :)

    -ken
     
    Certifications: MSc, PGDip, PGCert, BSc, HNC, LCGI, MBCS CITP, MCP, MCSA, MCSE, MCE, A+, N+, S+, Server+
    WIP: MSc Cyber Security
  3. dmarsh
    Honorary Member 500 Likes Award

    dmarsh Petabyte Poster

    4,305
    503
    259
    Java is fine as a first language, the OU courses are also good, they generally give you everything you need to succeed and tell you what level to start at.

    C# is very similar to Java and is also a good language to learn, personally I wouldn't learn VB, VB .NET or VBA unless you have a specific reason to.
     
  4. Josiahb

    Josiahb Gigabyte Poster

    1,335
    40
    97
    I'm with dmarsh on this one, having attempted to study VB, VBA and VB.NET I'd say avoid the hell out of them! I got on with Java a hell of a lot better and the Stanford Lectures on YouTube (also available for download on iTunes) are really good, you can also get access to the course website with all the assignments etc to have a crack at (obviously you can't get them marked!).

    My focus changed work wise part way through learning the language however so I had to leave it behind in favour of other things, I'll get back to it some day!
     
    Certifications: A+, Network+, MCDST, ACA – Mac Integration 10.10
  5. michael78

    michael78 Terabyte Poster

    2,085
    29
    141
    I'm not a programmer but wouldn't it depend on what you wanted to do with the knowledge learnt?
     
    Certifications: A+ | Network+ | Security+ | MCP | MCDST | MCTS: Hyper-V | MCTS: AD | MCTS: Exchange 2007 | MCTS: Windows 7 | MCSA: 2003 | ITIL Foundation v3 | CCA: Xenapp 5.0 | MCITP: Enterprise Desktop Administrator on Windows 7 | MCITP: Enterprise Desktop Support Technician on Windows 7
    WIP: Online SAN Overview, VCP in December 2011
  6. dmarsh
    Honorary Member 500 Likes Award

    dmarsh Petabyte Poster

    4,305
    503
    259
    C# and Java are good general purpose modern high level languages, they will be adequate for most applications.

    Certain languages might be more suited to various domains, C amd C++ tend to be popular for systems level programming for example.

    However you still have to start somewhere and Java is not such a bad place, second languages are normally pretty easy to learn after your first.
     
  7. soundian

    soundian Gigabyte Poster

    1,460
    71
    107
    I'm not sure if jumping straight in to an object-oriented language is the best idea. I'm basing that on my own experience though and I had a fair bit of procedural programming under my belt before I attempted Java.
    I found the object-oriented concepts much more difficult than the syntax etc (I knew PHP and a lot of the syntax is the same). Maybe my mind has been thinking procedurally for too long though.
    Out of all the OO languages though, I'd say Java was best. It's a lot more forgiving than most.
     
    Certifications: A+, N+,MCDST,MCTS(680), MCP(270, 271, 272), ITILv3F, CCENT
    WIP: Knuckling down at my new job
  8. dmarsh
    Honorary Member 500 Likes Award

    dmarsh Petabyte Poster

    4,305
    503
    259
    Yes I started with Ada, COBOL, C and a bit of 68k assembler, so its hard for me to be sure how much of a hurdle OO concepts are for beginners, I think its mainly a problem for procedural guys though.

    I've seen database guys think objects are tables for instance. Lots of people seem to learn JavaScript or ActionScript without issue and these have OO concepts. Smalltalk was also often taught to young people.
     
  9. Nick74

    Nick74 Bit Poster

    35
    1
    8
    Thanks for the replies guys. Sorry for the delay coming back but shortly after posting sunday my missus went into labour so been a bit busy since! Mother and baby are both asleep at the same time for the first time since so here I am!

    The OU route definitely interests me. I have a degree (not IT) so not in a massive rush to commit to another but like the idea of building up credits on a flexible path. TBH though its the course content thats more of interest to me than the level of cert it may give me, but if over a period of a few years I got another degree that would be a nice aim.

    DMarsh - do you think someone with a very minimal level of programming knowledge can pick up an OU course? I intend to give them a ring and discuss options with them but id be interested to know what level you think the level one courses are pitched at, and while im sure they are not going to be high pressure like the computeachs of this world I think an independant opinion would be more reliable.

    My current plan - as it stands, would be to enrol for OU if it seems like the correct route, with the next enrolments in march. In the meantime I have 4 months to try and hit the ground running with another self study course, or indeed just reading some books and messing around with netbeans. I did have a look at the C&G website, thanks Ken, but im not sure they are doing the kind of thing you did anymore. I will have another look though, sleep deprivation does tend to hammer the reading skills!

    Its a real shame that our local college last year ran intro to programming courses, but this year they havent had the interest. Next nearest colleges are too far away to be practical so that route has been closed for me, its got to be self/remote study. If anyone has any suggestions as to reading materials they would be greatfully received.
     
    Certifications: C&G, A+
  10. Unemployed Diogenes

    Unemployed Diogenes Nibble Poster

    84
    0
    33

    I think it's better to start with an object-oriented language.. I had the concepts of programming since i was kid with Commodore-64 baic and too learn object-oriented 'thinking' was really not easy for me. I think it's easyer too start from scratch with object-oriented language than learn it after. Also i think (not sure, dont want discuss this) that C# have more future than Java. I learnt object-oriented developping with Java in evening school as hobby, but when i see the code in C#, for me it's almost the same(just my experience).

    But you say it by yourself: "Maybe my mind has been thinking procedurally for too long though."

    Excuse me for my English (speak native dutch normally).
     
    Last edited: Oct 7, 2010
    Certifications: A+, Bachelor IT
    WIP: CCNA
  11. dmarsh
    Honorary Member 500 Likes Award

    dmarsh Petabyte Poster

    4,305
    503
    259
    Nick, I'd just look on the OU web sites and ask the course advisors, generally level 1 units are suitable to everyone, they are return to study courses. However they still require serious study and some intelligence.

    Read the course feedback on the site to see what people have said about the course.

    Also the workload estimates are pretty accurate in my experience, 8 hours a week, means 8 hours a week for level one course, if you have a new baby this could be pretty hard.
     
  12. Nick74

    Nick74 Bit Poster

    35
    1
    8
    Thanks again, I will speak to OU direct.

    TBH 8 hours a week isnt a massive issue for me over the next few months. I work from home self employed and most of my work with customers is in the evenings, daytimes are paperwork and childcare for the older kid, so I am comfortable with commiting that kind of time.
     
    Certifications: C&G, A+
  13. soundian

    soundian Gigabyte Poster

    1,460
    71
    107
    Perhaps because we both have a long background in procedural programming it made it more difficult for us.
    Perhaps having knowledge of different languages helped us with the syntax so all we remember is the part we found most difficult.

    I think learning OO methodology is going to be difficult whatever your previous experience with procedural programming is. It's a very logical, but not particularly natural, way of thinking about things.
     
    Certifications: A+, N+,MCDST,MCTS(680), MCP(270, 271, 272), ITILv3F, CCENT
    WIP: Knuckling down at my new job
  14. JonnyMX

    JonnyMX Petabyte Poster

    5,257
    220
    236
    As has already been said, you need to consider what is available.
    The OU seems to have gone all Java these days, so if that's the way you want to go, your choices are limited.
    Having said that, the material from the OU is excellent and providing you start at level 1, they won't assume any prior knowledge. I'm doing M150 at the moment, and even that's got a Java module in it.

    So yes, I'd go for it.

    I know we're always saying 'self study' - but that can be a horrible thing to do with programming, especially when setting out. It's a bit like trying to learn a foreign language from a dictionary.
     
    Certifications: MCT, MCTS, i-Net+, CIW CI, Prince2, MSP, MCSD
  15. dmarsh
    Honorary Member 500 Likes Award

    dmarsh Petabyte Poster

    4,305
    503
    259
    I'd say its a pretty natural way to model stuff, think of a stack data structure in C and the functions that act on the datastructure, its much easier to enforce good programming by modeling these artificially seperate things in the procedural world as one thing in the OO world, state and behaviour of one object, in one place.
     
  16. soundian

    soundian Gigabyte Poster

    1,460
    71
    107
    I was talking about thinking about things, not modelling things. As I said, it's a very logical way to think about things, which you need when modelling, but how many people say:
    There's an alsatian, it's an instance of Dog, which extends Canine (which extends Mammal, which extends Animal). I hope it implements the wagTail() and lickHand() methods in the Pet class and the mightBite instance variable is false. I REALLY hope it does implement the Pet class because otherwise it would implement the Feral class, and then I'm really in trouble.
    Perfectly logical, but not natural (unless you're trying to model it).
     
    Certifications: A+, N+,MCDST,MCTS(680), MCP(270, 271, 272), ITILv3F, CCENT
    WIP: Knuckling down at my new job
  17. JonnyMX

    JonnyMX Petabyte Poster

    5,257
    220
    236
    Most of the developers I've worked with...

    :biggrin
     
    Certifications: MCT, MCTS, i-Net+, CIW CI, Prince2, MSP, MCSD
  18. bluechip

    bluechip New Member

    5
    0
    1
    I'm doing a level 2 OO programming with Java course with the OU just now. I've just started the course so can't comment on the content too much but they do expect you to have some basic knowledge about programming for that course (derived usually from the level 1 course).

    The level 1 course M150 uses Javascript (note this is not the same as Java) to teach you about basic programming ideas like strings, arrays, if/for/while loops. If you already know about those things then you might be okay to start the level 2 course.

    Another free 'beginners CS' resource I like is Harvard's CS50 course. It doesn't use Java (it uses C, PHP and JavaScript), but the beginning lectures teach you the basic stuff like loops, arrays, strings etc. The tutor is quite entertaining.

    http://www.cs50.net/lectures/
     
  19. soundian

    soundian Gigabyte Poster

    1,460
    71
    107
    Seems like the OU agree with me, jumping straight in to Java with no prior experience is probably a step too far.
     
    Certifications: A+, N+,MCDST,MCTS(680), MCP(270, 271, 272), ITILv3F, CCENT
    WIP: Knuckling down at my new job
  20. dales

    dales Terabyte Poster

    2,005
    51
    142
    Think I'll just throw this one into the pot, you might want to have a look at THIS looks like it could be quite a fun way of honing your java ninja-ism's.
     
    Certifications: vExpert 2014+2015+2016,VCP-DT,CCE-V, CCE-AD, CCP-AD, CCEE, CCAA XenApp, CCA Netscaler, XenApp 6.5, XenDesktop 5 & Xenserver 6,VCP3+5,VTSP,MCSA MCDST MCP A+ ITIL F
    WIP: Nothing

Share This Page

Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.