What is simplicity ? why should you care ? How to deal with simplicity in our hyper connected complext world of software development ? Let's talk about all that, about design, architecture, clean code, tools and much more.
Citation preview
Simplicity Compose modern apps with ecient practices &
tools 1 Rui Carvalho @rhwy :: rui.fr
About Development, architecture, Coaching, Training, Teaching
http://twitter.com/rhwy http://github.com/rhwy http://www.rui.fr
http://rui.io http://www.codedistillers.com Groups Write Work? 2
Func1onal Programming in F# NCRAFTS organizer of the
conference
Pragmatic Web (no) Frameworks Tools Patterns 3 Practices
Get the Control back! Less Pain 4
Background Should I really care? 5
6
Complexity is everywhere and making things simple is hard!
7
-1- 8
The Domain Problem 9
10 humans need to talk more
Wrong models cause massive accidental complexity Greg Young
11
Customer needs Foo 12
You think schema Bar 13
Dont think schema too hard 14
There is no good but some of them are useful 15 { Model |
Architecture | persistance }
maybe partially maybe aggregated but surely in an unique
context 16
17
-2- 18
Over Engineered ? 19 The Architecture Problem
you MUST decouple your ugly monolithic app in LAYERS 20 (evil
said)
21
22 arg
Hexagonal, Onion? 23 Yes!
24
Concrete Application? 25
((You/Me/Them) misunderstood Fail 26
27 Architecture is about an intent, its not about a technical
framework
28 Architecture is the art of taking decisions lately
29 Templates, patterns, scaolding dont solve anything they are
just tools to start faster
30 Avoid dependencies Use abstractions Use right naming
31
-3- 32
33 what about design?
34 Are You Simple enough?
Solving the wrong problem - it may happened - 35
36 It should go faster !
37 Lets take a more modern engine!
all that matters! Bad Understanding Poor design No design Bad
technology locking 38 } Generates Complexity !
-4- 39
please, help 40 What about tools?
1-1 Frameworks? 41 And Libraries
Frameworks? 42
Frameworks ? 43
A framework >> it calls you 44
45 YOU Call a Library
OSS ? oss projects -most of the time- fit real user needs tiny
oss libraries usually t one need, but do it well. 46
1 11 Get the shell back! 47
Curl Everything you need to test your app is here! -X
[GET|POST] -I (include headers) -d key=value 48
Nuget Package management is essenPal Enterprise grade =>
build your own Quite mulP-plaTorm 49