@mattjmorrison
Not as Simple as Watering
Caveat - Rails Engines & Django Apps - Use These
* MS DOS 1.0 was 4k Lines of Assembly in 1980
Wikipedia: Expansion or redevelopment of (brownfields) may be complicated by environmental contaminations.
The Monolith is a Contaminated Environment
coders anonymous
An Entire System
Make Smaller Pieces
If You Do Not Have One Giant Code Base
You Will Not Have One Giant Rewrite
Iterate
Let’s Take a Look at Some Examples
A Thing in the Cloud that You Can Use
Boo, Brown Field
Yay, Green Field
Easy with a Monolith
Not So Easy with Multiple Servers
Green Field, Baby!
Again, Easy with a Monolith
And Again, Not So Easy with Multiple Servers
Remember that Unnecessary Coupling Thing?
Green Field, Baby!
It Sounds Daunting, But the More You Do It
A Portable Bundle of Code
Just By Trying to Name Your Open Source Library You May Find That It Already Exists
Translates a Timestamp into:
A Vertical Slice of a System
Green Field, Baby!
Extracting is more of a Refactoring than it is a Rewriting
Also, since it is a Refactoring…
* With Tests, of Course!
I Have Tried This, It Does Not Work
Legacy Application Does Some Calculations
We Want to Leverage That from the Web
We Do Not Want Possible Inconsistencies
Legacy Application Has Some Data
We Want that Data to be Pushed in Real Time to the Web
Code that Sits Between
(In Order of Importance)
Currently at
Web Services, Libraries, Applications and Other Small Systems