It was created to teach me the concept of love-hate relationships
The arguments in the article are very compelling. But as soon as you choose Kafka you realize the things you hate.
Many of the reasons are stupid things - like it uncovers otherwise unimportant bugs in your client code. Or that it just makes experimenting a hassle because it enforces poking around in lots of different places to do something. Or that writing and maintaining the compulsory integration test takes weeks of your time.
Sure - you can replay your data - but not until you have fixed all the issues for that special case in your receiving service.
I think maybe my main gripe (for us) was that it was a difficult to get an understanding what is actually inside your pipe. Much easier to have that in a solid state in s3?
At the end of they day you get annoyed because it slows you down. In particular when you are a small localized team.