Greenfield Java 2013
Upcoming SlideShare
Loading in...5
×
 

Greenfield Java 2013

on

  • 962 views

As presented at SeaJUG in October 2013. The video is available at http://www.seajug.org/. These slides mainly cover criteria for selection.

As presented at SeaJUG in October 2013. The video is available at http://www.seajug.org/. These slides mainly cover criteria for selection.

Statistics

Views

Total Views
962
Views on SlideShare
752
Embed Views
210

Actions

Likes
2
Downloads
4
Comments
0

4 Embeds 210

http://www.dev9.com 105
http://www.dynacrongroup.com 102
https://dynacron-group.squarespace.com 2
https://dev9.squarespace.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Greenfield Java 2013 Greenfield Java 2013 Presentation Transcript

  • GREENFIELD JAVA IN 2013 Will Iverson CTO, Dynacron Group
  • Will Iverson Who? • CTO, Dynacron Group • Kirkland, WA Consulting Firm • ~40 people • Software Projects using Continuous Delivery • Now hiring! • Videos, GitHub => dynacrongroup.com • Author, 4 books, lots of articles • Lots and lots of proposals & project team work
  • Scenario • New project! • What tools, frameworks, etc.? • How do you decide? • 1st step: project charter! • New consumer-facing web application • Single page web app • Mobile devices • iPhone, iPad, Nexus 7, Kindle HD, etc.
  • Basic Architecture
  • Design for Testability
  • Today’s Format • Collect Nominees by Tier • Add “Not Sure” • Everyone vote for current favorite • Criteria Review • 60 second lobbyists • Final vote • Winners immortalized on SeaJUG site!
  • Nominees! • Core frameworks • DropWizard, Spring MVC, Play 2.x… • DI Framework • Spring, Guice • Persistence tools • RDBMS, MongoDB… • Front End • Bootstrap, AngularJS, Emb er.js… • Build & Dependency Mgmt system • Maven, Gradle, Grunt… • IDE • Eclipse, IntelliJ, NetBeans
  • Considerations • Team scaling • Does it work for 1 person? • How about a team of 5-7? • Developer Productivity • How many files to touch to add new feature? • E.g. add a single new field from persistence through UI • Add a whole new view from persistence through UI
  • Considerations (continued) • Testability • How hard is it going to be to test this? • Tip: driving through the GUI is the most difficult • Code review • Static code analysis support • Release Management • Support for single file + config deployment • Integration with config mgmt tools
  • Considerations (continued) • Tool support • Auto-complete • Refactoring • SCM-friendly • Is there a “magic file” everyone has to touch? • pom.xml, context.xml • Monitoring • How much is available
  • Considerations (continued) • Maturity • How to measure? • Indeed.com • Stack Overflow • GitHub • Google Trends • Developer Aesthetics • Social group • Ask, don’t tell!
  • Considerations (continued) • Commercial / Open Source? • Cost • Tool-as-dev-platform • Designed to be testable? • Performance Testing • Gatling, Neustar • JS framework…
  • JS Framework Thoughts • Too Early To Call • …But you have to pick! • jQuery alone is good but insufficient • Huh? -> jQuery -> Backbone -> AngularJS -> Ember.js • Further Reading… • http://sporto.github.io/blog/2013/04/12/comparison-angular-backbone- can-ember/ • http://beust.com/weblog/2012/12/29/migrating-from-ember-js-toangularjs/ • http://www.bennadel.com/blog/2439-My-Experience-With-AngularJSThe-Super-heroic-JavaScript-MVW-Framework.htm
  • JS Summarized http://www.bennadel.com/blog/2439-My-Experience-With-AngularJS-The-Super-heroic-JavaScriptMVW-Framework.htm
  • Greenfield 2013 GitHub Project • https://github.com/dynacron-group/greenfield • DropWizard • TestNG • AngularJS (Angular Seed) • Bootstrap • Jasmine + Karma • MongoDB • As of 10/14/2013 – early work-in-progress • Feel free to watch, star, contribute, kibitz, add issues…
  • Why AngularJS? • Data- attribute approach • Works better with tools • “The way the browsers are going” – Google • Scope databinding magic seems ok • …but there may be edge cases…? • Really, really strong focus on test-ability
  • Today’s Format • Collect Nominees by Tier • Add “Not Sure” • Everyone vote for current favorite • Criteria Review • 60 second lobbyists • Final vote • Winners immortalized on SeaJUG site!