Most people I talked to so far are annoyed by the get started experience of the default-topic. This was first raised in Zeebe 0.4.0 Release. I would like to address this again as I think this is one of the most important show stoppers for a smooth get started experience at the moment so it is really important to me!
Despite that it is currently unclear how to create the topic at all (e.g. as I haven’t found the zbctl release - but this things are improvable) it is not a good idea to bother people with creating a topic first, even if they have no idea what that topic is about. They can and probably should learn about topics - but not before they even started there very first workflow.
I do not see any harm in
having a broker configuration flag if the default-topic should be created (default: true)
having an API shortcut (my clear preference) or at least a constant available to address the default topic.
Another idea without any risk involved: add a list of auto-created topics in the broker configuration, by default it is “default-topic”. Would already help big time.
yes it’s really annoying … I always forget to create the default topic after starting up my (fresh) broker with docker.
After talking to @menski I was at least able to create the default topic automatically on startup of my go project, if it does not already exist.
But I really like @berndruecker Idea of having the configuration flag for automatically creation of the default topic.
This will be a create help for new users of zeebe.
Agree. I believe having it as part of the configuration would be the easiest.
It would make it easier to provision brokers using docker or also other scripts.
Just for reference - I also proposed to move the topic in the fluent Java API - as it is really confusing there at the moment: https://github.com/zeebe-io/zeebe/issues/763. I would love to get rid of it anyway if using the default-topic
To reinforce the importance of the topic: In my talk last week I even forgot to create that default-topic myself (I deleted the data of the broker before that talk to start fresh): https://youtu.be/lZIe02um5eI?t=2505. And I discussed exactly that topic in this forum earlier that day. Now you definitely can argue that I am just plain stupid (which is definitely true in this case), but it would have been much cooler if default-topic would have been there. And I can imagine that there are people out there less familiar with Zeebe as me…
We will work on this topic in the next quarter. The idea is to provide a simple way to start a broker in a single node/demo environment, which provides all things needed for a smooth getting started experience, and a cluster way which is more focused on a production environment and allows you to setup the broker in the desired state.
Sounds good! I wonder how the Java client then can hide the default-topic in an easy way…
And I still bet, that even in a production environment most scenarios will start with the default-topic, one partition and a bit of replication. But let’s see