Ivan Nemytchenko's take on services, aligned with DDD's 'service is an action, not a thing'. Implement services as classes with class methods (or a single top-level method) rather than instantiated objects, because instance state is where discipline breaks down: an inexperienced developer seeing a class will be tempted to add state. A class-methods-only service makes adding state effectively impossible without resorting to globals. In The Curse of Service Object, Ivan reinforces this: services should be just procedures, written at a high level of abstraction, delegating persistence to mutators and external calls to managers, with application logic kept in the controller. Complements dry-container for swapping external dependencies.