A while back I wrote this blog post (http://rywalker.com/chaos-2010) which didn't get any responses - my blog doesn't get a lot of traffic ;) So I want to try re-asking the same question here and maybe get some response.
We have the following systems (and more) that we push/pull data from one app to another:
- Hosted CRM (InsideSales.com)
- Asterisk phone system (internal)
- Banner ad system (openx, we host)
- A lead generation system (homegrown)
- Ecommerce store (spree, we host)
- A job board (homegrown)
- A number of job site scrapes + inbound job feeds
- An email delivery system (like Mailchimp, homegrown)
- An event management system (like eventbrite, homegrown)
- A dashboard system (lots of charts and reports pulling info from all other systems)
With Rails 3 around the corner, I really want to pursue a micro-app strategy, but I'm trying to decide if I should have the apps talk via REST HTTP API or because I control them all, should I do something like shared models in the code which simplifies but also allows for stuff to leak across boundries much easier...
I've heard 37signals has lots of small apps, I'm curious how those apps communicate with each other... Or if you have any advice from your own multi-app experience.