We found the generated code to be highly readable and could readily and easily tweak it to expert tastes. Magic accommodates the limitations of the stateless HTTP environment. Its niceties include context variables that can maintain state information while moving from one page to another, addressing a frequent need in E-commerce applications. This context mechanism integrates with standard HTML using either cookies or hidden fields, at the developer's option. If accelerated Web deployment were Magic 8's only new strength, this release would be good news but not great news.
Performance is also a major concern in Web-based applications.
We're pleased, therefore, to see that Magic 8 doesn't leave the performance part of the problem as an exercise for the developer. Magic 8's new application partitioning facilities don't require much effort to learn or to use. For an application developer using Magic, adding partitioning for multiserver deployment is almost a no-brainer, because its architecture has always been based on describing an application's behavior in declarative terms while leaving the procedural details to the Magic application engine. Magic 8's Magic Request Broker technology just fits in as another layer, normally invisible but with options available for tailoring its behavior as needed. Access to remote facilities is controlled by simple property settings.