{
  "id": 7606814,
  "title": "The Convention Is the Wiring",
  "url": "https://urgent.news/2026/09/15/the-convention-is-the-wiring",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-15T18:25:30.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/poja/the-convention-is-the-wiring-12nj"
  },
  "original_language": "en",
  "account": "The article discusses the concept of \"Convention Over Configuration\" in the context of Spring Boot and its application to infrastructure in cloud services like AWS. The core idea is that if something can be derived, why declare it manually?\n\nIn Spring Boot, placing your main class in a specific package allows the framework to automatically scan that package and its sub-packages, deriving various aspects of the application. Similarly, configuration files like application.yaml enable similar auto-configuration.\n\nThe author then draws parallels to AWS infrastructure, which still requires manual setup for elements like queue management, retries, routing, permissions, and mappings. The transition from application-specific wiring to infrastructure configuration is complex and can lead to a split between developer-defined events and infrastructure details.\n\nThe article introduces Poja as a tool that simplifies this process. By following certain conventions in your code, Poja automatically handles the infrastructure setup for asynchronous processing. Developers only need to extend a base class (PojaEvent), declare the maximum duration for the consumer and retries, and place these classes in designated packages. Poja then derives the consumer class name from the event's fully-qualified name and calculates the SQS visibility timeout.\n\nThis approach streamlines the wiring process, reducing manual configuration and potential errors. However, it requires adherence to specific naming conventions, as any misnaming can lead to runtime issues. While Poja handles much of the infrastructure setup, developers still need to configure resources outside Poja's scope.\n\nThe article concludes by encouraging readers to try this approach with their own code, deploying a simple event and observing the infrastructure elements generated by Poja, such as the queue, routing rules, and visibility timeout.",
  "summary": "You already trust conventions to wire your Spring Boot application. What happens when the same idea reaches the infrastructure? Part 1: Convention Over Configuration, Spring Boot Style In Spring Boot, where you place your main class determines what the application discovers, because @SpringBootApplication scans that package and everything below it . The same principle runs deeper.…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}