the one to rule them (us) all - 2017.javacro.hr...the hobbit java adventure •i think i'm...

Post on 22-May-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

www.hujak.hr 1

The One to Rule Them (Us) Allwith

dr. sc. Branko Mihaljević & Aleksander Radovanby HUJAK (Hrvatska udruga Java korisnika)

The Hobbit Java Adventure

• I think I'm quite ready for another adventure! -Bilbo Baggins

• 1991 – Project Stealth

• Green Team brainstorming in Aspen

• James Gosling and Oak interpreter

• 1994 – first Java compiler in Java

• HotJava graphical browser

• 1995 – Oak renamed to Java

• Publicly announced at SunWorld'95www.hujak.hr 2

Java History Timeline by HUJAK

• The Java history began… ☺

• Our precious! – HUJAK founded in December 2011

• In the meantime HUJAK (co-)organized 15+ conferences

• 6x JavaCro, 4x Javantura, 3x Java Days @HrOUG, 2x WebCamp

www.hujak.hr 3

1995 1998 2001 2004 2007 2010 2013 2016 2019

Java SE 10

201920172014-3-18

Java EE 72013-6-12

HUJAK

2011-12-13

2011-7-28

Java EE 62009-12-10

Java SE 6Mustang

2006-12-11

Java EE 52006-5-11

Java 5J2SE 5.0

Tiger

2004-9-30

J2EE 1.42003-11-11

Java 1.4J2SE 1.4Merlin

2002-2-6

J2EE 1.32001-9-24

Java 1.3J2SE 1.3Kestrel

2000-5-8

J2EE 1.21999-12-12

Java 1.2J2SE 1.2

Playground

1998-12-8

JPE Java

Professional Edition

1998-5

Java 1.1JDK 1.1

1997-2-19

Java 1JDK 1.0

Oak

1996-1-23

Java JDK

Alpha /Beta

1995© 2017, HUJAK

2010-1-27

Java SE 9Java SE 7Dolphin

Java SE 8Spider

Java EE 82017/18

Java publicly announced1995-3-23

• Hmm, close… but…

• Have you ever heard about the Java Ring? ☺

One Ring to Rule Them All

www.hujak.hr 5

Original iButton

• iButton by Dallas Seminconductors (Maxim)

• Single-chip trusted microcomputer

• 1-million transistors

• Modular exponentiator for RSA

• 128 kB RAM

• Unalterable realtime clock

• Single electrical contact and ground return (1-Wire)

• Lithium-backed non-volatile static RAM

• Tamper resistance (rapid zeroization)

www.hujak.hr 6

Source: An introduction to the Java Ring, JavaWorld, April 1st 1998

Java-powered iButton

• In 1998 produced Java-powered iButton

• JVM housed in 16mm small and extremely rugged and secure stainless-steel case

• Fully compatible with Java Card 2.0 standard

• Could be attached to any accessory (i.e. key fob, wallet, watch, necklace, bracelet, or finger ring)

• And we've got (our precious)

Java Ring☺

www.hujak.hr 7

Source: An introduction to the Java Ring, JavaWorld, April 1st 1998

The Fellowship of the Java Ring

• Continued growth of Java

• For 22 years

• 10 Million Java Developers

• Many certified

• #1 Development Platform

• In the Cloud and with Microservices

• 15 Billion Devices run Java

• From Enterprise to IoT

www.hujak.hr 8

Popularity of Java language

• PYPL index (PopularitY of Programming Language)

• May 2017

www.hujak.hr 9

Source: PYPL PopularitY of Programming Language, pypl.github.io, May 2017, © Pierre Carbonnelle

Java at GitHub/Stack Overflow

www.hujak.hr 10

1. JavaScript2. Java3. Python4. PHP5. C#, C++7. CSS, Ruby9. C10. Objective-C

Source: The RedMonk Programming Language Rankings, RedMonk, January 2017, redmonk.com/sogrady/2017/03/17/language-rankings-1-17/

Java Survey @ JavaCro17

• We presented many surveys in the past

• But one question was always there…

What about Croatia?• And now… for the first time we have our own

Java survey ☺• 122 JavaCro attendees responded

www.hujak.hr 11

Survey – Experience

• Years of experience in software development?

• Gender?

www.hujak.hr 12

0-1y1,6%

1-2y17,2%

3-4y23,8%

5-9y25,4%

10-14y19,7%

15-19y5,7% 20+y

6,6%

0,8%

84,4%

14,8%

N/A

Man

Woman

Survey – Education Level

• What is your education level?

www.hujak.hr 13

High-school9,0%

Self-taught1,6%

BS17,2%

MS69,7%

PhD2,5%

13,1%

28,7%

18,9%

13,1%

11,5%

1,6%

2,5%

4,9%

5,7%

0% 5% 10% 15% 20% 25% 30% 35%

Junior Developer

Developer

Senior Developer

Software Architect

Team Leader

Software Consultant

Project Manager

C-Level Manager

Other

Survey – Job Position

Name (titleor best description)

of job position?

www.hujak.hr 14

Survey – About Company

• Company Size • Number of Developers

www.hujak.hr 15

Enterprise / large36,1%

Midsize41,8%

Small20,5%

Startup0,8%

Freeleancer0,8% 1-5

9,3%

6-1014,4%

11-2011,0%

21-5025,4%

51-1009,3%

100+30,5%

87,7%

35,2%

29,5%

75,4%

54,1%

14,8%

0% 20% 40% 60% 80% 100%

Web Apps

Desktop Apps

Mobile Apps

Backend

Frontend

Libraries

Application (Project) Types

Development Project Types

www.hujak.hr 16

The Two Towers (Platforms)

• Java SE – present and future

• Java EE – present and future

• Other Languages

• Web Frameworks

• Libraries

• App Servers

• JavaScript Frameworks

www.hujak.hr 17

Survey – Java SE versions

• Java SE platform versions you use in projects

www.hujak.hr 18

40,2%

72,1%

85,2%

0,8%

0% 20% 40% 60% 80% 100%

Java 6

Java 7

Java 8

Java 9

Survey – Java SE versions

• In Production • In Development

www.hujak.hr 19

Java 840,2%

Java 741,8%

Java 618,0%

Java 868,6%

Java 724,8%

Java 65,8%

Java 90,8%

Survey – Java 8 Interest

• Parts of Java 8 considered most interesting

www.hujak.hr 20

74,2%

61,7%

22,5%

35,0%

-10% 10% 30% 50% 70% 90%

Lambdas

Stream API

Optional return types

Date and Time API

Looking Forward to Java 9

www.hujak.hr 21

7,0%

20,0%

14,8%

33,9%

29,6%

27,8%

36,5%

69,6%

Better Javadoc support

Better logging

New JVM options

Better garbage collection

Better diagnostics

Developer convenience

Modularity

Better performance

Latest News

• Java SE 8u131 released April 18, 2017

• Next Critical Patch Update is in July 18, 2017

• JDK 9 – General Availability July 27, 2017

• Early Access Release Build 168

• IDE support

• Modularity in Java 9 (or not?)

• Concerns regarding Jigsaw – Red Hat, Maven, et al.

• Articles by Scott Stark, Mike Hearn, Gabriela Motroc…

• IBM and Red Hat voted "no" to Jigsaw

www.hujak.hr 22

Survey – Java EE

• Java EE platform versions you use in projects

www.hujak.hr 23

28,3%

10,0%

40,0%

50,0%

0% 20% 40% 60%

None

Java EE 5

Java EE 6

Java EE 7

Survey – Java EE versions

• In Production • In Development

www.hujak.hr 24

Java EE 7

41,7%

Java EE 6

29,2%

Java EE 51,7%

None25,8% Java

EE 742,9%

Java EE 6

27,7%

Java EE 51,7%

None26,1%

8,6%

13,3%

18,1%

21,0%

24,8%

26,7%

26,7%

43,8%

55,2%

0% 20% 40% 60%

Secret Management and Storage

Service Health and Check

Configuration API

Reactive Style

OAuth and OpenID

JSON-B and JSON-P

Eventing and Async Event Model

HTTP/2 and Servlet 4.0

REST and JAX-RS 2.1

Looking Forward to Java EE 8

www.hujak.hr 25

1,9%

2,9%

1,9%

5,8%

67,3%

11,5%

19,2%

13,5%

23,1%

2,9%

1,0%

5,8%

1,0%

0,0%

15,4%

8,7%

Objective-C

Swift

Ruby

Perl

JavaScript

PHP

C#

C++

Python

Jython

Xtend

Kotlin

Clojure

Ceylon

Groovy

Scala

Survey – Other Languages

www.hujak.hr 26

Actively using

other languages lately?

Popularity of JVM Languages

• JVM Language Ranking from StackOverkill

www.hujak.hr 27

Source: JVM Language Ranking, www.stackoverkill.com/ranking/jvm-langs, StackOverkill, May 2017

Survey – Web Frameworks

www.hujak.hr 28

1,8%

4,4%

0,0%

5,3%

3,5%

7,9%

12,3%

49,1%

24,6%

70,2%

Dropwizard

Grails

Wicket

Struts

Play framework

GWT

Vaadin

Spring Boot

JSF

Spring MVC

Web Frameworks

• Web Frameworks Index Top 10 by RebelLabs(ZeroTurnaround)

• Public data from StackOverflow, LinkedIn, GitHub, and Google search

www.hujak.hr 29

Survey – Libraries

• Libraries used commonly

www.hujak.hr 30

63,0%

75,6%

78,2%

63,9%

Spring libraries

Apache commons

Logging

Testing

Survey – App Servers

www.hujak.hr 31

0,8%

2,5%

9,9%

18,2%

33,1%

24,0%

13,2%

12,4%

75,2%

8,3%

0% 20% 40% 60% 80%

TomEE

Payara

Jetty

JBoss

WebSphere

WildFly

GlassFish

WebLogic

Tomcat

Going Serverless

Survey – JavaScript Frameworks

www.hujak.hr 32

0,9%

0,9%

13,4%

18,8%

58,9%

4,5%

23,2%

Backbone

Ember

React

Node.js

Angular

Our own

None

The Return of the Java King

• What about Tooling?

• IDEs

• Build tools

• CI

• Version Control

• Profilers

• APMs

• Virtualizations

• Containers

www.hujak.hr 33

Survey – IDEs

www.hujak.hr 34

2,5%

8,2%

7,4%

14,8%

54,1%

73,0%

0% 20% 40% 60% 80%

Other

STS

Sublime

NetBeans

IntelliJ IDEA

Eclipse

Survey – Build Tools

www.hujak.hr 35

4,3%

23,3%

25,2%

87,9%

Other

Ant

Gradle

Maven

Survey – Continuous Integration

www.hujak.hr 36

3,1%

2,0%

8,2%

3,1%

2,0%

3,1%

12,2%

79,6%

Other

TFS

RTC

TravisCI

Hudson

TeamCity

Bamboo

Jenkins

Survey – Version Control

www.hujak.hr 37

0,8%

1,7%

5,0%

11,6%

11,6%

20,7%

81,8%

Other

TFS

RTC

CVS

Mercurial

Subversion

Git

Survey – Profilers

www.hujak.hr 38

2,4%

4,9%

11,0%

17,1%

18,3%

23,2%

47,6%

Other

YourKit

NetBeans Profiler

XRebel

JProfiler

Java Mission Control

VisualVM

Survey – APMs

www.hujak.hr 39

6,0%

10,0%

10,0%

26,0%

34,0%

Stackify Retrace

TraceView (SolarWinds)

Dynatrace (Compuware)

AppDynamics

New Relic

Virtualization and Containers

www.hujak.hr 40

53,6%

4,8%

1,2%

11,9%

60,7%

VMWare

AWS ECS

Mesos

Kubernetes

Docker

Survey – Microservices

• Using microservices? – 32,5% Yes

• If yes, is using microservices making development easier?

• 47,9% Yes, 38% Same as before

• If no, do you intend to use microservices in the future?

• 58,3% Yes, 34% I don't know

www.hujak.hr 41

Survey – Agile

• Using agile methodologies? – 74,8% Yes

• If not, do you intend to? – 78,5% Yes

• If yes, what agile practices?

www.hujak.hr 42

24,0%

36,5%

62,5%

59,4%

10,4%

Well written specifications

Kanban board

Daily standups

Tasks with sprints

Certified agile

JavaCro'17 Survey – Conclusion

• Right now use Java 8 and Java EE 7• New features – wait for Java 9 and Java EE 8 • Try new languages – Scala or Groovy• "Safe" choices:

• Frameworks – Spring MVC & Spring Boot• App servers – Tomcat• IDEs – Eclipse or IDEA or (NetBeans)• Build tools – Maven or (Gradle)• CI – Jenkins• Version control – Git

• Try microservices

www.hujak.hr 43

Open Source & Volunteering

• Involved in open source? – 14,5% Yes, 22,2% intends to

• If yes, how many projects? – 62,1% only 1• Others from 2 to 6 projects, only one more than 10

• Sling, Samza, Kubernetes, Enmasse, PanBI, GWT, Material Design, SportChef, Moodini…

• Volunteering? – 10,1% Yes• If yes, where? – HUJAK, Agile Croatia, Openblend,

Programerko, JUG.ch, HackerGarten.net, OpenHeart, Biciklisti, ZAMAH…

www.hujak.hr 44

Where Else to Learn to Code

• Popular online learning resources:

• freeCodeCamp

• CodeAcademy

• Coursera

• Udemy

• KhanAcademy

• PluralSight

• EdX

• Udacity

• OdinProject

• CodeWars

• DevTips

• TreeHouse

• The New Boston

• Lynda.com

www.hujak.hr 45

Source: 2016 New Coder Survey, freeCodeCamp

IT/CS education in Croatia

• Where to study IT/CS in Croatia?• 15 cities: Čakovec, Dubrovnik, Krapina, Križevci, Osijek,

Pula, Rijeka, Sisak, Split, Šibenik, Varaždin, Velika Gorica, Zabok, Zagreb, Zaprešić

• 33 different institutions including• 6 public/state universities• 13 private colleges

• 80+ IT/CS/SE/CE programs• Undergraduate (3-4 years)• Graduate level (1-2 years)• Doctoral (PhD) level• Specialist level

www.hujak.hr 46

Java Conferences in Croatia

www.hujak.hr 47

Conference Location Date Sessions Tracks Attendees Countries

JavaCro'17 Rovinj 10.-12.5.2017. 50 5 280 15

Javantura v4 Zagreb 11.2.2017. 27 3 300 -

HrOUG 2016 Rovinj 18.-22.10.2016. 7 (od 96) 1 (od 9) 450 11

JavaCro'16 Rovinj 18.-20.5.2016. 56 5 260 15

Javantura v3 Zagreb 20.2.2016. 23 - 300 -

JavaCro'15 Rovinj 10.-12.5.2015. 46 5 200 11

Javantura v2 Zagreb 15.11.2014. 16 - 160 -

JavaCro'14 Poreč 11.-13.5.2014. 50 5 220 11

Javantura v1 Zagreb 22.2.2014. 12 - 150 -

WebCamp 2013 Zagreb 26.10.2013. 24 - 600 -

HrOUG 2013 Rovinj 15.-19.10.2013. 11 (od 90) 1 (od 7) 370 12

JavaCro'13 Tuhelj 3.-5.6.2013. 50 5 200 -

HrOUG 2012 Rovinj 16.-20.10.2012. 11 (od 114) 1 (od 7) 370 13

WebCamp 2012 Zagreb 24.11.2012. 24 - -

Java 2012 Tuhelj 29.-30.5.2012. 34 7 170 -

HrOUG 2011 Rovinj 18.-22.10.2011. 12 (od 96) 1 (od 9) 460 11

We (co-)organized 16 conferences !!! ☺

#Javantura #JavaCro #HrOUG #proud

170

200

150

220

160

220

300

260

300280

34

50

12

50

16

46

23

56

27

50

0

20

40

60

80

100

120

140

0

50

100

150

200

250

300

350

Sess

ion

s

Att

en

de

es

And we are growing ☺

www.hujak.hr 48

JavaCro and Javantura conferences

Conferences HUJAK supports

www.hujak.hr 49

45+ company members

www.hujak.hr 50

Partners & Friends

www.hujak.hr 51

Prizes and Giveaways

• Would you like to receive a prize for answering so many questions? :-) – only one No ☺

• Manning offered us 40% discount on all bookswww.manning.com use code: ctwjavacro17

• And now… prizes and giveaways!!!www.hujak.hr 52

Thank you & greetingsfrom HUJAK!

• Web page hujak.hr• www.hujak.hr

• LinkedIn group HUJAK• www.linkedin.com/groups?gid=4320174

• Facebook group page HUJAK.hr• www.facebook.com/HUJAK.hr

• Twitter profile @HUJAK_hr• twitter.com/HUJAK_hr

www.hujak.hr 53

top related