This discussion is archived
9 Replies Latest reply: Mar 7, 2013 4:47 PM by 994425 RSS

On the lookout for quality advanced java resources

994425 Newbie
Currently Being Moderated
Hey all,

I am currently coding at somewhere between a junior to intermediate level. I've done some research on IT trends and it seems like having expertise in Java is a solid way to advance your career (in correlation with knowing other languages as well).

At the moment I have strong knowledge of the C family, with experience in Java, C++, Ruby and C#, using objects, polymorphism, classes, and inheritance and so on. But what I am interested in doing is becoming an expert in Java. I have found a few resources but am wondering if anyone can give me any sense of direction, of where I could go, what I could learn, and what resources would be helpful.

Any help appreciated!
  • 1. Re: On the lookout for quality advanced java resources
    gimbal2 Guru
    Currently Being Moderated
    You cant become an expert by reading, only by doing. You should know that if all what you say is true.

    So pick a project and go complete it - what you need to research will come naturally when you start to think about fulfilling the requirements. At that point you can also ask more direct questions in stead of this open ended stuff.

    Meanwhile you may want to give effective java a read, it is somewhat of a bible and required reading for everyone that is no longer new to java. Its one of those books that tells you what not to do too, highly valuable.
  • 2. Re: On the lookout for quality advanced java resources
    994425 Newbie
    Currently Being Moderated
    Yea, you're right about the doing vs reading thing. The vague and unvocalized plan was to do some reading and try to get an idea of what I should be learning or practicing and then go from there. Completing a personal project in the language is something that I'm definitely interested in doing, but I don't have much of an idea of where to go or what kind of project might be helpful or which skills I should be emphasizing if I want to make myself marketable in industry.

    To give you a bit of a background on my history I entered into a Computer Programmer Analyst advanced diploma and am now half way through it, and currently working in a co-op term doing web development using Salesforce and Ruby-on-Rails. In my program we have scratched the surface of the object-oriented method and have created a few projects in C++ that use polymorphism and inheritance. Going forward we will be delving deeper into software design using C++, as well as a few new languages.

    A few weeks ago I decided to do some research on IT trends and Java seems to be the main language in use in industry today, so I honed in on that one to become more skilled. Last night I began my research to try and understand how to actually accomplish that, and although I only did so for a few hours, I didn't quite get too far.

    In any case I will take a look around for the book that you've suggested, and if you have any ideas of personal projects I could take on that would be cool!
  • 3. Re: On the lookout for quality advanced java resources
    994425 Newbie
    Currently Being Moderated
    I've been thinking about two possible projects:

    The first is replicating a calculator we did in C++, along with a user interface, to get more comfortable with Java syntax.

    The second is to make a database application of some sort.
  • 4. Re: On the lookout for quality advanced java resources
    rp0428 Guru
    Currently Being Moderated
    >
    The first is replicating a calculator we did in C++, along with a user interface, to get more comfortable with Java syntax.
    . . .
    The second is to make a database application of some sort.
    >
    And now you have stumbled upon 'the great divide': front end vs. back end

    There are people with high levels of expertise on the back-end and others with high levels of expertise on the front-end.

    There are not so many people with high levels of expertise in both areas. In my opinion the primary reason for that is because there is very little knowledge that can be transferred from one of those areas to the other.

    The biggest reason for that is probably because once you are an expert in the one area you have a much higher market value for those skills and so the jobs you get will tend to emphasize that area at the expense of the other. That tendency is reinforced by the fact that, if you are a consultant you will only get hired for what is already on your resume; that is, your previous paid experience in the same area.

    I suggest that you now try to decide which of those two paths you want to focus on. Currently the bulk of the new development going on is in the app area for mobile and wireless technology: phone apps, tablet apps, touch-sensitive graphic-oriented applications. NONE of that graphic-gui stuff is in any way helpful for back-end development.

    You are at a fork in the road.
  • 5. Re: On the lookout for quality advanced java resources
    gimbal2 Guru
    Currently Being Moderated
    rp0428 wrote:
    I suggest that you now try to decide which of those two paths you want to focus on. Currently the bulk of the new development going on is in the app area for mobile and wireless technology: phone apps, tablet apps, touch-sensitive graphic-oriented applications. NONE of that graphic-gui stuff is in any way helpful for back-end development.
    But is that really a good direction to go in? From what I've read it is really hard to actually turn a profit in this already saturated market. I've been curious about it myself but I can't really justify putting in the time and effort to be honest. I'm doing back-end Java stuff and people are literally screaming at me to defect to their company. on that note: LinkedIn rules.
  • 6. Re: On the lookout for quality advanced java resources
    aksarben Journeyer
    Currently Being Moderated
    I have a strong bias toward back end stuff, as most of the large corporate world seems oriented there.

    I would not recommend trying to port a GUI client app (e.g., calculator) as a first major Java effort. I'm sure there are those will disabuse me of this notion, but my strong impression is there's not much call for commercial Swing apps (not zero, but small).

    Regardless of which direction you eventually take, I would invest time learning (or least getting a solid introduction to) some of the major frameworks & tools, such as Wicket, Spring, Maven, etc.

    In addition, I would read some of the books by the acknowledged experts in the field. "Effective Java," (second edition) by Joshua Bloch, is one that comes to mind almost immediately. Not a book for beginners, but you said you're beyond that stage.

    Good luck!
  • 7. Re: On the lookout for quality advanced java resources
    994425 Newbie
    Currently Being Moderated
    Thanks for all of the tips.

    I have asked a few developers at work and everyone seems to have a different opinion. A suggestion I was given today was to make a pictionary/chat app that multiple people would be able to use at the same time. What I will likely do is do some extensive research this weekend and try to come to a more informed decision, and then start doing some project planning.
  • 8. Re: On the lookout for quality advanced java resources
    EJP Guru
    Currently Being Moderated
    I doubt that the world needs another chat application either frankly.
  • 9. Re: On the lookout for quality advanced java resources
    994425 Newbie
    Currently Being Moderated
    So far I'm not going for something that's useful, just something that will gain me useful skills. It's more about the process I take to solve a problem, using Java syntax, and keyboard proficiency, and less about the final product.

    That said if anyone has a great idea that will accomplish those things as well as get me a cool thing that's not absurdly difficult to do I am definitely open to it.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points