SlideShare a Scribd company logo
1 of 52
Download to read offline
(Better)
Career in Java
   Mert ƇALIŞKAN
     March 2013



                   @ankarajug
                   #javaizmirde
AnkaraJUG
  ļ¬rst event @ November 2012...

  Founding Fathers:
    Barış BAL
    Ƈağatay ƇİVİCİ
    Mert ƇALIŞKAN

http://bit.ly/ankarajugKAYIT
    ankarajug.blogspot.com

    facebook.com/ankarajug

    twitter.com/ankarajug         @ankarajug
                                  #javaizmirde
Mert ƇALIŞKAN
             10+ years of experience w/ Java
              Coder @ T2.com.tr

Open Source Software Advocate, Founder, Implementor

Member of Apache Software
Foundation and OpenLogic Expert
Community

Author of
PrimeFaces Cookbook
from PacktPub

   tr.linkedin.com/in/mertcaliskan             @ankarajug
                                               #javaizmirde
To JAVA?             or NOT..? :)
Come to the Dark Side..!
                                          @ankarajug
                                          #javaizmirde
Agenda



History of Java
Versions of Java.. SE, EE and the others..
Java Web Frameworks
Better career w/ Java
Q&A
                                      @ankarajug
                                      #javaizmirde
YOU KNOW THIS TRANS-ATLANTIC?




                                @ankarajug
                                #javaizmirde
ā€¢ RMS Titanic
  sank in North Atlantic Ocean
  on 15 April, 1912 on maiden voyage

  So Eventually Everything Dies...!
  Tragic analogy, ok :)


ā€¢ You, Me, All of Us...
ā€¢ Companies, Technologies...
ā€¢ Key point is: You should avoid not making it like
  Titanic, which sunk in 2hrs and 40 minutes...!
                                                   @ankarajug
                                                   #javaizmirde
Where it all began...
                       Founded February 24, 1982

                       Sold to Oracle January 27, 2010
                       for $7.4 billion..!

Sun was mainly selling Hardware, but they also working
on computer software like Java, MySQL and NFS..



Founded in 1977 by Larry Ellison and a couple of clever
guys, their motivation is to compete with IBMā€™s System R,
which was a relational database.
                                                    @ankarajug
                                                    #javaizmirde
James Gosling... was the
      FATHER of Java



Age: 69


                                     Age: 58
                         $$$ makes you look
                             younger..!
                      Larry Ellison...
                          is the new BOSS
                                        @ankarajug
                                        #javaizmirde
History of JAVA
Java Language Project started in June 1991

(James Gosling and his fellas)

First named as: OAK                           The Duke
Running byteCode on Java Virtual Machine

WORA (Write Once, Run Anywhere)

First started with applets in the WEB world

With the dawn of Java Enterprise Edition, Servlets
made their way to rule the world.

                                                @ankarajug
                                                #javaizmirde
Editions of JAVA
Java Card: application on smart cards

Micro Edition (ME): mobile phones + set-top boxes

Standard Edition (SE): Cool Software Platform    The Duke
Enterprise Edition (EE): Oracleā€™s Enterprise Computing
Platform

Java DB: Oracleā€™s supported version of Apache Derby.

JavaFX: Aim was RIA (looks dead for me)

Personal Java: (discontinued) Java edition for mobile and
embedded systems based on Java 1.1.8
                                                    @ankarajug
                                                    #javaizmirde
CHRONOLOGY OF JAVA SE
  JDK 1.0           JDK 1.1               Introducing
January 23,    February 19, 1997    Abstract Window Toolkit
   1996

                                 J2SE 1.2
Swing was on Board           December 8, 1998

                                                 J2SE 1.3
               HotSpot JVM and JNDI
                                                May 8, 2000

 reg-ex, Java Web Start                J2SE 1.4
 embedded XML parser               February 6, 2002

   J2SE 1.5
                    New Cool Features on Language
 September 30,
     2004         Generics, AutoBoxing, var-args & etc...
                                                          @ankarajug
                                                          #javaizmirde
CHRONOLOGY OF JAVA SE
                    Renamed to Java SE instead of
  Java SE 6         J2SE from now on.
December 11, 2006   Support for running scripting
                    lang. like Rhino.


                       Dynamic lang. support like
    Java SE 7                    Groovy
    July 28, 2011
                        String in switch (finally!)


    Best is yet to come..!
    lambda expressions...       Java SE 8
     streaming..filtering..     Summer, 2013
          closures...                          @ankarajug
                                               #javaizmirde
Enterprise JAVA
    Java EE = Java Enterprise Edition

    Extends Java SE

   javax.faces.*              UI + JSF Related Stuff
  javax.servlet.*            Handling HTTP invocations
javax.enterprise.inject.*   CDI, Like Spring dependency
     javax.ejb.*                         Inj.
                                      EJB Stuff
 javax.validation.*                Bean Validation
javax.persistence.*                  Persistency
javax.transaction.*            Stuff for transactions
     javax.jms.*                  Messaging Stuff
                                                     @ankarajug
                                                     #javaizmirde
CHRONOLOGY OF JAVA EE
   J2EE 1.2            J2EE 1.3           J2EE 1.4
December 12, 1999     Sept. 12, 2001      Nov. 11, 2003

    Servlet 2.2       Servlet 2.3       Servlet 2.4


 JSP  JAX-WS          Java EE 5        Servlet 2.5
EJB   JAX-RS          May 11, 2006
 JMS   JAX-B
JTA     JPA
JAAS    JSTL          Java EE 6
 JSF any many       December 10, 2009 Servlet 3.0
 EL   more...
                                                      @ankarajug
                                                      #javaizmirde
Java Frameworks..

Ok you get to know the language in 4 years...

But you DEFINITELY NEED to learn the
frameworks. Java is mostly about frameworks
      (lots of open source ones).

I think you ask yourselves now.. Which one should
we go with?

They differ in context, if you want do WEB,
       here is a list what you can ļ¬nd around.


                                                 @ankarajug
                                                 #javaizmirde
Java Frameworks..
              UI                              Controller/Dep.Inj.
        JSF        Struts                   Spring          Guice         HiveMind

Spring MVC    WebWork        ZK               picoContainer          XWork

   Wicket      Tapestry      GWT
                                            Model/Persistence Layer
      Echo3     Cocoon       Vaadin
                                                 Hibernate          iBatis

     Integration                                         Toplink      KODO

Apache CXF    Apache Axis2              IDE                 EclipseLink

                                  Eclipse     IntelliJ
      Spring WS
                                               IDEA
                              JDeveloper
                                            NetBEANS
                                                                             @ankarajug
                                                                             #javaizmirde
One framework to rule them ALL...




          Spring

                                @ankarajug
                                #javaizmirde
Java Frameworks..
                                         Spring

      Spring Security          SpringSource OSGi Test Stubs
     Spring Web Flow             Spring Security Kerberos
   Spring Web Services                   Extension                 Spring Social Twitter
 Spring Dynamic Modules          SpringSource dm Server           Spring.NET CodeConļ¬g
    Spring Integration            SpringSource dm Kernel         Spring.NET REST Client
        Spring Batch             SpringSource dm Server             Spring.NET Social
    Spring Batch Admin                    Samples              Spring.NET Social Dropbox
         Spring.NET                Spring Data Commons         Spring.NET Social LinkedIn
       Spring AMQP                      Spring Data             Spring.NET Social Twitter
     Spring AMQP.NET                 Spring Data JDBC         Spring.NET Visual Studio 2010
      Spring GemFire                  Spring Data JPA                   Extension
 Spring GemFire for .NET             Spring Data Redis            Spring Social Yammer
        Spring LDAP                   Spring Data Solr                 Spring Shell
       Spring Social                   Spring Mobile               Spring Data GemFire
    Spring for Android             Spring Data MongoDB          Spring Migration Analyzer
         Spring IDE                  Spring Data Neo4j          Spring Integration Splunk
Spring BlazeDS Integration             Spring Gemļ¬re             Spring Integration Print
  SpringSource Bundlor              Spring Data Hadoop            Spring Security SAML
         Spring Roo               Spring Social Facebook
       Spring Python               Spring Social LinkedIn
                                                                                 @ankarajug
                                                                                 #javaizmirde
Java Frameworks..
                                         Spring

      Spring Security          SpringSource OSGi Test Stubs
     Spring Web Flow             Spring Security Kerberos
   Spring Web Services                   Extension                 Spring Social Twitter
 Spring Dynamic Modules          SpringSource dm Server           Spring.NET CodeConļ¬g
    Spring Integration            SpringSource dm Kernel         Spring.NET REST Client
        Spring Batch             SpringSource dm Server             Spring.NET Social




                                   53
    Spring Batch Admin                    Samples              Spring.NET Social Dropbox
         Spring.NET                Spring Data Commons         Spring.NET Social LinkedIn
       Spring AMQP                      Spring Data             Spring.NET Social Twitter
     Spring AMQP.NET                 Spring Data JDBC         Spring.NET Visual Studio 2010
      Spring GemFire                  Spring Data JPA                   Extension
 Spring GemFire for .NET             Spring Data Redis            Spring Social Yammer
        Spring LDAP                   Spring Data Solr                 Spring Shell
       Spring Social                   Spring Mobile               Spring Data GemFire
    Spring for Android             Spring Data MongoDB          Spring Migration Analyzer
         Spring IDE                  Spring Data Neo4j          Spring Integration Splunk
Spring BlazeDS Integration             Spring Gemļ¬re             Spring Integration Print
  SpringSource Bundlor              Spring Data Hadoop            Spring Security SAML
         Spring Roo               Spring Social Facebook
       Spring Python               Spring Social LinkedIn
                                                                                 @ankarajug
                                                                                 #javaizmirde
Head Start...!
PrimeFaces       CXF                 Hamcrest Mockito
                          Spring
JPA     Hibernate                           jUnit


                     DEMO
https://github.com/mulderbaba/testinfected

             AppFuse
             is a full-stack framework for building webapp
             on the JVM.
             http://appfuse.org/display/APF/AppFuse+QuickStart
                                                      @ankarajug
                                                      #javaizmirde
Open Source Licenses

            Question here is:
But how do they license these frameworks?
    How can I use them in a free way?




         Open Source Initiative

                                       @ankarajug
                                       #javaizmirde
Open Source Licenses
Academic Free License 3.0 (AFL-3.0)                                     MirOS Licence (MirOS)
Affero GNU Public License: See "GNU Affero General Public License       Microsoft Public License (MS-PL)
3.0 (AGPL-3.0)"                                                         Microsoft Reciprocal License (MS-RL)

                 Question here is:
Adaptive Public License (APL-1.0)
Apache License 2.0 (Apache-2.0)
Apple Public Source License (APSL-2.0)
                                                                        MIT license (MIT)
                                                                        Motosoto License (Motosoto)
                                                                        Mozilla Public License 2.0 (MPL-2.0)

     But how do they license these frameworks?
Artistic license 2.0 (Artistic-2.0)
Attribution Assurance Licenses (AAL)
BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)
                                                                        Multics License (Multics)
                                                                        NASA Open Source Agreement 1.3 (NASA-1.3)
                                                                        NTP License (NTP)


         How can I use them in a free way?
BSD 2-Clause "Simpliļ¬ed" or "FreeBSD" License (BSD-2-Clause)            Naumen Public License (Naumen)
Boost Software License (BSL-1.0)                                        Nethack General Public License (NGPL)
Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1)        Nokia Open Source License (Nokia)
Common Development and Distribution License 1.0 (CDDL-1.0)              Non-Proļ¬t Open Software License 3.0 (NPOSL-3.0)
Common Public Attribution License 1.0 (CPAL-1.0)                        OCLC Research Public License 2.0 (OCLC-2.0)
CUA Ofļ¬ce Public License Version 1.0 (CUA-OPL-1.0)                      Open Font License 1.1 (OFL-1.1)
EU DataGrid Software License (EUDatagrid)                               Open Group Test Suite License (OGTSL)
Eclipse Public License 1.0 (EPL-1.0)                                    Open Software License 3.0 (OSL-3.0)
Educational Community License, Version 2.0 (ECL-2.0)                    PHP License 3.0 (PHP-3.0)
Eiffel Forum License V2.0 (EFL-2.0)                                     The PostgreSQL License (PostgreSQL)
Entessa Public License (Entessa)                                        Python License (Python-2.0) (overall Python license)
European Union Public License, Version 1.1 (EUPL-1.1) (links to every   CNRI Python license (CNRI-Python) (CNRI portion of Python License)
language's version on their site)                                       Q Public License (QPL-1.0)
Fair License (Fair)                                                     RealNetworks Public Source License V1.0 (RPSL-1.0)
Frameworx License (Frameworx-1.0)                                       Reciprocal Public License 1.5 (RPL-1.5)
GNU Affero General Public License v3 (AGPL-3.0)                         Ricoh Source Code Public License (RSCPL)
GNU General Public License version 2.0 (GPL-2.0)                        Simple Public License 2.0 (SimPL-2.0)
GNU General Public License version 3.0 (GPL-3.0)                        Sleepycat License (Sleepycat)
GNU Library or "Lesser" General Public License version 2.1 (LGPL-2.1)   Sun Public License 1.0 (SPL-1.0)
GNU Library or "Lesser" General Public License version 3.0              Sybase Open Watcom Public License 1.0 (Watcom-1.0)
(LGPL-3.0)                                                              University of Illinois/NCSA Open Source License (NCSA)
Historical Permission Notice and Disclaimer (HPND)                      Vovida Software License v. 1.0 (VSL-1.0)
IBM Public License 1.0 (IPL-1.0)                                        W3C License (W3C)
IPA Font License (IPA)
ISC License (ISC)                  Open Source Initiative               wxWindows Library License (WXwindows)
                                                                        X.Net License (Xnet)
LaTeX Project Public License 1.3c (LPPL-1.3c)                           Zope Public License 2.0 (ZPL-2.0)
Lucent Public License Version 1.02 (LPL-1.02)                           zlib/libpng license (Zlib)


                                                                                                                           @ankarajug
                                                                                                                           #javaizmirde
Open Source Licenses
Academic Free License 3.0 (AFL-3.0)                                     MirOS Licence (MirOS)
Affero GNU Public License: See "GNU Affero General Public License       Microsoft Public License (MS-PL)
3.0 (AGPL-3.0)"                                                         Microsoft Reciprocal License (MS-RL)

                 Question here is:
Adaptive Public License (APL-1.0)
Apache License 2.0 (Apache-2.0)
Apple Public Source License (APSL-2.0)
                                                                        MIT license (MIT)
                                                                        Motosoto License (Motosoto)
                                                                        Mozilla Public License 2.0 (MPL-2.0)

     But how do they license these frameworks?
Artistic license 2.0 (Artistic-2.0)
Attribution Assurance Licenses (AAL)
BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)
                                                                        Multics License (Multics)
                                                                        NASA Open Source Agreement 1.3 (NASA-1.3)
                                                                        NTP License (NTP)


         How can I use them in a free way?
BSD 2-Clause "Simpliļ¬ed" or "FreeBSD" License (BSD-2-Clause)            Naumen Public License (Naumen)
Boost Software License (BSL-1.0)                                        Nethack General Public License (NGPL)




                                                      69
Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1)        Nokia Open Source License (Nokia)
Common Development and Distribution License 1.0 (CDDL-1.0)              Non-Proļ¬t Open Software License 3.0 (NPOSL-3.0)
Common Public Attribution License 1.0 (CPAL-1.0)                        OCLC Research Public License 2.0 (OCLC-2.0)
CUA Ofļ¬ce Public License Version 1.0 (CUA-OPL-1.0)                      Open Font License 1.1 (OFL-1.1)
EU DataGrid Software License (EUDatagrid)                               Open Group Test Suite License (OGTSL)
Eclipse Public License 1.0 (EPL-1.0)                                    Open Software License 3.0 (OSL-3.0)
Educational Community License, Version 2.0 (ECL-2.0)                    PHP License 3.0 (PHP-3.0)
Eiffel Forum License V2.0 (EFL-2.0)                                     The PostgreSQL License (PostgreSQL)
Entessa Public License (Entessa)                                        Python License (Python-2.0) (overall Python license)
European Union Public License, Version 1.1 (EUPL-1.1) (links to every   CNRI Python license (CNRI-Python) (CNRI portion of Python License)
language's version on their site)                                       Q Public License (QPL-1.0)
Fair License (Fair)                                                     RealNetworks Public Source License V1.0 (RPSL-1.0)
Frameworx License (Frameworx-1.0)                                       Reciprocal Public License 1.5 (RPL-1.5)
GNU Affero General Public License v3 (AGPL-3.0)                         Ricoh Source Code Public License (RSCPL)
GNU General Public License version 2.0 (GPL-2.0)                        Simple Public License 2.0 (SimPL-2.0)
GNU General Public License version 3.0 (GPL-3.0)                        Sleepycat License (Sleepycat)
GNU Library or "Lesser" General Public License version 2.1 (LGPL-2.1)   Sun Public License 1.0 (SPL-1.0)
GNU Library or "Lesser" General Public License version 3.0              Sybase Open Watcom Public License 1.0 (Watcom-1.0)
(LGPL-3.0)                                                              University of Illinois/NCSA Open Source License (NCSA)
Historical Permission Notice and Disclaimer (HPND)                      Vovida Software License v. 1.0 (VSL-1.0)
IBM Public License 1.0 (IPL-1.0)                                        W3C License (W3C)
IPA Font License (IPA)
ISC License (ISC)                  Open Source Initiative               wxWindows Library License (WXwindows)
                                                                        X.Net License (Xnet)
LaTeX Project Public License 1.3c (LPPL-1.3c)                           Zope Public License 2.0 (ZPL-2.0)
Lucent Public License Version 1.02 (LPL-1.02)                           zlib/libpng license (Zlib)


                                                                                                                           @ankarajug
                                                                                                                           #javaizmirde
Must Read Books...




                     @ankarajug
                     #javaizmirde
Must Read Books...




                     @ankarajug
                     #javaizmirde
Must Read Books...




                     @ankarajug
                     #javaizmirde
Must Read Books...




                     @ankarajug
                     #javaizmirde
Must Read Books...




                     @ankarajug
                     #javaizmirde
The Java Magazine...
http://www.oracle.com/technetwork/java/
             javamagazine/



       bi-monthly since 2011..!!!
             For Free..!!!




                                     @ankarajug
                                     #javaizmirde
Google Summer of Code



For the love of code since 2005...
around 6000 students meet 3000 mentors of OSS from over
100 countries...

Mutual beneļ¬ts : you get ~5000$, you can use the stuff for
summer internship and google gets the OSS support.

              http://bit.ly/GSOC2013                 @ankarajug
                                                     #javaizmirde
Resume Preparation
People skim resumes... So make
it to the point as much as
possible

Itā€™s not what you know.
Itā€™s what youā€™ve done with
what you know...

Keep it short
1 to 3 sentences, 1 to 3 pages
at most

                                 @ankarajug
                                 #javaizmirde
Where can I work on Java?
X
        X X
        X           XX
                    X         X            X
                                   X
        X        X                     X

                X        XX


    Currently 18 technoparks located in Turkey...

                                               @ankarajug
                                               #javaizmirde
Career in JAVA
  Participate in Open Source

  Be a Contributor / or better: be a Committer

  Learn the Language from inside out...

  Oracle Certiļ¬cations are one way to go...

         Java SE 7 Programmer
  Java EE6 Web Component Developer
Java EE6 Enterprise JavaBeans Developer
Java EE6 Java Persistence API Developer
    Java EE6 Web Services Developer
     Java EE 6 Enterprise Architect
                                                 @ankarajug
                                                 #javaizmirde
Will it Compile???




   int ā‚¬i = 1;
YUP...! Literals can start with letter,
 connecting character like "_", and
          currency character.



                                     @ankarajug
                                     #javaizmirde
Will it Compile???


   int ā‚¬i = 1;
YUP...! Literals can start with letter,
 connecting character like "_", and
          currency character.



                                     @ankarajug
                                     #javaizmirde
Will it Compile???




float f this one's double by
Nope..won't compile, = 320.0;
            default.



                           @ankarajug
                           #javaizmirde
Will it Compile???

float f = 320.0;
Nope..won't compile, this one's double by
                default.



                                     @ankarajug
                                     #javaizmirde
Will it Compile???




     char c = -80;
Nope... you cannot assign int to char and
 char is between 0-65535, so you will
          get gibberish output.


                                   @ankarajug
                                   #javaizmirde
Will it Compile???

     char c = -80;
Nope... you cannot assign int to char and
 char is between 0-65535, so you will
          get gibberish output.


                                   @ankarajug
                                   #javaizmirde
public ļ¬nal class String implements
java.io.Serializable,
java.lang.Comparable<java.lang.String>,
 Can you extend String???
java.lang.CharSequence {
....
....
}


                                          @ankarajug
                                          #javaizmirde
Can you extend String???
public ļ¬nal class String implements
java.io.Serializable,
java.lang.Comparable<java.lang.String>,
java.lang.CharSequence {
....
....
}


                                          @ankarajug
                                          #javaizmirde
For better career...



  Experience           Communication

               Knowledge

Professionalism            Creativity




                                        @ankarajug
                                        #javaizmirde
For better career...

              Know broad... Know deep...


            Experience           Communication

                         Knowledge

          Professionalism            Creativity

If you know Java then dive into the frameworks.. If you
know all of them go through scripting languages...
Know you stuff very well...                        @ankarajug
                                                   #javaizmirde
For better career...

Stay Current... Use your knowledge...


   Experience            Communication

                Knowledge

 Professionalism            Creativity



  Practice... Practice... Practice...
                                         @ankarajug
                                         #javaizmirde
For better career...
              Be Open-Minded...


        Experience           Communication

                     Knowledge

      Professionalism            Creativity


 Listen to peopleā€™s thoughts.. Theyā€™re more
valuable than you think.. You CANNOT know
               everything..!               @ankarajug
                                              #javaizmirde
For better career...

      Reject the status quo...


  Experience           Communication

               Knowledge

Professionalism            Creativity


Donā€™t be a rebellion but donā€™t kill
    the rebellion inside you...
                                        @ankarajug
                                        #javaizmirde
For better career...
Take and accept the responsibility...


   Experience           Communication

                Knowledge

 Professionalism            Creativity



   Make it all in a classy way...
                                         @ankarajug
                                         #javaizmirde
To sum up on career...
You are the one that will be building
your OWN career.

Work for your employer and work for yourself also...

Take the time to build your skills:
your knowledge, your communication skills, your
experience.

And donā€™t kill the child inside you, make it creative as
always...

Act Professional, because you have to be a ONE..!

                                                 @ankarajug
                                                 #javaizmirde
To sum up...

JAVA is still HOT TOPIC...

Read Read Read...

Participate...Be Active...Be a part of JAVA :)

Oracle is investing on Java so best is yet to come.

Take a leap,
        dive into Java,
               build your career on it.

                                                 @ankarajug
                                                 #javaizmirde
JUST DO IT
             @ankarajug
             #javaizmirde
E0F


@ankarajug
#javaizmirde
               @ankarajug
               #javaizmirde

More Related Content

What's hot

BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenMert Ƈalışkan
Ā 
Future of Java EE with Java SE 8
Future of Java EE with Java SE 8Future of Java EE with Java SE 8
Future of Java EE with Java SE 8Hirofumi Iwasaki
Ā 
Springboot introduction
Springboot introductionSpringboot introduction
Springboot introductionSagar Verma
Ā 
Spring Framework Presantation Part 1-Core
Spring Framework Presantation Part 1-CoreSpring Framework Presantation Part 1-Core
Spring Framework Presantation Part 1-CoreDonald Lika
Ā 
itft-Java evolution
itft-Java evolutionitft-Java evolution
itft-Java evolutionAtul Sehdev
Ā 
Jdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsJdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsMert Ƈalışkan
Ā 
Java - At a glance
Java - At a glanceJava - At a glance
Java - At a glanceNitish Baranwal
Ā 
Project Presentation on Advance Java
Project Presentation on Advance JavaProject Presentation on Advance Java
Project Presentation on Advance JavaVikas Goyal
Ā 
Play framework
Play frameworkPlay framework
Play frameworksambaochung
Ā 
Spring framework
Spring frameworkSpring framework
Spring frameworkAircon Chen
Ā 
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!Serdar Basegmez
Ā 
Fun with EJB 3.1 and Open EJB
Fun with EJB 3.1 and Open EJBFun with EJB 3.1 and Open EJB
Fun with EJB 3.1 and Open EJBArun Gupta
Ā 
Java part1
Java part1Java part1
Java part1Raghu nath
Ā 
Node.js Development with Apache NetBeans
Node.js Development with Apache NetBeansNode.js Development with Apache NetBeans
Node.js Development with Apache NetBeansRyan Cuprak
Ā 

What's hot (20)

BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with Maven
Ā 
Future of Java EE with Java SE 8
Future of Java EE with Java SE 8Future of Java EE with Java SE 8
Future of Java EE with Java SE 8
Ā 
Springboot introduction
Springboot introductionSpringboot introduction
Springboot introduction
Ā 
Spring Framework Presantation Part 1-Core
Spring Framework Presantation Part 1-CoreSpring Framework Presantation Part 1-Core
Spring Framework Presantation Part 1-Core
Ā 
Core java
Core java Core java
Core java
Ā 
itft-Java evolution
itft-Java evolutionitft-Java evolution
itft-Java evolution
Ā 
1 java introduction
1 java introduction1 java introduction
1 java introduction
Ā 
Jdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsJdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent Projects
Ā 
Java - At a glance
Java - At a glanceJava - At a glance
Java - At a glance
Ā 
Project Presentation on Advance Java
Project Presentation on Advance JavaProject Presentation on Advance Java
Project Presentation on Advance Java
Ā 
Play framework
Play frameworkPlay framework
Play framework
Ā 
Spring framework
Spring frameworkSpring framework
Spring framework
Ā 
JAVA FEATURES
JAVA FEATURESJAVA FEATURES
JAVA FEATURES
Ā 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServices
Ā 
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!
Ā 
The Evolution of Java
The Evolution of JavaThe Evolution of Java
The Evolution of Java
Ā 
React native
React nativeReact native
React native
Ā 
Fun with EJB 3.1 and Open EJB
Fun with EJB 3.1 and Open EJBFun with EJB 3.1 and Open EJB
Fun with EJB 3.1 and Open EJB
Ā 
Java part1
Java part1Java part1
Java part1
Ā 
Node.js Development with Apache NetBeans
Node.js Development with Apache NetBeansNode.js Development with Apache NetBeans
Node.js Development with Apache NetBeans
Ā 

Viewers also liked

Core Java Career Essentials
Core Java Career EssentialsCore Java Career Essentials
Core Java Career EssentialsShivi Kashyap
Ā 
Capital Campaign
Capital CampaignCapital Campaign
Capital CampaignChantal DeYoe
Ā 
Droptrax
DroptraxDroptrax
Droptraxgrizhatch
Ā 

Viewers also liked (6)

JAVA Career
JAVA CareerJAVA Career
JAVA Career
Ā 
Core Java Career Essentials
Core Java Career EssentialsCore Java Career Essentials
Core Java Career Essentials
Ā 
Career in java
Career in javaCareer in java
Career in java
Ā 
Retail POS opportunities
Retail POS opportunitiesRetail POS opportunities
Retail POS opportunities
Ā 
Capital Campaign
Capital CampaignCapital Campaign
Capital Campaign
Ā 
Droptrax
DroptraxDroptrax
Droptrax
Ā 

Similar to Better Career with Java

Introduction to Basic Java Versions and their features
Introduction to Basic Java Versions and their featuresIntroduction to Basic Java Versions and their features
Introduction to Basic Java Versions and their featuresAkash Badone
Ā 
Basics of JAVA programming
Basics of JAVA programmingBasics of JAVA programming
Basics of JAVA programmingElizabeth Thomas
Ā 
Introduction to java
Introduction to java Introduction to java
Introduction to java Sandeep Rawat
Ā 
what is java.pdf
what is java.pdfwhat is java.pdf
what is java.pdfXanGwaps
Ā 
All the Java ADF beginners need to know - part1
All the Java ADF beginners need to know - part1All the Java ADF beginners need to know - part1
All the Java ADF beginners need to know - part1Markus Eisele
Ā 
Java: Rumours of my demise are greatly exaggerated
Java: Rumours of my demise are greatly exaggeratedJava: Rumours of my demise are greatly exaggerated
Java: Rumours of my demise are greatly exaggeratedSteve Dalton
Ā 
Object Oriented Programming-JAVA
Object Oriented Programming-JAVAObject Oriented Programming-JAVA
Object Oriented Programming-JAVAHome
Ā 
Introducing Java 7
Introducing Java 7Introducing Java 7
Introducing Java 7Markus Eisele
Ā 
INTRO TO JAVA.pdf
INTRO TO JAVA.pdfINTRO TO JAVA.pdf
INTRO TO JAVA.pdfIvyBacolongan1
Ā 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Arun Gupta
Ā 
Chapter 1. java programming language overview
Chapter 1. java programming language overviewChapter 1. java programming language overview
Chapter 1. java programming language overviewJong Soon Bok
Ā 

Similar to Better Career with Java (20)

Java basics
Java basicsJava basics
Java basics
Ā 
Introduction to Basic Java Versions and their features
Introduction to Basic Java Versions and their featuresIntroduction to Basic Java Versions and their features
Introduction to Basic Java Versions and their features
Ā 
Basics of JAVA programming
Basics of JAVA programmingBasics of JAVA programming
Basics of JAVA programming
Ā 
Introduction to java
Introduction to java Introduction to java
Introduction to java
Ā 
Chapter 1 (1).pptx
Chapter 1 (1).pptxChapter 1 (1).pptx
Chapter 1 (1).pptx
Ā 
what is java.pdf
what is java.pdfwhat is java.pdf
what is java.pdf
Ā 
All the Java ADF beginners need to know - part1
All the Java ADF beginners need to know - part1All the Java ADF beginners need to know - part1
All the Java ADF beginners need to know - part1
Ā 
Java: Rumours of my demise are greatly exaggerated
Java: Rumours of my demise are greatly exaggeratedJava: Rumours of my demise are greatly exaggerated
Java: Rumours of my demise are greatly exaggerated
Ā 
1 .java basic
1 .java basic1 .java basic
1 .java basic
Ā 
Java
JavaJava
Java
Ā 
Java
JavaJava
Java
Ā 
Java
JavaJava
Java
Ā 
Java
JavaJava
Java
Ā 
Java
JavaJava
Java
Ā 
Java
JavaJava
Java
Ā 
Object Oriented Programming-JAVA
Object Oriented Programming-JAVAObject Oriented Programming-JAVA
Object Oriented Programming-JAVA
Ā 
Introducing Java 7
Introducing Java 7Introducing Java 7
Introducing Java 7
Ā 
INTRO TO JAVA.pdf
INTRO TO JAVA.pdfINTRO TO JAVA.pdf
INTRO TO JAVA.pdf
Ā 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010
Ā 
Chapter 1. java programming language overview
Chapter 1. java programming language overviewChapter 1. java programming language overview
Chapter 1. java programming language overview
Ā 

More from Mert Ƈalışkan

Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulMert Ƈalışkan
Ā 
JavaOne - 10 Tips for Java EE 7 with PrimeFaces
JavaOne - 10 Tips for Java EE 7 with PrimeFacesJavaOne - 10 Tips for Java EE 7 with PrimeFaces
JavaOne - 10 Tips for Java EE 7 with PrimeFacesMert Ƈalışkan
Ā 
Gelecex - Maven ile Akilli Projeler
Gelecex - Maven ile Akilli ProjelerGelecex - Maven ile Akilli Projeler
Gelecex - Maven ile Akilli ProjelerMert Ƈalışkan
Ā 
Enterprise Java Web Application Frameworks Sample Stack Implementation
Enterprise Java Web Application Frameworks   Sample Stack ImplementationEnterprise Java Web Application Frameworks   Sample Stack Implementation
Enterprise Java Web Application Frameworks Sample Stack ImplementationMert Ƈalışkan
Ā 

More from Mert Ƈalışkan (6)

Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
Ā 
JavaOne - 10 Tips for Java EE 7 with PrimeFaces
JavaOne - 10 Tips for Java EE 7 with PrimeFacesJavaOne - 10 Tips for Java EE 7 with PrimeFaces
JavaOne - 10 Tips for Java EE 7 with PrimeFaces
Ā 
Test Infected
Test InfectedTest Infected
Test Infected
Ā 
Gelecex - Maven ile Akilli Projeler
Gelecex - Maven ile Akilli ProjelerGelecex - Maven ile Akilli Projeler
Gelecex - Maven ile Akilli Projeler
Ā 
Fikrim Acik Kodum Acik
Fikrim Acik Kodum AcikFikrim Acik Kodum Acik
Fikrim Acik Kodum Acik
Ā 
Enterprise Java Web Application Frameworks Sample Stack Implementation
Enterprise Java Web Application Frameworks   Sample Stack ImplementationEnterprise Java Web Application Frameworks   Sample Stack Implementation
Enterprise Java Web Application Frameworks Sample Stack Implementation
Ā 

Recently uploaded

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
Ā 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
Ā 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
Ā 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
Ā 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
Ā 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
Ā 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
Ā 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
Ā 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
Ā 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
Ā 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
Ā 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
Ā 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
Ā 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
Ā 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
Ā 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
Ā 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
Ā 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
Ā 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
Ā 

Recently uploaded (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
Ā 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
Ā 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
Ā 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Ā 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Ā 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
Ā 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
Ā 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
Ā 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Ā 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Ā 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Ā 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Ā 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
Ā 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Ā 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Ā 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Ā 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
Ā 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
Ā 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Ā 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Ā 

Better Career with Java

  • 1. (Better) Career in Java Mert ƇALIŞKAN March 2013 @ankarajug #javaizmirde
  • 2. AnkaraJUG ļ¬rst event @ November 2012... Founding Fathers: Barış BAL Ƈağatay ƇİVÄ°CÄ° Mert ƇALIŞKAN http://bit.ly/ankarajugKAYIT ankarajug.blogspot.com facebook.com/ankarajug twitter.com/ankarajug @ankarajug #javaizmirde
  • 3. Mert ƇALIŞKAN 10+ years of experience w/ Java Coder @ T2.com.tr Open Source Software Advocate, Founder, Implementor Member of Apache Software Foundation and OpenLogic Expert Community Author of PrimeFaces Cookbook from PacktPub tr.linkedin.com/in/mertcaliskan @ankarajug #javaizmirde
  • 4. To JAVA? or NOT..? :) Come to the Dark Side..! @ankarajug #javaizmirde
  • 5. Agenda History of Java Versions of Java.. SE, EE and the others.. Java Web Frameworks Better career w/ Java Q&A @ankarajug #javaizmirde
  • 6. YOU KNOW THIS TRANS-ATLANTIC? @ankarajug #javaizmirde
  • 7. ā€¢ RMS Titanic sank in North Atlantic Ocean on 15 April, 1912 on maiden voyage So Eventually Everything Dies...! Tragic analogy, ok :) ā€¢ You, Me, All of Us... ā€¢ Companies, Technologies... ā€¢ Key point is: You should avoid not making it like Titanic, which sunk in 2hrs and 40 minutes...! @ankarajug #javaizmirde
  • 8. Where it all began... Founded February 24, 1982 Sold to Oracle January 27, 2010 for $7.4 billion..! Sun was mainly selling Hardware, but they also working on computer software like Java, MySQL and NFS.. Founded in 1977 by Larry Ellison and a couple of clever guys, their motivation is to compete with IBMā€™s System R, which was a relational database. @ankarajug #javaizmirde
  • 9. James Gosling... was the FATHER of Java Age: 69 Age: 58 $$$ makes you look younger..! Larry Ellison... is the new BOSS @ankarajug #javaizmirde
  • 10. History of JAVA Java Language Project started in June 1991 (James Gosling and his fellas) First named as: OAK The Duke Running byteCode on Java Virtual Machine WORA (Write Once, Run Anywhere) First started with applets in the WEB world With the dawn of Java Enterprise Edition, Servlets made their way to rule the world. @ankarajug #javaizmirde
  • 11. Editions of JAVA Java Card: application on smart cards Micro Edition (ME): mobile phones + set-top boxes Standard Edition (SE): Cool Software Platform The Duke Enterprise Edition (EE): Oracleā€™s Enterprise Computing Platform Java DB: Oracleā€™s supported version of Apache Derby. JavaFX: Aim was RIA (looks dead for me) Personal Java: (discontinued) Java edition for mobile and embedded systems based on Java 1.1.8 @ankarajug #javaizmirde
  • 12. CHRONOLOGY OF JAVA SE JDK 1.0 JDK 1.1 Introducing January 23, February 19, 1997 Abstract Window Toolkit 1996 J2SE 1.2 Swing was on Board December 8, 1998 J2SE 1.3 HotSpot JVM and JNDI May 8, 2000 reg-ex, Java Web Start J2SE 1.4 embedded XML parser February 6, 2002 J2SE 1.5 New Cool Features on Language September 30, 2004 Generics, AutoBoxing, var-args & etc... @ankarajug #javaizmirde
  • 13. CHRONOLOGY OF JAVA SE Renamed to Java SE instead of Java SE 6 J2SE from now on. December 11, 2006 Support for running scripting lang. like Rhino. Dynamic lang. support like Java SE 7 Groovy July 28, 2011 String in switch (finally!) Best is yet to come..! lambda expressions... Java SE 8 streaming..filtering.. Summer, 2013 closures... @ankarajug #javaizmirde
  • 14. Enterprise JAVA Java EE = Java Enterprise Edition Extends Java SE javax.faces.* UI + JSF Related Stuff javax.servlet.* Handling HTTP invocations javax.enterprise.inject.* CDI, Like Spring dependency javax.ejb.* Inj. EJB Stuff javax.validation.* Bean Validation javax.persistence.* Persistency javax.transaction.* Stuff for transactions javax.jms.* Messaging Stuff @ankarajug #javaizmirde
  • 15. CHRONOLOGY OF JAVA EE J2EE 1.2 J2EE 1.3 J2EE 1.4 December 12, 1999 Sept. 12, 2001 Nov. 11, 2003 Servlet 2.2 Servlet 2.3 Servlet 2.4 JSP JAX-WS Java EE 5 Servlet 2.5 EJB JAX-RS May 11, 2006 JMS JAX-B JTA JPA JAAS JSTL Java EE 6 JSF any many December 10, 2009 Servlet 3.0 EL more... @ankarajug #javaizmirde
  • 16. Java Frameworks.. Ok you get to know the language in 4 years... But you DEFINITELY NEED to learn the frameworks. Java is mostly about frameworks (lots of open source ones). I think you ask yourselves now.. Which one should we go with? They differ in context, if you want do WEB, here is a list what you can ļ¬nd around. @ankarajug #javaizmirde
  • 17. Java Frameworks.. UI Controller/Dep.Inj. JSF Struts Spring Guice HiveMind Spring MVC WebWork ZK picoContainer XWork Wicket Tapestry GWT Model/Persistence Layer Echo3 Cocoon Vaadin Hibernate iBatis Integration Toplink KODO Apache CXF Apache Axis2 IDE EclipseLink Eclipse IntelliJ Spring WS IDEA JDeveloper NetBEANS @ankarajug #javaizmirde
  • 18. One framework to rule them ALL... Spring @ankarajug #javaizmirde
  • 19. Java Frameworks.. Spring Spring Security SpringSource OSGi Test Stubs Spring Web Flow Spring Security Kerberos Spring Web Services Extension Spring Social Twitter Spring Dynamic Modules SpringSource dm Server Spring.NET CodeConļ¬g Spring Integration SpringSource dm Kernel Spring.NET REST Client Spring Batch SpringSource dm Server Spring.NET Social Spring Batch Admin Samples Spring.NET Social Dropbox Spring.NET Spring Data Commons Spring.NET Social LinkedIn Spring AMQP Spring Data Spring.NET Social Twitter Spring AMQP.NET Spring Data JDBC Spring.NET Visual Studio 2010 Spring GemFire Spring Data JPA Extension Spring GemFire for .NET Spring Data Redis Spring Social Yammer Spring LDAP Spring Data Solr Spring Shell Spring Social Spring Mobile Spring Data GemFire Spring for Android Spring Data MongoDB Spring Migration Analyzer Spring IDE Spring Data Neo4j Spring Integration Splunk Spring BlazeDS Integration Spring Gemļ¬re Spring Integration Print SpringSource Bundlor Spring Data Hadoop Spring Security SAML Spring Roo Spring Social Facebook Spring Python Spring Social LinkedIn @ankarajug #javaizmirde
  • 20. Java Frameworks.. Spring Spring Security SpringSource OSGi Test Stubs Spring Web Flow Spring Security Kerberos Spring Web Services Extension Spring Social Twitter Spring Dynamic Modules SpringSource dm Server Spring.NET CodeConļ¬g Spring Integration SpringSource dm Kernel Spring.NET REST Client Spring Batch SpringSource dm Server Spring.NET Social 53 Spring Batch Admin Samples Spring.NET Social Dropbox Spring.NET Spring Data Commons Spring.NET Social LinkedIn Spring AMQP Spring Data Spring.NET Social Twitter Spring AMQP.NET Spring Data JDBC Spring.NET Visual Studio 2010 Spring GemFire Spring Data JPA Extension Spring GemFire for .NET Spring Data Redis Spring Social Yammer Spring LDAP Spring Data Solr Spring Shell Spring Social Spring Mobile Spring Data GemFire Spring for Android Spring Data MongoDB Spring Migration Analyzer Spring IDE Spring Data Neo4j Spring Integration Splunk Spring BlazeDS Integration Spring Gemļ¬re Spring Integration Print SpringSource Bundlor Spring Data Hadoop Spring Security SAML Spring Roo Spring Social Facebook Spring Python Spring Social LinkedIn @ankarajug #javaizmirde
  • 21. Head Start...! PrimeFaces CXF Hamcrest Mockito Spring JPA Hibernate jUnit DEMO https://github.com/mulderbaba/testinfected AppFuse is a full-stack framework for building webapp on the JVM. http://appfuse.org/display/APF/AppFuse+QuickStart @ankarajug #javaizmirde
  • 22. Open Source Licenses Question here is: But how do they license these frameworks? How can I use them in a free way? Open Source Initiative @ankarajug #javaizmirde
  • 23. Open Source Licenses Academic Free License 3.0 (AFL-3.0) MirOS Licence (MirOS) Affero GNU Public License: See "GNU Affero General Public License Microsoft Public License (MS-PL) 3.0 (AGPL-3.0)" Microsoft Reciprocal License (MS-RL) Question here is: Adaptive Public License (APL-1.0) Apache License 2.0 (Apache-2.0) Apple Public Source License (APSL-2.0) MIT license (MIT) Motosoto License (Motosoto) Mozilla Public License 2.0 (MPL-2.0) But how do they license these frameworks? Artistic license 2.0 (Artistic-2.0) Attribution Assurance Licenses (AAL) BSD 3-Clause "New" or "Revised" License (BSD-3-Clause) Multics License (Multics) NASA Open Source Agreement 1.3 (NASA-1.3) NTP License (NTP) How can I use them in a free way? BSD 2-Clause "Simpliļ¬ed" or "FreeBSD" License (BSD-2-Clause) Naumen Public License (Naumen) Boost Software License (BSL-1.0) Nethack General Public License (NGPL) Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1) Nokia Open Source License (Nokia) Common Development and Distribution License 1.0 (CDDL-1.0) Non-Proļ¬t Open Software License 3.0 (NPOSL-3.0) Common Public Attribution License 1.0 (CPAL-1.0) OCLC Research Public License 2.0 (OCLC-2.0) CUA Ofļ¬ce Public License Version 1.0 (CUA-OPL-1.0) Open Font License 1.1 (OFL-1.1) EU DataGrid Software License (EUDatagrid) Open Group Test Suite License (OGTSL) Eclipse Public License 1.0 (EPL-1.0) Open Software License 3.0 (OSL-3.0) Educational Community License, Version 2.0 (ECL-2.0) PHP License 3.0 (PHP-3.0) Eiffel Forum License V2.0 (EFL-2.0) The PostgreSQL License (PostgreSQL) Entessa Public License (Entessa) Python License (Python-2.0) (overall Python license) European Union Public License, Version 1.1 (EUPL-1.1) (links to every CNRI Python license (CNRI-Python) (CNRI portion of Python License) language's version on their site) Q Public License (QPL-1.0) Fair License (Fair) RealNetworks Public Source License V1.0 (RPSL-1.0) Frameworx License (Frameworx-1.0) Reciprocal Public License 1.5 (RPL-1.5) GNU Affero General Public License v3 (AGPL-3.0) Ricoh Source Code Public License (RSCPL) GNU General Public License version 2.0 (GPL-2.0) Simple Public License 2.0 (SimPL-2.0) GNU General Public License version 3.0 (GPL-3.0) Sleepycat License (Sleepycat) GNU Library or "Lesser" General Public License version 2.1 (LGPL-2.1) Sun Public License 1.0 (SPL-1.0) GNU Library or "Lesser" General Public License version 3.0 Sybase Open Watcom Public License 1.0 (Watcom-1.0) (LGPL-3.0) University of Illinois/NCSA Open Source License (NCSA) Historical Permission Notice and Disclaimer (HPND) Vovida Software License v. 1.0 (VSL-1.0) IBM Public License 1.0 (IPL-1.0) W3C License (W3C) IPA Font License (IPA) ISC License (ISC) Open Source Initiative wxWindows Library License (WXwindows) X.Net License (Xnet) LaTeX Project Public License 1.3c (LPPL-1.3c) Zope Public License 2.0 (ZPL-2.0) Lucent Public License Version 1.02 (LPL-1.02) zlib/libpng license (Zlib) @ankarajug #javaizmirde
  • 24. Open Source Licenses Academic Free License 3.0 (AFL-3.0) MirOS Licence (MirOS) Affero GNU Public License: See "GNU Affero General Public License Microsoft Public License (MS-PL) 3.0 (AGPL-3.0)" Microsoft Reciprocal License (MS-RL) Question here is: Adaptive Public License (APL-1.0) Apache License 2.0 (Apache-2.0) Apple Public Source License (APSL-2.0) MIT license (MIT) Motosoto License (Motosoto) Mozilla Public License 2.0 (MPL-2.0) But how do they license these frameworks? Artistic license 2.0 (Artistic-2.0) Attribution Assurance Licenses (AAL) BSD 3-Clause "New" or "Revised" License (BSD-3-Clause) Multics License (Multics) NASA Open Source Agreement 1.3 (NASA-1.3) NTP License (NTP) How can I use them in a free way? BSD 2-Clause "Simpliļ¬ed" or "FreeBSD" License (BSD-2-Clause) Naumen Public License (Naumen) Boost Software License (BSL-1.0) Nethack General Public License (NGPL) 69 Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1) Nokia Open Source License (Nokia) Common Development and Distribution License 1.0 (CDDL-1.0) Non-Proļ¬t Open Software License 3.0 (NPOSL-3.0) Common Public Attribution License 1.0 (CPAL-1.0) OCLC Research Public License 2.0 (OCLC-2.0) CUA Ofļ¬ce Public License Version 1.0 (CUA-OPL-1.0) Open Font License 1.1 (OFL-1.1) EU DataGrid Software License (EUDatagrid) Open Group Test Suite License (OGTSL) Eclipse Public License 1.0 (EPL-1.0) Open Software License 3.0 (OSL-3.0) Educational Community License, Version 2.0 (ECL-2.0) PHP License 3.0 (PHP-3.0) Eiffel Forum License V2.0 (EFL-2.0) The PostgreSQL License (PostgreSQL) Entessa Public License (Entessa) Python License (Python-2.0) (overall Python license) European Union Public License, Version 1.1 (EUPL-1.1) (links to every CNRI Python license (CNRI-Python) (CNRI portion of Python License) language's version on their site) Q Public License (QPL-1.0) Fair License (Fair) RealNetworks Public Source License V1.0 (RPSL-1.0) Frameworx License (Frameworx-1.0) Reciprocal Public License 1.5 (RPL-1.5) GNU Affero General Public License v3 (AGPL-3.0) Ricoh Source Code Public License (RSCPL) GNU General Public License version 2.0 (GPL-2.0) Simple Public License 2.0 (SimPL-2.0) GNU General Public License version 3.0 (GPL-3.0) Sleepycat License (Sleepycat) GNU Library or "Lesser" General Public License version 2.1 (LGPL-2.1) Sun Public License 1.0 (SPL-1.0) GNU Library or "Lesser" General Public License version 3.0 Sybase Open Watcom Public License 1.0 (Watcom-1.0) (LGPL-3.0) University of Illinois/NCSA Open Source License (NCSA) Historical Permission Notice and Disclaimer (HPND) Vovida Software License v. 1.0 (VSL-1.0) IBM Public License 1.0 (IPL-1.0) W3C License (W3C) IPA Font License (IPA) ISC License (ISC) Open Source Initiative wxWindows Library License (WXwindows) X.Net License (Xnet) LaTeX Project Public License 1.3c (LPPL-1.3c) Zope Public License 2.0 (ZPL-2.0) Lucent Public License Version 1.02 (LPL-1.02) zlib/libpng license (Zlib) @ankarajug #javaizmirde
  • 25. Must Read Books... @ankarajug #javaizmirde
  • 26. Must Read Books... @ankarajug #javaizmirde
  • 27. Must Read Books... @ankarajug #javaizmirde
  • 28. Must Read Books... @ankarajug #javaizmirde
  • 29. Must Read Books... @ankarajug #javaizmirde
  • 30. The Java Magazine... http://www.oracle.com/technetwork/java/ javamagazine/ bi-monthly since 2011..!!! For Free..!!! @ankarajug #javaizmirde
  • 31. Google Summer of Code For the love of code since 2005... around 6000 students meet 3000 mentors of OSS from over 100 countries... Mutual beneļ¬ts : you get ~5000$, you can use the stuff for summer internship and google gets the OSS support. http://bit.ly/GSOC2013 @ankarajug #javaizmirde
  • 32. Resume Preparation People skim resumes... So make it to the point as much as possible Itā€™s not what you know. Itā€™s what youā€™ve done with what you know... Keep it short 1 to 3 sentences, 1 to 3 pages at most @ankarajug #javaizmirde
  • 33. Where can I work on Java? X X X X XX X X X X X X X X XX Currently 18 technoparks located in Turkey... @ankarajug #javaizmirde
  • 34. Career in JAVA Participate in Open Source Be a Contributor / or better: be a Committer Learn the Language from inside out... Oracle Certiļ¬cations are one way to go... Java SE 7 Programmer Java EE6 Web Component Developer Java EE6 Enterprise JavaBeans Developer Java EE6 Java Persistence API Developer Java EE6 Web Services Developer Java EE 6 Enterprise Architect @ankarajug #javaizmirde
  • 35. Will it Compile??? int ā‚¬i = 1; YUP...! Literals can start with letter, connecting character like "_", and currency character. @ankarajug #javaizmirde
  • 36. Will it Compile??? int ā‚¬i = 1; YUP...! Literals can start with letter, connecting character like "_", and currency character. @ankarajug #javaizmirde
  • 37. Will it Compile??? float f this one's double by Nope..won't compile, = 320.0; default. @ankarajug #javaizmirde
  • 38. Will it Compile??? float f = 320.0; Nope..won't compile, this one's double by default. @ankarajug #javaizmirde
  • 39. Will it Compile??? char c = -80; Nope... you cannot assign int to char and char is between 0-65535, so you will get gibberish output. @ankarajug #javaizmirde
  • 40. Will it Compile??? char c = -80; Nope... you cannot assign int to char and char is between 0-65535, so you will get gibberish output. @ankarajug #javaizmirde
  • 41. public ļ¬nal class String implements java.io.Serializable, java.lang.Comparable<java.lang.String>, Can you extend String??? java.lang.CharSequence { .... .... } @ankarajug #javaizmirde
  • 42. Can you extend String??? public ļ¬nal class String implements java.io.Serializable, java.lang.Comparable<java.lang.String>, java.lang.CharSequence { .... .... } @ankarajug #javaizmirde
  • 43. For better career... Experience Communication Knowledge Professionalism Creativity @ankarajug #javaizmirde
  • 44. For better career... Know broad... Know deep... Experience Communication Knowledge Professionalism Creativity If you know Java then dive into the frameworks.. If you know all of them go through scripting languages... Know you stuff very well... @ankarajug #javaizmirde
  • 45. For better career... Stay Current... Use your knowledge... Experience Communication Knowledge Professionalism Creativity Practice... Practice... Practice... @ankarajug #javaizmirde
  • 46. For better career... Be Open-Minded... Experience Communication Knowledge Professionalism Creativity Listen to peopleā€™s thoughts.. Theyā€™re more valuable than you think.. You CANNOT know everything..! @ankarajug #javaizmirde
  • 47. For better career... Reject the status quo... Experience Communication Knowledge Professionalism Creativity Donā€™t be a rebellion but donā€™t kill the rebellion inside you... @ankarajug #javaizmirde
  • 48. For better career... Take and accept the responsibility... Experience Communication Knowledge Professionalism Creativity Make it all in a classy way... @ankarajug #javaizmirde
  • 49. To sum up on career... You are the one that will be building your OWN career. Work for your employer and work for yourself also... Take the time to build your skills: your knowledge, your communication skills, your experience. And donā€™t kill the child inside you, make it creative as always... Act Professional, because you have to be a ONE..! @ankarajug #javaizmirde
  • 50. To sum up... JAVA is still HOT TOPIC... Read Read Read... Participate...Be Active...Be a part of JAVA :) Oracle is investing on Java so best is yet to come. Take a leap, dive into Java, build your career on it. @ankarajug #javaizmirde
  • 51. JUST DO IT @ankarajug #javaizmirde
  • 52. E0F @ankarajug #javaizmirde @ankarajug #javaizmirde