Kafkesc Updates: Docker, __consumer_offsets, byte parsing and Rust

While I haven’t taken the time to blog since the Ksunami announcement, I have been ploughing away at various projects inside the Kafkesc organization, and also continuing the side-objective of growing my Rust skills. So, here is a recap of a few things I have released since. And also, how is it leading to a substantial growth in my Rust knowledge. Ksunami gets an official Docker image In an attempt to make adoption easier, I setup ksunami-docker so that running ksunami can be ever easier; in Docker, Kubernetes or wherever you need. For example: ...

March 19, 2023 · 6 min · 1216 words

Announcing Ksunami v0.1.x

October this year, while I was in the process of changing job, I started working on an open source project to monitor Kafka consumer lag. At New Relic, a previous gig, we used a lot of Kafka, and we cared equally about monitoring its usage: there are some great articles on New Relic own blogs, published over the years. In the process, I realised that I needed a way to spin up a Kafka cluster for development, and I needed a producer of Kafka records, that was able to behave in accordance to specific scenarios. ...

December 14, 2022 · 5 min · 935 words

TFZK - A Terraform Provider for Apache ZooKeeper

Gimme the TL;DR A new Terraform provider is available, designed to interact with ZooKeeper ZNodes: TFZK. The latest stable version is v1.0.3, and you should give it a go. Ah! And here is the doc. OK, I got more time - go ahead! Earlier this year I decided to scratch a long-standing itch: build a Terraform Provider for Apache ZooKeeper. While there was already one, it came with limitations that created issues in production environments: ...

December 2, 2022 · 4 min · 727 words

RESETtling...

Puff, Pant! THAT was not easy! But finally, “normality” seems not too far away. Many things have happened in the recent months: we got married; I helped my lovely wife with the pregnancy (well, she did all the hard work); and, on the 7th of November, we have became parents of this beauty: Leonardo Antonio DE MARINO-SIMOLA Now, we have to slowly learn to live our new life together: while we learn how to be parents, Leonardo will be learning how to be a baby. What now looks like a difficult, consuming and intense task (ask me how much we sleep at night!), will at some point become “daily routine”. A sweeter routine with Leo at the center of it all! ...

November 30, 2013 · 5 min · 907 words

Finally, GhostDriver 1.0.0

After ~10 months of work, I finally managed to push the ball forward enough to reach GhostDriver 1.0.0. I won’t lie: it does feel great. It always is to see so much effort mutate into an achievement, even it is such only for me. Before I go any further though, I owe a massive THANK-YOU to the people that through contribution and / or issue reporting have helped me to build a releasable 1.0.0. In particular to Jim Evans, an awesome guy and a bit of a mentor for me: you ROCK Jim, and I think that is true, literally! ...

December 3, 2012 · 8 min · 1530 words

GhostDriver, 90% and priorities

Last few weeks have been HECTIC to say the least. Work on GhostDriver and related PhantomJS improvements has been very intense. We just shipped PhantomJS 1.7, and work for 1.8 is already started (check out the ghostdriver-dev branch I linked above). GhostDriver has reached almost 90% completion for 1.0, and the code is being hardened, thanks also to the amazing work that Jim Evans is doing at spotting issues and, a lot of times, providing fixes. GhostDriver is getting better and better thanks to you Jim. ...

October 4, 2012 · 2 min · 388 words

GhostDriver: almost 50%

This post is long overdue. It’s weeks that I HAVE TO write it and yet couldn’t find the time to put it together. Oh well, better late than… Since my talk about GhostDriver at the Selenium Conference 2012 I have received lots of interest from the community about GhostDriver: finally a WebDriver for PhantomJS. If you haven’t followed me so far, a quick catch up: I’m working to implement the WebDriver WireProtocol on the top of PhantomJS, so to leverage our favorite headless browser. The project is proceeding, even though not as fast as I would have liked: you can find details about the current status in the “official” README.md and/or checking out the “Implemented Commands” spreadsheet. ...

June 26, 2012 · 3 min · 540 words

Git rebase: be a mother, not a plastic surgeon

Today I’m going to share a little tip about the use of Git. In contributing to open source projects, it happens sometimes that I have a long running branch; something on which I need to work for more than just few hours. The kind of work that goes on for weeks, sometimes months. **UPDATE: ** Matt suggested a great doc about rebasing. There is lol-cat-picture for every need Working on a branch is great: it let’s you work on a feature, a fix, an extension in total isolation, being sure you don’t disrupt anyone (and don’t embarrass yourself). ...

June 16, 2012 · 4 min · 852 words

My current stake in PhantomJS

I have been spending a lot of time on PhantomJS in the last couple of months. But feels like I could have done much more: there are so many interesting issues to work on in the official tracker. ** Hey, why don’t you give us a hand? :) ** Some English expressions still puzzle me… Here is where my stake is. REPL I just finished putting down a new wiki page that explains a bit about the REPL and how it works. Give it a read and let me know if you want more clarification. ...

March 28, 2012 · 2 min · 395 words

PhantomJS REPL: it's ready for a taste

After 2 months of on-off working on this, I finally managed to make something I’m happy with: a REPL for PhantomJS. The last post I wrote about this was in November 2011 (!!!). But I started putting code together only in Jan 2012. So, overall, from the first commit until today is almost 2 months. First thing first: how do you get to try it? Well, you can get my fork, switch to the dev-repl branch and try it out: ...

February 27, 2012 · 2 min · 311 words