Model-Driven Node: Scalability
Most developers think technical spec when they read scalability. Node.js's claim to fame is bandwidth utilization via an event-driven, non-blocking I/O model. But I'm interested in a different scalability; project scalability, domain scalability, which I predicted in 2006 (when I drew these pictures).
Most large organizations look like this:
Many applications are glued together, with transaction boundaries, inconsistencies, maintenance costs, etc.
Do you think corporations CHOSE that? Hell, no, it's an inevitable function of domain scale. A development team has an optimum size due to communication costs, limitations of people (re: domain knowledge) and technical tools at hand. Ideally, a corporation wants this:
In 2006, I believed that IT innovation could only be tool- driven because people don't change much. If we can change the scope of a project, increase its domain, then we can create boundaries like this:
I created and tested my first Velocity template within four hours of installing Node. That's when I realized the combination of Node's interface and json communication creates a broader domain scope, which can lower transaction costs, real costs and increase consistency.
Part 1: Model Driven Node
Part 2: Multi-Tenant
Part 3: Object Graph Impedance
Part 4: Extending XSD Schema
Part 5: XJC Compiler
Part 6: Scalability
Part 7: Reference Implementation
Part 8: Tags and Queues
Part 9: URL Namespacing
Part 10: JSON Editor and Angular
Source Code