pebble
Benthos
pebble | Benthos | |
---|---|---|
2 | 76 | |
133 | 7,586 | |
4.5% | 2.3% | |
9.0 | 9.7 | |
3 days ago | 7 days ago | |
Go | Go | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pebble
-
What type of software do you write at your workplace?
At Canonical I work on two open-source projects written in Go: Juju, a large cloud-based application deployment tool, and Pebble, a small Linux service manager. Both include CLI clients and API-based server daemons. Juju in particular is a large distributed system.
-
Useful and Useless Code Comments
Yeah, I like the "visual boundaries" way of framing it. A line of whitespace is a visual boundary, of course, but I find the // comment above it acts as a heading. Like a bold heading above a couple of paragraphs of text in a document.
I wouldn't add a heading above every paragraph, but I would might above every few paragraphs. In code, this translates to every 5-15 lines of code. Here's some code I wrote recently that shows this (https://github.com/canonical/pebble/blob/b152ff448bbe7d08c39...):
func writeFile(item writeFilesItem, source io.Reader) error {
Benthos
- Ask HN: Who is hiring? (December 2023)
- Structured Logging with Slog
- Fancy stream processing made operationally mundane
- Benthos: Fancy stream processing made operationally mundane
-
Any golang library to batch process a queue ?
I’ve used https://www.benthos.dev/ and it’s really easy and well implemented. The author is also very responsive
-
Show HN: Arroyo – Write SQL on streaming data
Looks cool. What is the difference between this tools and benthos (https://www.benthos.dev/)?
- Benthos: Open-source stream processing tool
-
book about golang and kafka
You might want to gradually replace that one with https://github.com/twmb/franz-go because Shopify is looking to find a new owner for Sarama and, until or if they do, it seems to be falling behind with maintenance: https://github.com/Shopify/sarama/issues/2461 For example, they still haven’t addressed this breaking change https://github.com/Shopify/sarama/issues/2358. franz-go has worked well so far in Benthos https://github.com/benthosdev/benthos/tree/main/internal/impl/kafka and it will likely end up as the only implementation once the Sarama-based one will be deprecated
- Show HN: Open-source Auth0 alternative Ory Kratos v0.13 released – nearing v1.0
-
Go in depth youtube channels?
I upload a mix of code reviews and live streams on https://www.youtube.com/@Jeffail, mostly building https://www.benthos.dev out in the open so the content ranges from beginner friendly stuff to more advanced things like stream processing, parser combinators, etc.
What are some alternatives?
goleveldb - LevelDB key/value database in Go.
Confluent Kafka Golang Client - Confluent's Apache Kafka Golang client
Juju - Orchestration engine that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure (Kubernetes or otherwise).
appsmith - Platform to build admin panels, internal tools, and dashboards. Integrates with 25+ databases and any API.
cobra - A Commander for modern Go CLI interactions
watermill - Building event-driven applications the easy way in Go.
gqlgen - go generate based graphql server library
sarama - Sarama is a Go library for Apache Kafka. [Moved to: https://github.com/IBM/sarama]
easyjson - Fast JSON serializer for golang.
salsa - A generic framework for on-demand, incrementalized computation. Inspired by adapton, glimmer, and rustc's query system.
jsoniter - A high-performance 100% compatible drop-in replacement of "encoding/json"
grpcurl - Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers