15
© Copyright FeedHenry Ltd. 2013 Enterprise Mobile Development Damian Beresford Twitter: @dberesford @feedhenry 1 WIT Masters April 2014 http://bit.ly/enterprise-mobile

Enterprise Mobile Development

Embed Size (px)

Citation preview

Page 1: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Enterprise Mobile Development

Damian BeresfordTwitter: @dberesford

@feedhenry

1

WIT Masters April 2014

http://bit.ly/enterprise-mobile

Page 2: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

FeedHenry Platform

Page 3: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Customers

• Customers• Transport

• Law Enforcement

• Utilities

• Aviation

• Medical

• ‘Hello world’ Enterprise Proxy Pattern:

3

Page 4: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

FeedHenry Open Source

4

Page 5: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Mobile Development

• HTML5 / Native

• Cordova

• Backbone

• Angular• Ionic Framework

• Ember

• famo.us

• Rachet

• Xamarin

5

Page 6: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

MEAN Stack

• MEAN – full stack javascript

• Mongo

• Express

• Angular

• Node

• MeanR (Redis)

6

Page 7: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Javascript

7

Page 8: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Node.js Anti Patterns

• Java mind set

• OOP

• Monolithic Systems

8

Page 9: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Anti Anti Patterns

• Data! Functions! Modules!

• Callbacks, async, etc

• Functional Programming

• Underscore• Start with _each, _map, _filter, _reduce

• Unix/KISS mindset

• Microservices

9

Page 11: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Testing – unit vs acceptance

• Eyes on code!

• unit tests should require no external dependencies, external services should be mocked out (e.g. internet access, writing to file/database, etc)

• unit tests should be super quick to run

• unit tests should be reliable as no external dependencies

• unit tests should just test your own logic

• acceptance tests can require external dependencies, which do require setup (which should be well documented!)

• as such they can take longer to run

• acceptance tests are a more 'end to end' philosophy

11

Page 13: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Mirco Services

• Mix of Message Bus and REST API

• REST API - JSON in JSON out (robustness principal)

• Message Bus – Rabbit MQ

• Not just node.js, DropWizard for Java

• Continuous Integration - Small Production Deploys

• Operations – monitor all the things

• Dedicated Ops and Support teams

13

Page 14: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Mirco Services – complexity

• Not a silver bullet – but does help with complexity• Still deal with lots of business rules, moving parts, etc

• Easy !== Simple

• Work at simplicity

• Need Master Builders to keep all the balls in the air

• Boxology

14

Page 15: Enterprise Mobile Development

© Copyright FeedHenry Ltd. 2013

Demo

• https://wit-t.sandbox.feedhenry.com/

[email protected]

15