• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Lots of Java technologies, help me organize my thoughts

 
Ranch Hand
Posts: 117
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Following on from this thread (https://coderanch.com/t/620362/Jobs/careers/Java-Career-path#2838777) I decided to focus on learning about web apps. Training myself, get some certifications and apply for jobs.

So I understand that web apps are divided into the following:
- CRUD (Create, Read, Update, Delete) app - e.g. Evernote
- eCommerce app - e.g. Amazon
- Video/streaming app - e.g. Netflix
- Desktop application port - e.g. Salesforce
- Mobile app - e.g. m.google.com
- Multi-user app - e.g. Scribblar or Crocodoc
- Prototyping app - e.g. your own app in development

I would be interested in CRUD, eCommerce apps, desktop application ports and mobile apps.

Now I am a complete newbie with all these Java technologies and frameworks. I know core Java, a bit of databases and I've played around with android development but that is it!

So as I've been searching for jobs online and advice within these forums, I've been making notes of key technologies that I might have to learn. Please help me make sense of all these technologies so I can structure my self learning a bit, or just tell me if I need to learn something else.

Java Platform:
- Java SE
- Java EE

Front end:
- HTML
- CSS
- JavaScript

Databases:
- Hibernate

Server side:
Servlets and JSP

Java Frameworks:
- Spring MVC
- Grails
- Vaadin
- GWT
- Wicket
- Play!
- Struts
- JSF

Other terms I've seen but don't fully understand:
- MVC
- Agile (okay I know it's a methodology)
 
author & internet detective
Posts: 41860
908
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Syed,
Those application types aren't mutually exclusive. For example, an e-commerce site has CRUD functionality too.

As far as your list - start simple. Can you write an app that just uses Servlets, JSPs (with MVC) and JDBC? Once you can do that, add something like a JavaScript framework. In other words, take it one bite at a time.
 
Syed Islam
Ranch Hand
Posts: 117
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I can use JDBC but that's about it!

So basically you are saying the story starts with Servlets, JSP (with Model View Controller), JDBC and I don't need to think about these frameworks just yet. Okay, that helps.

Jeanne can I ask 2 more questions:

1) I found some university tutorials which data back to 2006. When reading about Servlets, JSP etc should I look at modern resources or does it not really matter?

2) You mentioned learning things slowly at a time, starting with Javascipt as an example. Just so I can mind map my journey of learning. What would I typically learn after that or does this depend too much on the projects I work on?
 
Jeanne Boyarsky
author & internet detective
Posts: 41860
908
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Syed,
1) 2006 might be too old. It depends on whether they were using good practices in 2006. You want to make sure they aren't using scriplets and they are using MVC. For the former, search for <%= in the JSP. If that string is there, run the other way. For the later, make sure they are forwarding from a servlet to a JSP.

2) After you know the basics, it is a good time to learn a library. Hibernate or Spring are popular ones to start with. It does depend on the projects you work on, but it is faster to learn a second library than a first one, so it will still help you.
 
Ranch Hand
Posts: 339
7
Tomcat Server Ubuntu Linux
  • Likes 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Syed,

There is a book I am reading right now that might help you with your question. It discusses many technologies that are used for Java not just the language itself. It is reviewed on the ranch here Well Grounded Java Developer Author/s : Benjamin J Evans, Martijn Verburg .
 
Syed Islam
Ranch Hand
Posts: 117
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks for the advice Jeanne and to Margaret for the book recommendation - I was actually going to request a book recommendation for learning.
 
margaret gillon
Ranch Hand
Posts: 339
7
Tomcat Server Ubuntu Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

I was actually going to request a book recommendation for learning.



There are loads of book reviews on the ranch and people always like to talk about their favourites so you can search the threads for recent discussions on books.
Book Review Forum


Here is the bunkhouse book review page . . .
JavaRanch Book Reviews
 
Ranch Hand
Posts: 10198
3
Mac PPC Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Skip all those Java and Java based frameworks. It's a very big path before you master most of those Java and Java based technologies and once you are at it, it will almost be dead! If I were to suggest you, pick Scala and some Javascript frameworks like NodeJS or AngularJS.
 
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Joe Harry wrote:Skip all those Java and Java based frameworks. It's a very big path before you master most of those Java and Java based technologies and once you are at it, it will almost be dead! If I were to suggest you, pick Scala and some Javascript frameworks like NodeJS or AngularJS.



This is some bad and some good advice, in my opinion. Java jobs outnumber Scala jobs by a very very VERY VERY wide margin. If you're looking to learn something "cool", learn Scala. If you're looking to get someone to pay you to write code, learn Java first.

The JavaScript advice is good if web development is the target.
 
Syed Islam
Ranch Hand
Posts: 117
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Just so you guys know, I ended up choosing this book...

http://www.amazon.com/Murachs-Java-Servlets-JSP-Edition/dp/1890774448/ref=cm_cr_pr_product_top
Murach's Java Servlets and JSP, 2nd Edition

I was a bit worried because it was written in 2008 but it got plenty of recent, positive reviews and it implements the MVC pattern.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic