GeeCON Prague 2014*
The moose likes Jobs Discussion and the fly likes Which of these languages will be the most difficult and take the most time to learn? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


JavaRanch » Java Forums » Careers » Jobs Discussion
Bookmark "Which of these languages will be the most difficult and take the most time to learn?" Watch "Which of these languages will be the most difficult and take the most time to learn?" New topic
Author

Which of these languages will be the most difficult and take the most time to learn?

Ryan Hickman
Ranch Hand

Joined: Oct 13, 2012
Posts: 36
Just wondering which out of these programming languages will take the most time and difficulty to learn. Also any pointers as to a chronological order where to start would be beneficial. Right now I am starting with Java SE then moving onto J2EE and am assuming these two languages would be the most time consuming and difficult out of the list. Well without further excitement:

JSE
J2EE
Html
C#
ASP.Net
SQL
Web sphere
Spring
Hibernate
CSS
Junit
XML
Struts
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 61301
    
  66

Less than half of what you listed there are languages. Did you mean technologies?


[Asking smart questions] [Bear's FrontMan] [About Bear] [Books by Bear]
Ryan Hickman
Ranch Hand

Joined: Oct 13, 2012
Posts: 36
I'm sorry, still new to the whole programming scene. I guess I mean both languages and technologies.

Which one are languages and which one are technologies?

I just switched my major to Computer Science with an emphasis on programming and am trying to learn all of the above within one year to land an internship. Which is why I am curious if it is possible.
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 61301
    
  66

JSE and JEE are both Java, not separate languages.

HTML, XML, and CSS, are markup languages, not programming languages.

ASP.Net is a Microsoft framework.

C# is a programming language,

SQL is a query language for databases,

Websphere is an application servier.

Struts, Spring and Hibernate are Java technologies.

Junit is a Java testing framework.

Rameshwar Soni
Ranch Hand

Joined: Feb 03, 2011
Posts: 247
Firstly your list doesn't consist of all programming languages, there are some mark-up languages, some frameworks etc.

Secondly i can TRY to group down your list to the best of my knowledge. This is not the chronological order of learning.

Basics
  • JSE (No doubt about this)
  • C# (Since very similar to JSE)
  • SQL


  • Web development Basics
  • HTML (Mostly for User Interface)
  • CSS (Mostly for User Interface)
  • JavaScript (Not in list but a MUST as far as i heard)


  • Starting Actual Web deveopment (Server-side)
  • JEE [ No longer J2EE] (This is really vast. Can start with servlets and JSP)
  • Asp.Net


  • Starting With Frameworks
  • Struts
  • Hibernate
  • Spring


  • I don't know where to place JUnit, Websphere, XML

    Ryan Hickman wrote: Just wondering which out of these programming languages will take the most time and difficulty to learn


    It really depends on you.

    Also any pointers as to a chronological order where to start would be beneficial. Right now I am starting with Java SE then moving onto J2EE


    As far as Java is concerned start with

  • 1) JSE i.e. basics
  • 2)SQL will help you in JDBC
  • 3) Web develoment basics group
  • 4) Servlets and JSP---- The core of JEE



  • One more thing the list you made is good but to complete that list it will take time, a lot of effort. Its not a piece of cake to even complete Java throughly.

    In case you complete the list there are many good things still left like Python, C++, Scala, Android etc so start with them too

    Also to be a good programmer it needs a lot of patience. Read Teach yourself programming in Ten Years

    And Welcome to Ranch
    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    Which one would you guys consider the hardest one to learn and then maybe a few after that in decreasing toughness?

    Also is it possible to learn what I listed within the year? Just basic knowledge, not mastering them or anything; that would be what the internship would be for.

    Rameshwar Soni
    Ranch Hand

    Joined: Feb 03, 2011
    Posts: 247
    Ryan Hickman wrote: am trying to learn all of the above within one year to land an internship. Which is why I am curious if it is possible.


    No its IMPOSSIBLE and will never be possible for a person to learn and understand all of these things ((and i mean learning and understanding in a good manner)) in ONE YEAR.
    Bear Bibeault
    Author and ninkuma
    Marshal

    Joined: Jan 10, 2002
    Posts: 61301
        
      66

    That depends on what you mean by "learn". There is no one single technology on that list that I imagine can be mastered within a year.
    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    How long do you guys think it would take to get adequate enough to land a job concerning those languages? Or even an internship?

    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    This is the internship I am looking at:

    Java/J2EE (Object Oriented)
    .NET (ASP, C#)
    COBOL
    PL/I
    HTML, JSP, JSF
    IMS/DBDC
    JCL
    Websphere
    SQL
    Rameshwar Soni
    Ranch Hand

    Joined: Feb 03, 2011
    Posts: 247
    Ryan Hickman wrote:How long do you guys think it would take to get adequate enough to land a job concerning those languages? Or even an internship?



    The best person to answer that question is you yourself. It really depends how much effort you put, what are the job opportunities in your country or region etc. But keep on trying.
    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    Well I have 18 months and practice for about 3-4 hours a day. I think I should be able to make that deadline pretty easily if I keep it up but some of the responses I hear are making me think otherwise.
    Paul Witten
    Ranch Hand

    Joined: Oct 10, 2012
    Posts: 86
    Ryan Hickman wrote:Which is why I am curious if it is possible.

    Not possible and not reasonable. If you were to go from newbie to SCJP in under a year I'd be shocked. You'd have to devote your entire life to it.

    So one down and 11 to go.

    Normally newbies have no basis or reason to be thinking about J2EE or server technologies since they haven't even mastered the client yet. Yipes, slow down and live.

    Well, you could live on speedballs, not bathe, eat or talk for the whole year, and maybe perform the miracle. Of course then you've aged to about 90 and are ready for retirement.
    Paul Clapham
    Bartender

    Joined: Oct 14, 2005
    Posts: 18570
        
        8

    Bear Bibeault wrote:That depends on what you mean by "learn". There is no one single technology on that list that I imagine can be mastered within a year.


    I'd say that XML could be mastered within a week, if you understood the underlying concepts and if "XML" just meant the markup language and nothing else.
    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    Ok. Well what is a reasonable time frame to get myself an internship, foot in the door, or a job even? I am switching my major even though I only have a semester or two to go to finish so this is a big decision for me. If it is going to take me 8 yrs to get a job because it is going to take me 8 years to learn the languages and technologies I need to know I my-as-well just stick with my current major because I sure am not going to be living at home the rest of my life. I know alot of students start programming in high school and I wish I did but I did not.
    Red Smith
    Ranch Hand

    Joined: Aug 05, 2007
    Posts: 136
        
        1
    Ryan Hickman wrote:This is the internship I am looking at:

    Java/J2EE (Object Oriented)
    .NET (ASP, C#)
    COBOL
    PL/I
    HTML, JSP, JSF
    IMS/DBDC
    JCL
    Websphere
    SQL


    It doesn't seem reasonable to expect a senior professional candidate to know COBOL, PL/I (both languages that probably see very little use outside of shops with IBM Mainframes and a codebase that goes back decades) C#/ASP and JSP/Java. IMS and JCL are not used anywhere but in companies that are running old IBM mainframe programs. And it seems rediculous to expect an intern to know all that. That looks like the type of ad that a company runs when they want to be able to turn people down without them having a leg to stand on with regard to protesting. In the past that is the job requirements they would give when they were going through the motions of looking for an American candidate while preparing to hire an H1-B visa person. But I don't know that they even have to pretend to be looking for American candidates anymore as some court cases have been lost by American workers in that regard and the true facts of the law (companies can do whatever they want) came out.

    Isn't it assumed that in an intern position some learning will be going on?
    Kemal Sokolovic
    Bartender

    Joined: Jun 19, 2010
    Posts: 825
        
        5

    I just switched my major to Computer Science with an emphasis on programming and am trying to learn all of the above within one year to land an internship.

    Very ambitious but not possible. Read this text to get an idea how things really work. I was at CS for 5 years (MSc), so I think I can tell you that from the first hand. You need to work hard and a lot, and of course not to stop learning even after you graduate, if you want to master some of those technologies. One year for all these... You'll just get an idea how some of them work.


    The quieter you are, the more you are able to hear.
    chris webster
    Bartender

    Joined: Mar 01, 2009
    Posts: 1726
        
      14

    Ryan Hickman wrote:This is the internship I am looking at:

    Java/J2EE (Object Oriented)
    .NET (ASP, C#)
    COBOL
    PL/I
    HTML, JSP, JSF
    IMS/DBDC
    JCL
    Websphere
    SQL

    As the others have pointed out, it takes a serious investment of time and effort to learn a language/technology thoroughly, and your original shopping list was more like a decade's work than a year and a half. The list for this internship looks like a bit strange to me, more like a wish-list of expertise they hope to get for free. But it's also an odd mixture - Java, COBOL, .NET etc - so maybe it's a list of the technologies they use in different places and they just want somebody who knows some of them (not all of them).

    Either way, if I were you I'd focus on building a coherent set of core skills - e.g. based on Rameshwar's suggested list above - that are widely used, and look for opportunities to pick up niche skills and newer technologies along the way. Also, keep your eyes open for opportunities to acquire useful non-technical skills/experience - things like business analysis - or possibly ways to make use of your bio-science background e.g. bioinformatics seems to be a significant growth area demanding specialist skills that are perhaps less likely to get outsourced to the big "commodity" suppliers offshore.

    FWIW, I think you can get from zero to passing the SCJP exam in a couple of months, but that would just be a case of cramming for the exam and then probably forgetting most of it afterwards. If you're looking at certifications e.g. as a way to give you a focus for your learning (outside college), then maybe the web component developer certificate, which covers things like JSP and servlets, would be a good next step. HTML/CSS are fairly easy (and fun) to pick up, while JavaScript is definitely a useful thing to know. Also, learning the webby stuff may give you opportunities to get some real-world work on websites etc, which may get you used to the gap between studying this stuff and the reality of trying to figure out what your customer really wants (rather than what they ask for)!

    Presumably you will also be learning stuff in college (one would hope so, after all!), so your plans/interests may change as you progress anyway. If you were looking for a genuine summer internship aimed at your level of experience/expertise, I would have thought you could learn some of these core skills well enough in a year or so to provide a very basic foundation for more serious work. But don't kid yourself that you'll be any kind of expert in that time.

    And definitely learn about databases - I hardly ever meet a Java developer who really understands how to work with databases!


    No more Blub for me, thank you, Vicar.
    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    Thank you for all of your replies, yes I found it strange that they listed COBOL and programming language one as well. It's a summer internship through State Farm (which explains old IBM systems). With all that said I will not be learning COBOL or programming language one or any of the older languages either because it will be a waste of time since I will probably never use them outside of the internship. If anything I will learn about them while doing the internship. Also, it is a paid internship, 18/hr so I guess they have the right to require some skills.

    Found out I will actually have two years before graduation and loan repayment, so I think that is alot better than the 1 year time frame I listed before. I really hope to learn especially the following in these two years:

    JSE
    J2EE
    Html
    C#
    ASP.Net
    SQL
    CSS
    XML

    Narrowed it down a bit. I believe if I learned these even at a basic level I would be applicable for a Jr. software developer position and believe two years is a good amount of time to have a basic understanding of the above as well. If any comments, or suggestions please feel free to share them as usual (negative as well! I am open to all recommendations) I really appreciate the support and responses from this community so far. Thank you for your time.

    Ryan Hickman
    Ranch Hand

    Joined: Oct 13, 2012
    Posts: 36
    And I actually have about 2.5 years not 2 years. As much as a rush I am in to start working I remind myself I am only 21 and have the rest of my life to work.... gotta enjoy life before rushing to work the rest of it right? ;)
    Paul Witten
    Ranch Hand

    Joined: Oct 10, 2012
    Posts: 86
    Ryan Hickman wrote:Ok. Well what is a reasonable time frame to get myself an internship, foot in the door, or a job even?

    Sure, a year is fine depending on the particular position. Most interships all are low requirement positions. You just need to focus on a reasonable task list.

    Just my opinion, I think that a reasonable list would start with Java and XML until gaining some sort of mastery ending with SCJP certification. I'd move to JDBC/databases (JDBC is how Java talks to databases) after that. After you can code database apps you have a much better understanding of the world.

    With that in mind, if your year isn't up I'd gravitate toward the server side with servlets, JSPs, and find out what a container is and how that whole world of WAR files and deployments works. The environment is very different there. It's not just about "the language". In fact the language is the least of your problems when dipping into the server world.

    And all of that is adjustable given your appetite for pain and hard work. You might arrive ahead of schedule and decide to add one more technology to the list, but I think you will figure out when you see what you're into that it's not so much a pennies-in-the-pot thing as learning something so that you own it. People who own one technology can be very convincing in an interview to give them a shot at something new. People who only dabbled are not so convincing. You cannot speak with authority of things which you have just dabbled.

    So this is why I suggest trying to own something first, and then move on from there. That would certainly qualify your for any reasonable internship position.
    Jimmy Clark
    Ranch Hand

    Joined: Apr 16, 2008
    Posts: 2187
    I'd say that XML could be mastered within a week, if you understood the underlying concepts and if "XML" just meant the markup language and nothing else.


    The eXtensible Markup Language is a meta-"format" for creating markup languages. XML is not a markup language itself and was not properly named. That said, the design skills needed to effectively create XML-based markup languages which are efficient and supportive of related processing technologies cannot be "mastered" in one week, in my opinion.

    Aside, knowledge of COBOL, the ability to write, read, modify COBOL programs is an EXTREMELY valuable skill...and is very rare. The number of existing COBOL systems throughout the world make this a very good bet.
    Paul Clapham
    Bartender

    Joined: Oct 14, 2005
    Posts: 18570
        
        8

    Jimmy Clark wrote:
    I'd say that XML could be mastered within a week, if you understood the underlying concepts and if "XML" just meant the markup language and nothing else.


    The eXtensible Markup Language is a meta-"format" for creating markup languages. XML is not a markup language itself and was not properly named. That said, the design skills needed to effectively create XML-based markup languages which are efficient and supportive of related processing technologies cannot be "mastered" in one week, in my opinion.


    Sure. But beginners aren't going to be asked to design XML-based markup languages. They are going to be asked to write code to parse existing XML documents, or perhaps to update configuration files which were written in XML. (Or in an XML-based markup language, if you want to be particular.) The skills required to do this aren't too extensive.
    Bear Bibeault
    Author and ninkuma
    Marshal

    Joined: Jan 10, 2002
    Posts: 61301
        
      66

    While that may be true, I'd still think that it'd take more than a week to learn how to parse XML in Java for someone who doesn't yet know the difference between a programming language and an application server.
    Paul Witten
    Ranch Hand

    Joined: Oct 10, 2012
    Posts: 86
    Jimmy Clark wrote:Aside, knowledge of COBOL, the ability to write, read, modify COBOL programs is an EXTREMELY valuable skill...and is very rare.

    It's an interesting option. I consider it to be a sure job and good pay but very limiting, forcing one to write in a cumbersome syntax, likely to work on a mainframe, likely to learn many bad procedural programming habits, likely to inherit messes-from-hell, etc., and living outside of the mainstream of technology advancement.

    Maybe it's worth it, but it sure is a major decision that affects a lot of things.

    This is why I can't even believe a list that includes COBOL to learn to impress some OOP interviewer. I mean, COBOL is for COBOL interviewers only.

    But it could be major dinero and excellent job security. Today maybe that counts more than it did a few years ago.
    Paul Clapham
    Bartender

    Joined: Oct 14, 2005
    Posts: 18570
        
        8

    Bear Bibeault wrote:While that may be true, I'd still think that it'd take more than a week to learn how to parse XML in Java for someone who doesn't yet know the difference between a programming language and an application server.


    Well, yeah, so would I. Which is why I didn't say that in the first place.
    Jimmy Clark
    Ranch Hand

    Joined: Apr 16, 2008
    Posts: 2187
    XML-based languages can be significantly complex, DocBook or Financial products Markup Language (FpML) for example. Understanding what XML is in terms of a specific vocabulary and having the knowledge, skills and abilities to develop XML processing code are not the same thing. Neither one of them can be "mastered" in one week, in my opinion.

    Aside, contractors that support existing COBOL-based business applications "rake in the dough."
    Paul Clapham
    Bartender

    Joined: Oct 14, 2005
    Posts: 18570
        
        8

    Jimmy Clark wrote:XML-based languages can be significantly complex, DocBook or Financial products Markup Language (FpML) for example. Understanding what XML is in terms of a specific vocabulary and having the knowledge, skills and abilities to develop XML processing code are not the same thing. Neither one of them can be "mastered" in one week, in my opinion.


    Of course they can't. Anybody else want to post things which I didn't say and claim they would take more than a week to master? Consider them agreed to by me.
    Jeanne Boyarsky
    author & internet detective
    Marshal

    Joined: May 26, 2003
    Posts: 30580
        
    154

    As another spin on this: is the company really asking for both Java and C#. Most people don't work on both at the same time. And expecting it from an entry level candidate is excessive in my mind. Also, I don't expect interns to know all those things. I also don't expect an intern to have mastered a list of things. They should know core Java or core C# or whatever we will be using.


    [Blog] [JavaRanch FAQ] [How To Ask Questions The Smart Way] [Book Promos]
    Blogging on Certs: SCEA Part 1, Part 2 & 3, Core Spring 3, OCAJP, OCPJP beta, TOGAF part 1 and part 2
    Paul Witten
    Ranch Hand

    Joined: Oct 10, 2012
    Posts: 86
    Jeanne Boyarsky wrote:As another spin on this: is the company really asking for both Java and C#. Most people don't work on both at the same time. And expecting it from an entry level candidate is excessive in my mind.

    It must be extremely rare for a shop to be looking for proficiency in both platforms. Cripes, one platform is enough when you are trying to go commercial.

    And then some Java shops are almost militant about the platform war. If you sent your resume to Oracle you'd be better off deleting the .NET credentials. Har. Not really, but you know what I mean.

    Actually Oracle does have a C# JMS client API for those who prefer messaging in JMS with a .NET client. Believe it or not. But the main thing (if you want such a job) is to know Java, Weblogic Sever and the JMS API inside and out, not C#. It is assumed that because you know Java and the JMS API inside and out that you can pick up C# over night.
     
    GeeCON Prague 2014
     
    subject: Which of these languages will be the most difficult and take the most time to learn?