| 🔗 Stories, Tutorials & Articles | | | | How Stripe builds interactive docs with Markdoc | | | Stripe designed its product docs to be interactive and customized for each user, which improved the user experience but posed challenges for authors. To address this, Stripe created a custom authoring format, Markdoc, which extends Markdown with custom syntax for features like conditional content, content inclusion, and variable interpolation. Markdoc keeps the design simple and familiar by adding a few composable primitives, and eliminates looping and variable assignment to ensure content maintainability. Markdoc integrates with React for rendering, allowing authors to focus on writing content while designers and engineers can build new components. |
| | | | | | How Kubernetes Broke Git ♻️ | | | Kubernetes pushed git to its limit in several ways, including:- No atomicity across subprojects: Kubernetes was initially a monorepo, but as the project grew, developers needed to vend or separate API specifications from the code, leading to unreliable syncs, missing commit history, and different commit SHAs.
- No benevolent dictator to merge patches: Unlike the Linux kernel, Kubernetes had a different governing model, which created authorization problems and a merge queue to handle sequential merging of feature branches.
- Native package management: Kubernetes ships many different products, including container images, binaries, API types and client libraries, and system configurations, which are not easily managed by git.
- Adding authorization and integrating package management: These features added to the scope of versioning beyond source code, but also extended the role of git as a collaboration tool.
|
| | | | | | How Airbnb automates incident management ✅ | | | In summary: The Incident Management Slack bot centralizes incident management in Slack and automates incident response through four key chat commands: "new incident", "new channel", "page", and "get timeline". The bot streamlines incident detection, communication, escalation, and resolution by automating tasks such as creating Jira tickets, incident channels in Slack, and paging incident responders. The bot provides a single intake funnel for incidents and allows incident managers to quickly escalate incidents while providing additional information. It also updates the Jira ticket with a link to the incident Slack channel and compiles important chat events into a timeline for post-incident analysis. |
| | | | | | The End of Localhost ✅ ♻️ | | | The ultimate developer experience in 2030 should be fast, easy and productive, with fast gigabit internet, cheap and high-performing dev machines with multiday battery life, fast app builds and instant staging environment previews. The dev environment should travel with the user no matter what device they use and have instant access to any app's dependencies. It should be possible to go from idea to first customer in a weekend and scale from MVP to unicorn in weeks with the help of low-code builders and backends-as-a-service. Most of the development should be done on the cloud, eliminating the discrepancy between dev and prod environments, reducing the time wasted fixing bugs. Many Bigcos already work entirely in the cloud and as the technology commoditizes, it will be available for smaller teams as well. The trend towards cloud-based dev environments will continue to grow as it is increasingly being adopted by large companies. |
| | | | | | An Introduction to GitOps and Argo | | | GitOps is a framework or set of best practices for managing cloud-based infrastructure using Git as a single source of truth. The configuration in Git is treated as a set of facts about how the infrastructure should look rather than instructions to perform. Automated processes take this configuration and make sure the environment matches the state described in the repository. The benefits of GitOps include faster and frequent deployments, faster error resolution, and built-in auditing. Argo is a collection of tools that helps make implementing GitOps easier for Kubernetes-based applications. The Argo project includes Argo Workflows, Argo CD, Argo Events, and Argo Rollouts. Argo Workflows is a workflow engine for Kubernetes that creates multi-step workflows using Kubernetes Custom Resource Definitions. It can be used in a standard CI/CD pipeline, data processing pipeline, or as an MLOps tool. |
| | | |
|
|