Deployment got harder as their platform shifted beneath us, and one day recently our entire site was replaced by a simple message that said, "We no longer support Go 1.9." That was a fun day!
This might've been a good theory for building modular applications (as I'm hoping to), but in practice causes a ton of headaches for maintenance and end user experience.
Little problems came up right away:
- How do we share user data across platforms?
- How do we create common UI patterns while keeping distinct branding on each platform?
- How do we reconcile slightly-different uses of those shared libraries across platforms?
So, starting with @submit_as, we built the functionality into the Write.as codebase. There was still plenty of copy-paste involved, but we were able to launch this new product much more quickly.
Now instead of creating separate apps first, we're building them into Write.as first and then separating out functionality over time.