Software Engineering
What is Hatchet?
Hatchet replaces difficult to manage legacy queues or pub/sub systems so you can design durable workloads that recover from failure and solve for problems like concurrency , fairness , and rate limiting . Instead of managing your own task queue or pub/sub system, you can use Hatchet to distribute your functions between a set of... See more
Hatchet replaces difficult to manage legacy queues or pub/sub systems so you can design durable workloads that recover from failure and solve for problems like concurrency , fairness , and rate limiting . Instead of managing your own task queue or pub/sub system, you can use Hatchet to distribute your functions between a set of... See more
hatchet-dev • GitHub - hatchet-dev/hatchet: A distributed, fault-tolerant task queue
Shipping to production
Before shipping to production, we think about all the different artifacts that might be affected by a new feature.
Here's a non-exhaustive list of things we ask ourselves:
Before shipping to production, we think about all the different artifacts that might be affected by a new feature.
Here's a non-exhaustive list of things we ask ourselves:
- Does the API need to be updated?
- Is the OpenAPI spec up to date now?
- Have we released all the official SDKs?
- Do we need to write a Changelog post to announce
How we ship new features · Resend
Some important formatting rules available in this style guide:
But remember: The formatting rules should make the code more readable. Sometimes,... See more
- Use four spaces for code indentation
- Limit all lines to a maximum of 79 characters
- Avoid extraneous whitespace in certain situations (i.e., inside brackets, between trailing comma and close parenthesis, ...)
But remember: The formatting rules should make the code more readable. Sometimes,... See more
How to Write Clean Code in Python
Developer environments you can take with you
Discourse | Documentation | Blog | Twitter
Flox is a virtual environment and package manager all in one. With Flox you create environments that layer and replace dependencies just where it matters, making them portable across the full software lifecycle
Install packages from the biggest open source... See more
Discourse | Documentation | Blog | Twitter
Flox is a virtual environment and package manager all in one. With Flox you create environments that layer and replace dependencies just where it matters, making them portable across the full software lifecycle
Install packages from the biggest open source... See more
flox • GitHub - flox/flox: Developer environments you can take with you
- Solution : Apply the Single Responsibility Principle - each microservice should focus on one single capability that it masters.
- Benefits : This specialization makes microservices easier to comprehend, test, scale, and upgrade. It's like having a coordinated team where each member excels at their role.
- Pitfalls : Violating this principle leads to
Muaath Bin Ali • Microservices Design Principles
Pydantic Logfire — Uncomplicated Observability
From the team behind Pydantic, Logfire is an observability platform built on the same belief as our open source library — that the most powerful tools can be easy to use.
What sets Logfire apart:
From the team behind Pydantic, Logfire is an observability platform built on the same belief as our open source library — that the most powerful tools can be easy to use.
What sets Logfire apart:
- Simple and Powerful: Logfire's dashboard is simple relative to the power it provides, ensuring your entire
GitHub - pydantic/logfire: Uncomplicated Observability for Python and beyond! 🪵🔥
Comments are helpful sometimes. But sometimes, they are just an indication of bad code.The proper use of comments is to compensate for our failure to express ourself in code [1].Whenever you have to add a comment in your code, ask yourself if it is really required or if you could instead put that into a new function and name the function so that it... See more
How to Write Clean Code in Python
Problem : Tight coupling leads to fragility - a change in one microservice breaks connected services.
Low cohesion results in unclear responsibilities.
Low cohesion results in unclear responsibilities.
- Solution : Apply loose coupling and high cohesion. In a loosely coupled system, each component is independent and changes in one will not affect the others. High cohesion means that each component
Muaath Bin Ali • Microservices Design Principles
When a test fails, you should be able to begin investigation with nothing more than the test’s name and its failure messages —no need to add more information and rerun the test.
Effective use of unit test frameworks and assertion libraries (JUnit, Truth, pytest, GoogleTest, etc.) serves two important purposes. Firstly, the more precisely we express... See more
Effective use of unit test frameworks and assertion libraries (JUnit, Truth, pytest, GoogleTest, etc.) serves two important purposes. Firstly, the more precisely we express... See more