And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr...

60

Transcript of And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr...

Page 1: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement
Page 2: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

And his internal

“Voice of Reason”

Page 3: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Reconciliation by Scot A Harvest

Modern Software Development Anti-Patterns

PRESENTS

Page 4: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Help Java out!Adopt OpenJDK - @adoptopenjdk

Adopt a JSR - @adoptajsr

Come to London!DevoxxUK - @DevoxxUK

Public Service Announcement

Page 5: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Deadline-DrivenDelivery

Page 6: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Vaadin 7?

Page 7: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Real pros hack codeand write their slides

minutes before deadlines

7

Page 8: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

PPPPPP

The Voice of Reason

Page 9: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Little 'a' Agile

Page 10: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Mortgage-Driven Development

Page 11: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

In these tough economic times..

11

Page 12: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

12

Page 13: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Don't succumb to fear

The Voice of Reason

Page 14: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Developers who communicate,have the most success

Page 15: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Distracted By Shiny

Page 16: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement
Page 17: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Always use the latest tech, it'll put you ahead

17

Page 18: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Prototype and evaluate

The Voice of Reason

Page 19: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Brown Bag sessions

Page 20: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Design Driven Design

Page 21: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement
Page 22: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

UML Code Generatorsare awesome

22

Page 23: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Design for what you need now

The Voice of Reason

Page 24: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Incentivise less source code

Page 25: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Pokemon Patterns

Page 26: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement
Page 27: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Use *all* of the GoF design patterns

27

Page 28: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

The appropriate design pattern is your friend

The Voice of Reason

Page 29: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

whiteboard, whiteboard,whiteboard

Page 30: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Tuning by Folklore

Page 31: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

31

Page 32: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Measure, don't guess.

The Voice of Reason

Page 33: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

<Shameless Plug>www.jclarity.com/friends

Page 34: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

The Deity

Page 35: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

All the code in one file..easier to search

35

Page 36: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Discrete components based onSOLID principles

The Voice of Reason

Page 37: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Read the code boozed at 3AMIf you grok it... #win

Page 38: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Lean Startup Ninja

Page 39: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Compiles? == Ship it!

39

Page 40: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Continuous Delivery is a business enabler

The Voice of Reason

Page 41: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Ant/Gradle/Maven + JenkinsPuppet/Chef + Vagrant

Page 42: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

CV++

Page 43: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

The Tiobe index is your friend

43

Page 44: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Just be good at the principles

The Voice of Reason

Page 45: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Software Developer >

Programmer

Page 46: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

I Haz Cloud

Page 47: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

47

Page 48: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Evaluate and prototype

The Voice of Reason

Page 49: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

EC2, Heroku, JElastic, Cloudbees, Open Shift et al

Page 50: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Can Haz Mobile!

Page 51: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Write HTML 5 and wrap it

51

Page 52: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

What are the Ux/UI needs?

The Voice of Reason

Page 53: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Think about what pisses you off...

Page 54: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

NoSQL / Big Data

Page 55: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

55

Page 56: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

What type of data are you storing?

The Voice of Reason

Page 57: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

So what can I do?

Non-Functionals matter

Page 58: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

You are doomed

Page 59: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Take a deep breath

Page 60: And his internal - Jfokus · Help Java out! Adopt OpenJDK - @adoptopenjdk Adopt a JSR - @adoptajsr Come to London! DevoxxUK - @DevoxxUK Public Service Announcement

Thanks! - Martijn - @karianna

Evil me - @diabolicaldev

http://www.jclarity.com

http://www.manning.com/evans