Comparing JVM Web Frameworks - February 2014

Matt Raible
Matt RaibleWeb Developer, Java Champion, and Developer Advocate at Okta
COMPARING JVM WEB FRAMEWORKS

Matt Raible
http://raibledesigns.com
@mraible

Photos by Trish McGinity

© 2014 Raible Designs
Who is Matt Raible?

Father, Skier, Cyclist

Web Framework Connoisseur
Founder of AppFuse
Bus Lover

Blogger on raibledesigns.com
© 2014 Raible Designs
Session Agenda
‣

History of JVM Web Frameworks

‣

The Paradox of Choice

‣

Methods and Metrics

‣

Conclusion

‣

Q and A

© 2014 Raible Designs

3
History of Web Frameworks

© 2014 Raible Designs

4
History of Web Frameworks

© 2014 Raible Designs

5
History of Web Frameworks

© 2014 Raible Designs

6
Comparing Web Frameworks

© 2014 Raible Designs

7
History of Web Frameworks

© 2014 Raible Designs

8
History of Web Frameworks

© 2014 Raible Designs

9
2007

© 2014 Raible Designs

10
History of Web Frameworks

© 2014 Raible Designs

11
© 2014 Raible Designs
Today

© 2014 Raible Designs

13
Too many web frameworks?

© 2014 Raible Designs

14
Remember SOFEA?

© 2014 Raible Designs
SOFEA became a Reality

© 2014 Raible Designs
SOFEA Performance Issues

© 2014 Raible Designs

17
traditional web frameworks are still relevant

© 2014 Raible Designs

18
The Paradox of Choice

© 2014 Raible Designs

19
Good Decisions Involve
1. Figure out your goal or goals
2. Evaluate the importance of each goal
3. Array the options
4. Evaluate how likely each of the options is to meet your goals
5. Pick the winning option
6. Modify goals

© 2014 Raible Designs

20
Maximizer vs. Satisficer
‣

maximizer - tries to make best possible choice

‣

satisficer - tries to find first suitable choice

(Photo: Tori Cat at Flickr)
© 2014 Raible Designs

21
How do you choose?

© 2014 Raible Designs

22
The Real Problem

© 2014 Raible Designs

23
The Real Problem

© 2014 Raible Designs

24
The Real Problem

© 2014 Raible Designs

25
© 2014 Raible Designs
How to Constrain Choices
‣

2006: Choose based on the type of app you’re developing

‣

2010: Choose based on 20 different criteria (the Matrix)

‣

2013: Narrowed it to 6

-

Community / Support

-

HTML5

-

REST

-

Mobile

-

Performance

-

Page Speed
© 2014 Raible Designs

27
Predetermined Constraints
‣

Language

‣

Platform

‣

Application Type

© 2014 Raible Designs

28
Choose the JVM

© 2014 Raible Designs

29
Get Fast Hardware

© 2014 Raible Designs

30
IntelliJ

© 2014 Raible Designs

31
Goals
‣

Pure Web Frameworks

‣

Full Stack Frameworks

‣

SOFEA Frameworks

-

API Frameworks

-

JavaScript MVC Frameworks

© 2014 Raible Designs

32
Full Stack Frameworks

© 2014 Raible Designs

33
API Frameworks

© 2014 Raible Designs

34
JavaScript MVC Frameworks

© 2014 Raible Designs

35
JavaScript MVC Frameworks

© 2014 Raible Designs

36
Pure JVM Web Frameworks
‣

Apache: Wicket, Struts, Sling, Tapestry, Click

‣

GWT: SmartGWT, GXT, Vaadin, Errai

‣

JSF: Mojarra (RI), MyFaces, Tomahawk, IceFaces, RichFaces,
PrimeFaces

‣

Spring MVC, Stripes, RIFE, ZK

http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks#Java

© 2014 Raible Designs

37
Frameworks I’ve Used
‣

Apache: Wicket, Struts, Sling, Tapestry, Click

‣

GWT: SmartGWT, GXT, Vaadin, Errai

‣

JSF: Mojarra, MyFaces, Tomahawk, IceFaces, RichFaces,
PrimeFaces

‣

Spring MVC, Stripes, RIFE, ZK

© 2014 Raible Designs

38
Comparison Matrix

http://bit.ly/jvm-frameworks-matrix
© 2014 Raible Designs

39
Matrix Results
18

17.5

17

17

17

13.5

15.5 15.5

15

14.5 14.5

14

14

13.5
11.5

9

4.5

© 2014 Raible Designs

Lift

Fle
x

F
JS

ipe
s
Str

y
Pla

2
uts
Str

et
Wi
ck

y
est
r
Tap

in
Va
ad

T
GW

ils
Ra

rin
g
Sp

Gr

ails

0

40
Matrix Results
‣

Grails (17.5)

‣

GWT (17)

‣

Ruby on Rails (17)

‣

Spring MVC (17)

‣

Vaadin and Tapestry (15.5)

‣

Wicket (15)

© 2014 Raible Designs

41
Weighted Matrix

© 2014 Raible Designs

42
Weighted Results
‣

Grails (90)

‣

Play (87.5)

‣

Spring MVC (85)

‣

Ruby on Rails (82.5)

‣

Vaadin (82.5)

‣

GWT (80)

© 2014 Raible Designs

43
David Pollack’s Lift Ratings
‣

Developer Productivity: Lift gets a 11, Rails gets a 5, most Javabased frameworks get a 1 or less.

‣

Developer Perception: Every web framework gets a 1. 

‣

Learning Curve: Lift gets a 2.

‣

Job Trends, yep, it's zero.
* Matt's scale is 0-1 and my ratings are on Matt's scale, except mine goes
to 11.
http://lift.la/my-take-on-matt-raibles-spreadsheet
© 2014 Raible Designs

44
Peter Thomas’s Perfbench
‣

Seam / JSF vs. Wicket Performance Comparison

-

January 2009: Seam 2.1.1 and Wicket 1.3.5

-

Average page response time in milliseconds

© 2014 Raible Designs

45
Peter Thomas’s Perfbench
‣

On the Seam / JSF side, the 20 sessions each take up about
800 KB adding up to around 16 MB total. On the Wicket side
the 20 sessions add up to around 1.5 MB.
!
!

‣

+ Lots of banter between Peter and Seam developers @
http://bit.ly/3X50Gc

© 2014 Raible Designs

46
Peter Thomas’s Perfbench
‣

Added Tapestry 5 and Grails in September 2009:

-

Grails was far more productive than Tapestry 5.

-

Grails still has some ways to go in terms of performance.

-

Overall, Wicket is fastest, with Tapestry coming a close second.

-

Wicket takes up the least amount of heap.

-

Session usage of the Seam + JSF combination is significantly higher
compared to the rest.

© 2014 Raible Designs

47
World Wide Wait - Devoxx

http://www.parleys.com/d/2942
© 2014 Raible Designs

48
World Wide Wait - Devoxx

© 2014 Raible Designs

49
World Wide Wait - Devoxx

© 2014 Raible Designs

50
World Wide Wait - Devoxx

© 2014 Raible Designs

51
World Wide Wait - Devoxx

© 2014 Raible Designs

52
InfoQ’s Top 20

© 2014 Raible Designs

53
devrates.com - by rating

© 2014 Raible Designs

54
devrates.com - popular

© 2014 Raible Designs

55
developer productivity report

© 2014 Raible Designs

56
web frameworks comparison
‣

Rapid Prototyping: Grails and Play

‣

Framework Complexity: Vaadin, GWT and Struts

‣

Ease of Use: Grails and Vaadin

‣

Documentation & Community: Grails and Vaadin

‣

Throughput/Scalability: Play

‣

UX, Look and Feel: Vaadin and GWT

‣

http://bit.ly/1eP5Jgq
© 2014 Raible Designs

57
decision makers guide
“If you are going to choose one framework to rule them all, then we
recommend Vaadin, Grails or Play as our top 3 choices, but if you
want to synergize (ooh, 90s buzz word!) the benefits of multiple
frameworks, then Spring plus nearly any other framework we
covered (especially GWT, which saw the greatest gains) will yield the
best results.” — http://bit.ly/1emanaA

© 2014 Raible Designs

58
ThoughtWorks Technology Radar 2014

© 2014 Raible Designs

59
ThoughtWorks on JSF
“We continue to see teams run into trouble using JSF -- JavaServer
Faces -- and are recommending you avoid this technology.”
“We think JSF is flawed because it tries to abstract away HTML,
CSS and HTTP, exactly the reverse of what modern web frameworks
do.”
“We are aware of the improvements in JSF 2.0, but think the model
is fundamentally broken.”
http://www.thoughtworks.com/radar/#/languages-and-frameworks/683
© 2014 Raible Designs

60
Top JVM Frameworks
‣

Raible Matrix: Grails, GWT, Rails, Spring MVC

-

Weighted: Grails, Play, Spring MVC, Rails, Vaadin

‣

Peter Thomas: Wicket

‣

InfoQ: Spring MVC, Play, Grails, JSF, Struts

‣

devrates.com:

‣

Grails, PrimeFaces, Vaadin, Tapestry, Rails

RebelLabs: Vaadin, Play, Grails, Spring MVC

© 2014 Raible Designs

61
Raible’s Recommendations
‣

Full Stack: Choose by language (Ruby, Groovy, Java, or Scala)

‣

Pure Web Framework: Spring MVC, Struts 2, Tapestry, Wicket, or
Vaadin

‣

JavaScript MVC: Angular JS, Ember, or Backbone

‣

API Framework: Dropwizard or Spring Boot

© 2014 Raible Designs

62
The Problem with GWT

© 2014 Raible Designs

63
Comparison Statistics
‣

Elimination Criteria

-

At least 1 release in 2013

-

At least 1 book on Amazon

-

At least 10 jobs on dice.com

-

At least 250 questions on Stack Overflow

© 2014 Raible Designs

64
Jobs on Dice.com
Full Stack Frameworks, February 2014
300

225

150

75

o
g

Ro

t
Lif

ay
Pl

JR

ub

yo

Sp
rin

n

Gr

Ra

ail

ils

s

0

© 2014 Raible Designs

65
Jobs on Dice.com
Pure Web Frameworks, February 2014
600

450

300

150

© 2014 Raible Designs

try
es
Ta
p

din
Va
a

es
ac
Pr
im
eF

ick
et
W

2
ts
ru
St

Sp
rin

g

M
VC

0

66
Jobs on Dice.com
JavaScript MVC Frameworks, February 2014
500

375

250

125

© 2014 Raible Designs

be
r
Em

lar
gu
An

Ba

ck

bo
n

e

0

67
Jobs on Dice.com
JavaScript MVC Frameworks, March 2013
300

225

150

75

© 2014 Raible Designs

be
r
Em

lar
gu
An

Ba

ck

bo
n

e

0

68
Jobs on Dice.com
JVM API Frameworks, February 2014
600

450

300

150

© 2014 Raible Designs

rd
za
Dr
op
wi

x
rt.
ve

sy
Ea
ST
RE

CX
F
he
Ap
ac

Je

rse

y

0

69
LinkedIn Skills
Full Stack Frameworks, February 2014
20,000

15,000

10,000

5,000

Ra

t

JR

ub

yo

n

Lif

ils

o
Ro
g
Sp
rin

ay
Pl

Gr

ail

s

0

© 2014 Raible Designs

70
LinkedIn Skills
Pure Web Frameworks, February 2014
22,000

16,500

11,000

5,500

© 2014 Raible Designs

try
es
Ta
p

din
Va
a

ick
et
W

2
ts
ru
St

es
ac
Pr
im
eF

Sp
rin

g

M
VC

0

71
LinkedIn Skills
JavaScript MVC Frameworks, February 2014
30,000

22,500

15,000

7,500

© 2014 Raible Designs

be
r
Em

lar
gu
An

Ba

ck

bo
n

e

0

72
LinkedIn Skills
JVM API Frameworks, February 2014
50,000

37,500

25,000

12,500

© 2014 Raible Designs

x
rt.
ve

rd
za
Dr
op
wi

sy
Ea
ST
RE

CX
F
he
Ap
ac

Je

rse

y

0

73
Google Trends

© 2014 Raible Designs

74
Google Trends

© 2014 Raible Designs

75
Google Trends

© 2014 Raible Designs

76
Google Trends

© 2014 Raible Designs

77
Indeed Job Trends

© 2014 Raible Designs

78
Indeed Job Trends

© 2014 Raible Designs

79
Indeed Job Trends

© 2014 Raible Designs

80
Indeed Job Trends

© 2014 Raible Designs

81
Mailing List Traffic
January 2014

1152

AngularJS

794

Play

706

Grails

590
549

Jersey
Wicket

361
336

Lift
Apache CXF

238

Tapestry

135
Struts
107
Backbone.js 42
Dropwizard

0

300

600

900

1200

* Frameworks not listed here use Forums, which don’t provide this data.
© 2014 Raible Designs

82
StackOverflow
Tagged Questions (February 3, 2014)

16,000

12,000

8,000

4,000

0

Grails

Play

Lift
© 2014 Raible Designs

Spring Roo

JRuby on Rails
83
StackOverflow
Tagged Questions (February 3, 2014)

16,000

12,000

8,000

4,000

0

Spring MVC PrimeFaces

Struts 2
© 2014 Raible Designs

Wicket

Vaadin

Tapestry
84
StackOverflow
Tagged Questions (February 3, 2014)

24,000

18,000

12,000

6,000

0

Backbone.js

Angular JS
© 2014 Raible Designs

Ember.js
85
StackOverflow
Tagged Questions (February 3, 2014)

4,000

3,000

2,000

1,000

0

Jersey

Apache CXF

RESTEasy
© 2014 Raible Designs

Dropwizard

Spring Boot

vert.x
86
Java Developers
“Java remains – in spite of the fragmented programming
language landscape – a viable, growing language.”

http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/
© 2014 Raible Designs

87
Modern Principles

© 2014 Raible Designs

88
The Modern JVM Web Developer
‣

Starts with Fast Hardware

‣

Uses IntelliJ IDEA

‣

Leverages JavaScript, HTML5, and CSS3

‣

Creates High Performance Web Sites

‣

For Mobile Devices

‣

In the Cloud

‣

And cares about Security
© 2014 Raible Designs

89
Developer Productivity

http://zeroturnaround.com/blog/
developer-productivity-report-part-1-developer-timesheet/

© 2014 Raible Designs

90
Developer Productivity

http://zeroturnaround.com/blog/
developer-productivity-report-part-3-developer-efficiency/

© 2014 Raible Designs

91
There is no “best” framework

Just lots of awesome choices...
© 2014 Raible Designs

92
Don’t listen to me!

© 2014 Raible Designs

93
Choose your own!
‣

Prioritize a list of goals that are important to your application.

‣

Pick 3-4 frameworks and do a spike with each, developing the
same application.

‣

Document and rank each framework against your list of goals.

‣

Calculate and choose!

‣

Don’t be a Picker.

© 2014 Raible Designs

94
Questions?
Contact Me!

http://raibledesigns.com

@mraible


Presentations

http://slideshare.net/mraible


Code

http://github.com/mraible
© 2014 Raible Designs
1 of 95

Recommended

Functor, Apply, Applicative And Monad by
Functor, Apply, Applicative And MonadFunctor, Apply, Applicative And Monad
Functor, Apply, Applicative And MonadOliver Daff
2.5K views126 slides
Ad hoc Polymorphism using Type Classes and Cats by
Ad hoc Polymorphism using Type Classes and CatsAd hoc Polymorphism using Type Classes and Cats
Ad hoc Polymorphism using Type Classes and CatsPhilip Schwarz
1.5K views54 slides
Blazing Fast, Pure Effects without Monads — LambdaConf 2018 by
Blazing Fast, Pure Effects without Monads — LambdaConf 2018Blazing Fast, Pure Effects without Monads — LambdaConf 2018
Blazing Fast, Pure Effects without Monads — LambdaConf 2018John De Goes
4.6K views68 slides
The Functional Programming Triad of Map, Filter and Fold by
The Functional Programming Triad of Map, Filter and FoldThe Functional Programming Triad of Map, Filter and Fold
The Functional Programming Triad of Map, Filter and FoldPhilip Schwarz
3.5K views51 slides
Modern query optimisation features in MySQL 8. by
Modern query optimisation features in MySQL 8.Modern query optimisation features in MySQL 8.
Modern query optimisation features in MySQL 8.Mydbops
288 views46 slides
Railway Oriented Programming by
Railway Oriented ProgrammingRailway Oriented Programming
Railway Oriented ProgrammingScott Wlaschin
638.7K views154 slides

More Related Content

What's hot

ZIO Queue by
ZIO QueueZIO Queue
ZIO QueueJohn De Goes
3.1K views60 slides
Capabilities for Resources and Effects by
Capabilities for Resources and EffectsCapabilities for Resources and Effects
Capabilities for Resources and EffectsMartin Odersky
5.5K views29 slides
Percona toolkit by
Percona toolkitPercona toolkit
Percona toolkitKarwin Software Solutions LLC
17.9K views84 slides
Bca ii dfs u-2 linklist,stack,queue by
Bca ii  dfs u-2 linklist,stack,queueBca ii  dfs u-2 linklist,stack,queue
Bca ii dfs u-2 linklist,stack,queueRai University
795 views39 slides
[131]해커의 관점에서 바라보기 by
[131]해커의 관점에서 바라보기[131]해커의 관점에서 바라보기
[131]해커의 관점에서 바라보기NAVER D2
12.2K views101 slides
Real-time Stream Processing with Apache Flink by
Real-time Stream Processing with Apache FlinkReal-time Stream Processing with Apache Flink
Real-time Stream Processing with Apache FlinkDataWorks Summit
6.1K views25 slides

What's hot(20)

Capabilities for Resources and Effects by Martin Odersky
Capabilities for Resources and EffectsCapabilities for Resources and Effects
Capabilities for Resources and Effects
Martin Odersky5.5K views
Bca ii dfs u-2 linklist,stack,queue by Rai University
Bca ii  dfs u-2 linklist,stack,queueBca ii  dfs u-2 linklist,stack,queue
Bca ii dfs u-2 linklist,stack,queue
Rai University795 views
[131]해커의 관점에서 바라보기 by NAVER D2
[131]해커의 관점에서 바라보기[131]해커의 관점에서 바라보기
[131]해커의 관점에서 바라보기
NAVER D212.2K views
Real-time Stream Processing with Apache Flink by DataWorks Summit
Real-time Stream Processing with Apache FlinkReal-time Stream Processing with Apache Flink
Real-time Stream Processing with Apache Flink
DataWorks Summit6.1K views
RxJS - The Basics & The Future by Tracy Lee
RxJS - The Basics & The FutureRxJS - The Basics & The Future
RxJS - The Basics & The Future
Tracy Lee1.4K views
VLDB 2009 Tutorial on Column-Stores by Daniel Abadi
VLDB 2009 Tutorial on Column-StoresVLDB 2009 Tutorial on Column-Stores
VLDB 2009 Tutorial on Column-Stores
Daniel Abadi21.4K views
Migration to ClickHouse. Practical guide, by Alexander Zaitsev by Altinity Ltd
Migration to ClickHouse. Practical guide, by Alexander ZaitsevMigration to ClickHouse. Practical guide, by Alexander Zaitsev
Migration to ClickHouse. Practical guide, by Alexander Zaitsev
Altinity Ltd9.4K views
Building RESTful applications using Spring MVC by IndicThreads
Building RESTful applications using Spring MVCBuilding RESTful applications using Spring MVC
Building RESTful applications using Spring MVC
IndicThreads9.6K views
From Query Plan to Query Performance: Supercharging your Apache Spark Queries... by Databricks
From Query Plan to Query Performance: Supercharging your Apache Spark Queries...From Query Plan to Query Performance: Supercharging your Apache Spark Queries...
From Query Plan to Query Performance: Supercharging your Apache Spark Queries...
Databricks684 views
Securing Your Atlassian Connect Add-on With JWT by Atlassian
Securing Your Atlassian Connect Add-on With JWTSecuring Your Atlassian Connect Add-on With JWT
Securing Your Atlassian Connect Add-on With JWT
Atlassian11.4K views
Spring - Part 1 - IoC, Di and Beans by Hitesh-Java
Spring - Part 1 - IoC, Di and Beans Spring - Part 1 - IoC, Di and Beans
Spring - Part 1 - IoC, Di and Beans
Hitesh-Java1.3K views

Viewers also liked

Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket by
Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and WicketComparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket
Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and WicketMatt Raible
39.8K views48 slides
Comparison of Java Web Application Frameworks by
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksAngelin R
5.5K views18 slides
The Modern Java Web Developer Bootcamp - Devoxx 2013 by
The Modern Java Web Developer Bootcamp - Devoxx 2013The Modern Java Web Developer Bootcamp - Devoxx 2013
The Modern Java Web Developer Bootcamp - Devoxx 2013Matt Raible
28.3K views127 slides
Comparing JVM Web Frameworks - Devoxx France 2013 by
Comparing JVM Web Frameworks - Devoxx France 2013Comparing JVM Web Frameworks - Devoxx France 2013
Comparing JVM Web Frameworks - Devoxx France 2013Matt Raible
122.1K views90 slides
Get Hip with JHipster - Denver JUG 2015 by
Get Hip with JHipster - Denver JUG 2015Get Hip with JHipster - Denver JUG 2015
Get Hip with JHipster - Denver JUG 2015Matt Raible
26.6K views35 slides
The Modern Java Web Developer - JavaOne 2013 by
The Modern Java Web Developer - JavaOne 2013The Modern Java Web Developer - JavaOne 2013
The Modern Java Web Developer - JavaOne 2013Matt Raible
39K views81 slides

Viewers also liked(20)

Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket by Matt Raible
Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and WicketComparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket
Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket
Matt Raible39.8K views
Comparison of Java Web Application Frameworks by Angelin R
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application Frameworks
Angelin R5.5K views
The Modern Java Web Developer Bootcamp - Devoxx 2013 by Matt Raible
The Modern Java Web Developer Bootcamp - Devoxx 2013The Modern Java Web Developer Bootcamp - Devoxx 2013
The Modern Java Web Developer Bootcamp - Devoxx 2013
Matt Raible28.3K views
Comparing JVM Web Frameworks - Devoxx France 2013 by Matt Raible
Comparing JVM Web Frameworks - Devoxx France 2013Comparing JVM Web Frameworks - Devoxx France 2013
Comparing JVM Web Frameworks - Devoxx France 2013
Matt Raible122.1K views
Get Hip with JHipster - Denver JUG 2015 by Matt Raible
Get Hip with JHipster - Denver JUG 2015Get Hip with JHipster - Denver JUG 2015
Get Hip with JHipster - Denver JUG 2015
Matt Raible26.6K views
The Modern Java Web Developer - JavaOne 2013 by Matt Raible
The Modern Java Web Developer - JavaOne 2013The Modern Java Web Developer - JavaOne 2013
The Modern Java Web Developer - JavaOne 2013
Matt Raible39K views
Java Web Application Security - Denver JUG 2013 by Matt Raible
Java Web Application Security - Denver JUG 2013Java Web Application Security - Denver JUG 2013
Java Web Application Security - Denver JUG 2013
Matt Raible23.8K views
The Modern Java Web Developer - Denver JUG 2013 by Matt Raible
The Modern Java Web Developer - Denver JUG 2013The Modern Java Web Developer - Denver JUG 2013
The Modern Java Web Developer - Denver JUG 2013
Matt Raible160.7K views
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin... by Matt Raible
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Matt Raible68.4K views
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx UK 2016 by Matt Raible
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx UK 2016Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx UK 2016
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx UK 2016
Matt Raible3.7K views
#NoXML: Eliminating XML in Spring Projects - SpringOne 2GX 2015 by Matt Raible
#NoXML: Eliminating XML in Spring Projects - SpringOne 2GX 2015#NoXML: Eliminating XML in Spring Projects - SpringOne 2GX 2015
#NoXML: Eliminating XML in Spring Projects - SpringOne 2GX 2015
Matt Raible37.4K views
Building a Scalable Architecture for web apps by Directi Group
Building a Scalable Architecture for web appsBuilding a Scalable Architecture for web apps
Building a Scalable Architecture for web apps
Directi Group37.2K views
facebook architecture for 600M users by Jongyoon Choi
facebook architecture for 600M usersfacebook architecture for 600M users
facebook architecture for 600M users
Jongyoon Choi72K views
Introduction to Hardware with littleBits by Tack Mobile
Introduction to Hardware with littleBitsIntroduction to Hardware with littleBits
Introduction to Hardware with littleBits
Tack Mobile34K views
The Art of AngularJS in 2015 - Angular Summit 2015 by Matt Raible
The Art of AngularJS in 2015 - Angular Summit 2015The Art of AngularJS in 2015 - Angular Summit 2015
The Art of AngularJS in 2015 - Angular Summit 2015
Matt Raible37.3K views
The Art of Angular in 2016 - Devoxx UK 2016 by Matt Raible
The Art of Angular in 2016 - Devoxx UK 2016The Art of Angular in 2016 - Devoxx UK 2016
The Art of Angular in 2016 - Devoxx UK 2016
Matt Raible2.9K views
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015 by Matt Raible
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015
Matt Raible38.7K views
Developing, Testing and Scaling with Apache Camel - UberConf 2015 by Matt Raible
Developing, Testing and Scaling with Apache Camel - UberConf 2015Developing, Testing and Scaling with Apache Camel - UberConf 2015
Developing, Testing and Scaling with Apache Camel - UberConf 2015
Matt Raible26K views
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx France 2016 by Matt Raible
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx France 2016Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx France 2016
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx France 2016
Matt Raible5.5K views

Similar to Comparing JVM Web Frameworks - February 2014

Comparing JVM Web Frameworks - TSSJS 2011 by
Comparing JVM Web Frameworks - TSSJS 2011Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011Matt Raible
4.9K views66 slides
Comparing JVM Web Frameworks - Rich Web Experience 2010 by
Comparing JVM Web Frameworks - Rich Web Experience 2010Comparing JVM Web Frameworks - Rich Web Experience 2010
Comparing JVM Web Frameworks - Rich Web Experience 2010Matt Raible
1.8K views68 slides
Comparing JVM Web Frameworks - 33rd Degree by
Comparing JVM Web Frameworks - 33rd DegreeComparing JVM Web Frameworks - 33rd Degree
Comparing JVM Web Frameworks - 33rd DegreeMatt Raible
2.7K views69 slides
ACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on rails by
ACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on railsACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on rails
ACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on railsPadma shree. T
116 views3 slides
Quick introduction to Qwik by
Quick introduction to QwikQuick introduction to Qwik
Quick introduction to QwikJuho Vepsäläinen
164 views42 slides
Web Development In 2018 by
Web Development In 2018Web Development In 2018
Web Development In 2018Traversy Media
2.5K views21 slides

Similar to Comparing JVM Web Frameworks - February 2014(20)

Comparing JVM Web Frameworks - TSSJS 2011 by Matt Raible
Comparing JVM Web Frameworks - TSSJS 2011Comparing JVM Web Frameworks - TSSJS 2011
Comparing JVM Web Frameworks - TSSJS 2011
Matt Raible4.9K views
Comparing JVM Web Frameworks - Rich Web Experience 2010 by Matt Raible
Comparing JVM Web Frameworks - Rich Web Experience 2010Comparing JVM Web Frameworks - Rich Web Experience 2010
Comparing JVM Web Frameworks - Rich Web Experience 2010
Matt Raible1.8K views
Comparing JVM Web Frameworks - 33rd Degree by Matt Raible
Comparing JVM Web Frameworks - 33rd DegreeComparing JVM Web Frameworks - 33rd Degree
Comparing JVM Web Frameworks - 33rd Degree
Matt Raible2.7K views
ACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on rails by Padma shree. T
ACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on railsACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on rails
ACADGILD:: FRONTEND LESSON -Ruby on rails vs groovy on rails
Padma shree. T116 views
Ruby On Rails by Eric Berry
Ruby On RailsRuby On Rails
Ruby On Rails
Eric Berry3.6K views
Practical WebAssembly with Apex, wasmRS, and nanobus by Jarrod Overson
Practical WebAssembly with Apex, wasmRS, and nanobusPractical WebAssembly with Apex, wasmRS, and nanobus
Practical WebAssembly with Apex, wasmRS, and nanobus
Jarrod Overson55 views
Choosing a JVM Web Framework by Matt Raible
Choosing a JVM Web FrameworkChoosing a JVM Web Framework
Choosing a JVM Web Framework
Matt Raible1.5K views
Build fast word press site in react in 30 mins with frontity by Imran Sayed
Build fast word press site in react in 30 mins   with frontityBuild fast word press site in react in 30 mins   with frontity
Build fast word press site in react in 30 mins with frontity
Imran Sayed104 views
Ruby on Rails Vs. ASP.NET MVC by Shay Friedman
Ruby on Rails Vs. ASP.NET MVCRuby on Rails Vs. ASP.NET MVC
Ruby on Rails Vs. ASP.NET MVC
Shay Friedman4.6K views
Ruby on Rails : First Mile by Gourab Mitra
Ruby on Rails : First MileRuby on Rails : First Mile
Ruby on Rails : First Mile
Gourab Mitra982 views
Drupal 8 and 9, Backwards Compatibility, and Drupal 8.5 update by Angela Byron
Drupal 8 and 9, Backwards Compatibility, and Drupal 8.5 updateDrupal 8 and 9, Backwards Compatibility, and Drupal 8.5 update
Drupal 8 and 9, Backwards Compatibility, and Drupal 8.5 update
Angela Byron469 views
JavaOne 2014: Java vs JavaScript by Chris Bailey
JavaOne 2014:   Java vs JavaScriptJavaOne 2014:   Java vs JavaScript
JavaOne 2014: Java vs JavaScript
Chris Bailey5.3K views
A Tour of Ruby On Rails by David Keener
A Tour of Ruby On RailsA Tour of Ruby On Rails
A Tour of Ruby On Rails
David Keener941 views
Ruby On Rails Seminar Basis Softexpo Feb2010 by arif44
Ruby On Rails Seminar Basis Softexpo Feb2010Ruby On Rails Seminar Basis Softexpo Feb2010
Ruby On Rails Seminar Basis Softexpo Feb2010
arif442.3K views
Node PDX: Intro to Sails.js by Mike McNeil
Node PDX: Intro to Sails.jsNode PDX: Intro to Sails.js
Node PDX: Intro to Sails.js
Mike McNeil6.9K views

More from Matt Raible

Micro Frontends for Java Microservices - Belfast JUG 2022 by
Micro Frontends for Java Microservices - Belfast JUG 2022Micro Frontends for Java Microservices - Belfast JUG 2022
Micro Frontends for Java Microservices - Belfast JUG 2022Matt Raible
26 views57 slides
Micro Frontends for Java Microservices - Dublin JUG 2022 by
Micro Frontends for Java Microservices - Dublin JUG 2022Micro Frontends for Java Microservices - Dublin JUG 2022
Micro Frontends for Java Microservices - Dublin JUG 2022Matt Raible
18 views56 slides
Micro Frontends for Java Microservices - Cork JUG 2022 by
Micro Frontends for Java Microservices - Cork JUG 2022Micro Frontends for Java Microservices - Cork JUG 2022
Micro Frontends for Java Microservices - Cork JUG 2022Matt Raible
7 views56 slides
Comparing Native Java REST API Frameworks - Seattle JUG 2022 by
Comparing Native Java REST API Frameworks - Seattle JUG 2022Comparing Native Java REST API Frameworks - Seattle JUG 2022
Comparing Native Java REST API Frameworks - Seattle JUG 2022Matt Raible
48 views87 slides
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022 by
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022Matt Raible
105 views42 slides
Comparing Native Java REST API Frameworks - Devoxx France 2022 by
Comparing Native Java REST API Frameworks - Devoxx France 2022Comparing Native Java REST API Frameworks - Devoxx France 2022
Comparing Native Java REST API Frameworks - Devoxx France 2022Matt Raible
129 views86 slides

More from Matt Raible(20)

Micro Frontends for Java Microservices - Belfast JUG 2022 by Matt Raible
Micro Frontends for Java Microservices - Belfast JUG 2022Micro Frontends for Java Microservices - Belfast JUG 2022
Micro Frontends for Java Microservices - Belfast JUG 2022
Matt Raible26 views
Micro Frontends for Java Microservices - Dublin JUG 2022 by Matt Raible
Micro Frontends for Java Microservices - Dublin JUG 2022Micro Frontends for Java Microservices - Dublin JUG 2022
Micro Frontends for Java Microservices - Dublin JUG 2022
Matt Raible18 views
Micro Frontends for Java Microservices - Cork JUG 2022 by Matt Raible
Micro Frontends for Java Microservices - Cork JUG 2022Micro Frontends for Java Microservices - Cork JUG 2022
Micro Frontends for Java Microservices - Cork JUG 2022
Matt Raible7 views
Comparing Native Java REST API Frameworks - Seattle JUG 2022 by Matt Raible
Comparing Native Java REST API Frameworks - Seattle JUG 2022Comparing Native Java REST API Frameworks - Seattle JUG 2022
Comparing Native Java REST API Frameworks - Seattle JUG 2022
Matt Raible48 views
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022 by Matt Raible
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022
Matt Raible105 views
Comparing Native Java REST API Frameworks - Devoxx France 2022 by Matt Raible
Comparing Native Java REST API Frameworks - Devoxx France 2022Comparing Native Java REST API Frameworks - Devoxx France 2022
Comparing Native Java REST API Frameworks - Devoxx France 2022
Matt Raible129 views
Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne... by Matt Raible
Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne...Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne...
Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne...
Matt Raible98 views
Java REST API Framework Comparison - PWX 2021 by Matt Raible
Java REST API Framework Comparison - PWX 2021Java REST API Framework Comparison - PWX 2021
Java REST API Framework Comparison - PWX 2021
Matt Raible148 views
Web App Security for Java Developers - PWX 2021 by Matt Raible
Web App Security for Java Developers - PWX 2021Web App Security for Java Developers - PWX 2021
Web App Security for Java Developers - PWX 2021
Matt Raible134 views
Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ... by Matt Raible
Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ...Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ...
Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ...
Matt Raible186 views
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker... by Matt Raible
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker...Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker...
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker...
Matt Raible140 views
Web App Security for Java Developers - UberConf 2021 by Matt Raible
Web App Security for Java Developers - UberConf 2021Web App Security for Java Developers - UberConf 2021
Web App Security for Java Developers - UberConf 2021
Matt Raible152 views
Java REST API Framework Comparison - UberConf 2021 by Matt Raible
Java REST API Framework Comparison - UberConf 2021Java REST API Framework Comparison - UberConf 2021
Java REST API Framework Comparison - UberConf 2021
Matt Raible150 views
Native Java with Spring Boot and JHipster - SF JUG 2021 by Matt Raible
Native Java with Spring Boot and JHipster - SF JUG 2021Native Java with Spring Boot and JHipster - SF JUG 2021
Native Java with Spring Boot and JHipster - SF JUG 2021
Matt Raible69 views
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin... by Matt Raible
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...
Matt Raible182 views
Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021 by Matt Raible
Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021
Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021
Matt Raible182 views
Get Hip with JHipster - Colorado Springs Open Source User Group 2021 by Matt Raible
Get Hip with JHipster - Colorado Springs Open Source User Group 2021Get Hip with JHipster - Colorado Springs Open Source User Group 2021
Get Hip with JHipster - Colorado Springs Open Source User Group 2021
Matt Raible149 views
JHipster and Okta - JHipster Virtual Meetup December 2020 by Matt Raible
JHipster and Okta - JHipster Virtual Meetup December 2020JHipster and Okta - JHipster Virtual Meetup December 2020
JHipster and Okta - JHipster Virtual Meetup December 2020
Matt Raible225 views
Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020 by Matt Raible
Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020
Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020
Matt Raible433 views
Security Patterns for Microservice Architectures - SpringOne 2020 by Matt Raible
Security Patterns for Microservice Architectures - SpringOne 2020Security Patterns for Microservice Architectures - SpringOne 2020
Security Patterns for Microservice Architectures - SpringOne 2020
Matt Raible329 views

Recently uploaded

Samsung: CMM-H Tiered Memory Solution with Built-in DRAM by
Samsung: CMM-H Tiered Memory Solution with Built-in DRAMSamsung: CMM-H Tiered Memory Solution with Built-in DRAM
Samsung: CMM-H Tiered Memory Solution with Built-in DRAMCXL Forum
105 views7 slides
Tunable Laser (1).pptx by
Tunable Laser (1).pptxTunable Laser (1).pptx
Tunable Laser (1).pptxHajira Mahmood
21 views37 slides
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa... by
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...The Digital Insurer
28 views18 slides
Java Platform Approach 1.0 - Picnic Meetup by
Java Platform Approach 1.0 - Picnic MeetupJava Platform Approach 1.0 - Picnic Meetup
Java Platform Approach 1.0 - Picnic MeetupRick Ossendrijver
25 views39 slides
The details of description: Techniques, tips, and tangents on alternative tex... by
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...BookNet Canada
110 views24 slides
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...Vadym Kazulkin
70 views64 slides

Recently uploaded(20)

Samsung: CMM-H Tiered Memory Solution with Built-in DRAM by CXL Forum
Samsung: CMM-H Tiered Memory Solution with Built-in DRAMSamsung: CMM-H Tiered Memory Solution with Built-in DRAM
Samsung: CMM-H Tiered Memory Solution with Built-in DRAM
CXL Forum105 views
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa... by The Digital Insurer
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
Webinar : Competing for tomorrow’s leaders – How MENA insurers can win the wa...
The details of description: Techniques, tips, and tangents on alternative tex... by BookNet Canada
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...
BookNet Canada110 views
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by Vadym Kazulkin
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
Vadym Kazulkin70 views
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum... by NUS-ISS
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
NUS-ISS28 views
The Importance of Cybersecurity for Digital Transformation by NUS-ISS
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital Transformation
NUS-ISS25 views
AMD: 4th Generation EPYC CXL Demo by CXL Forum
AMD: 4th Generation EPYC CXL DemoAMD: 4th Generation EPYC CXL Demo
AMD: 4th Generation EPYC CXL Demo
CXL Forum126 views
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ... by Fwdays
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ..."Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
Fwdays33 views
Spesifikasi Lengkap ASUS Vivobook Go 14 by Dot Semarang
Spesifikasi Lengkap ASUS Vivobook Go 14Spesifikasi Lengkap ASUS Vivobook Go 14
Spesifikasi Lengkap ASUS Vivobook Go 14
Dot Semarang35 views
JCon Live 2023 - Lice coding some integration problems by Bernd Ruecker
JCon Live 2023 - Lice coding some integration problemsJCon Live 2023 - Lice coding some integration problems
JCon Live 2023 - Lice coding some integration problems
Bernd Ruecker67 views
Empathic Computing: Delivering the Potential of the Metaverse by Mark Billinghurst
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the Metaverse
Mark Billinghurst449 views
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy by Fwdays
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
Fwdays40 views
MemVerge: Past Present and Future of CXL by CXL Forum
MemVerge: Past Present and Future of CXLMemVerge: Past Present and Future of CXL
MemVerge: Past Present and Future of CXL
CXL Forum110 views
"Ukrainian Mobile Banking Scaling in Practice. From 0 to 100 and beyond", Vad... by Fwdays
"Ukrainian Mobile Banking Scaling in Practice. From 0 to 100 and beyond", Vad..."Ukrainian Mobile Banking Scaling in Practice. From 0 to 100 and beyond", Vad...
"Ukrainian Mobile Banking Scaling in Practice. From 0 to 100 and beyond", Vad...
Fwdays40 views
Photowave Presentation Slides - 11.8.23.pptx by CXL Forum
Photowave Presentation Slides - 11.8.23.pptxPhotowave Presentation Slides - 11.8.23.pptx
Photowave Presentation Slides - 11.8.23.pptx
CXL Forum126 views
TE Connectivity: Card Edge Interconnects by CXL Forum
TE Connectivity: Card Edge InterconnectsTE Connectivity: Card Edge Interconnects
TE Connectivity: Card Edge Interconnects
CXL Forum96 views

Comparing JVM Web Frameworks - February 2014