Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Application Development
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Tom Wilson
April 02, 2014
Programming
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Application Development
In Pursuit of Developer Happiness
Tom Wilson
April 02, 2014
More Decks by Tom Wilson
See All by Tom Wilson
JS the language every programmer should know
jackhq
4
690
AngularJS
jackhq
5
660
Programming Basics with JavaScript
jackhq
0
220
NodeJS-Talk @convergese 2012
jackhq
3
330
Pair Programming and TDD
jackhq
5
300
Other Decks in Programming
See All in Programming
wkhtmltopdfの次どうするか問題2026
willnet
2
1.8k
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.3k
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
290
Security issues being discussed on Web Platforms
petamoriken
0
1.3k
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
390
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
7
5.1k
スマート反転とウェブアクセシビリティ
camiha
0
220
AHC070解法紹介
eijirou
0
140
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
140
Agents on Rails - Rails at Scale 2026
irinanazarova
0
280
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.2k
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
320
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
460
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
440
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
500
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Transcript
Application Development Pursuit of Developer Happiness
About Me ! Tom Wilson ! Chief Technologist,
Jack Russell Software ! A division of CareKinesis, Inc ! Building Applications and Development Teams for 15+ years
None
Experience I have made more mistakes I have tried to
learn from them
I want to create an application that is just as
easy to maintain as it is to create
long road no silver bullet
Three Approaches
Approach 1
BDUF ! Review all systems in the market !
Bring users from each system to provide features ! Use new platform ! Set unreasonable goals ! Add developers as needed
result
System of Systems ! Complex difficult to !
Support ! Maintain ! Upgrade
Approach 2
Waterfall to Agile ! Started with complex Data Model
! New Web based interface ! New Dev Environment ! Small Team ! Implement and ship incrementally
Success! kind of
Results > SOA ! Complex ! easier to
support ! easier to upgrade ! still hard to develop ! tightly coupled components
Approach 3
Agile to Waterfall ! Launch MVP ! Continuous
Deployment ! PAAS ! Extreme Programming ! OpenSource Stack
Awesome
Too Extreme! ! Users wanted slower pace !
batch features ! more stability ! more process
Enter Waterfall But we still called it Agile!
“Afraid to admit we are Waterfall”
we are awesome!
results ! huge backlog ! easy to support
! easy to upgrade ! painful to develop
Lessons Learned
avoid configuration as much as possible
clearly define your features Know your user
App Analytics ! mixpanel ! kissmetrics !
new relic
Loosely Coupled
Events, APIs and Bots ! activity stream !
trigger tasks from activities ! Http/json
Think in terms of Applets and Components
build a collection of apps
Applets and Bots
Our New Approach ! Quarterly Goals ! 2
week sprints ! javascript everywhere ! connect devs with stakeholders ! PAAS
2 week sprint ! 2 days planning – redact
stories to product team ! 4 days dev ! 2 days code review ! 2 days qa
Javascript Everywhere ! AngularJS ! NodeJS !
Npm ! Browserify ! CouchDb
Devs should be involved from concept to completion
PAAS Dev should have their own personal playground to explore
and share concepts
Prototype to Production
Just do it Do it Fast Do it better
Prototype ! Bootstrap ! AngularJs ! Firebase
or PouchDb ! Collaborate RealTime
Early Adopter ! Sames as Prototype ! Add
NoSql Backend Mongo, CouchDb ! NodeJs ! Clearly Separate Concerns ! Bots and Job Queue
MainStream ! convert to Applets and components !
Focus on Polish and Usability ! Product Boundaries ! Measure Everything ! Formalize Schemas {sql}
Dev Goals ! Design in Real-Time (if possible) !
Applets and Bots - Microservices ! Flexibility and Durability ! Javascript everywhere, until necessary
Thank You @twilson63