Hatchet v1 is a new open-source task orchestration platform built on top of Postgres. It aims to provide a reliable and scalable way to define, execute, and manage complex workflows, leveraging the robustness and transactional guarantees of Postgres as its backend. Hatchet uses SQL for defining workflows and Python for task logic, allowing developers to manage their orchestration entirely within their existing Postgres infrastructure. This eliminates the need for external dependencies like Redis or RabbitMQ, simplifying deployment and maintenance. The project is designed with an emphasis on observability and debuggability, featuring a built-in web UI and integration with logging and monitoring tools.
Werk is a new build tool designed for simplicity and speed, focusing on task automation and project management. Written in Rust, it uses a declarative TOML configuration file to define commands and dependencies, offering a straightforward alternative to more complex tools like Make, Ninja, or just shell scripts. Werk aims for minimal overhead and predictable behavior, featuring parallel execution, a human-readable configuration format, and built-in dependency management to ensure efficient builds. It's intended to be a versatile tool suitable for various tasks from simple build processes to more complex workflows.
HN users generally praised Werk's simplicity and speed, particularly for smaller projects. Several compared it favorably to tools like Taskfile, Just, and Make, highlighting its cleaner syntax and faster execution. Some expressed concerns about its reliance on Deno and potential lack of Windows support, though the creator clarified that Windows compatibility is planned. Others questioned the long-term viability of Deno itself. Despite some skepticism, the overall reception was positive, with many appreciating the "fresh take" on build tools and its potential as a lightweight alternative to more complex systems. A few users also offered suggestions for improvements, including better error handling and more comprehensive documentation.
Summary of Comments ( 51 )
https://news.ycombinator.com/item?id=43572733
Hacker News users discussed Hatchet's reliance on Postgres for task orchestration, expressing both interest and skepticism. Some praised the simplicity and the clever use of Postgres features like LISTEN/NOTIFY for real-time updates. Others questioned the scalability and performance compared to dedicated workflow engines like Temporal or Airflow, particularly for complex workflows and high throughput. Several comments focused on the potential limitations of using SQL for defining workflows, contrasting it with the flexibility of code-based approaches. The maintainability and debuggability of SQL-based workflows were also raised as potential concerns. Finally, some commenters appreciated the transparency of the architecture and the potential for easier integration with existing Postgres-based systems.
The Hacker News post for Hatchet v1 has a moderate number of comments discussing various aspects of the project. Several commenters express interest and approval for the approach of using Postgres as the foundation for a task orchestration platform.
One compelling line of discussion revolves around the comparison between Hatchet and Temporal. Commenters debate the advantages and disadvantages of each, with some suggesting that Hatchet's simplicity and reliance on Postgres could be beneficial for certain use cases, while others point to Temporal's more mature feature set and scalability. The creator of Hatchet also participates in this discussion, acknowledging the differences and explaining their rationale for focusing on Postgres.
Another key comment thread focuses on the perceived limitations of using Postgres for this type of workload. Concerns are raised about the potential performance bottlenecks and scaling challenges that might arise as the number of tasks and workflows increases. Commenters discuss strategies for mitigating these issues, such as using a separate Postgres instance dedicated to Hatchet.
Further comments delve into specific features and aspects of Hatchet's design, including its use of SQL for defining workflows, the choice of Python for the client library, and the potential for integrating with other tools and services. Some commenters inquire about the roadmap for future development, expressing interest in features like retry mechanisms and error handling. The project creator responds to many of these inquiries, providing further context and insights into their design choices and plans for the future.
Finally, a few comments touch on the broader topic of task orchestration and the landscape of existing solutions. Commenters mention alternative tools and frameworks, and discuss the challenges of choosing the right tool for different use cases.