A long time ago in a university far, far away, I was developing a chatterbot to do stuff in chat systems like IRC, Yahoo! Chat, and the like. To add a little oomph to my application. So, I integrated with the C version of Fnorder (http://www.sjgames.com/misc/fnord.html). When the application didn’t understand what was said, or sometimes just because, it would generate a random sentence from Fnorder.
Fast forward a few years. I developed an Android app that used their database. Eventually, I got this weird email asking if I believed in the secret masters and so on as I purported these messages were from. I should have said yes, because a cease-and-desist email was sent and I had to remove it from what was probably at that time even the Google Play Store. I was devastated because I did a lot of work writing the concepts of the C code in Java. Granted, it was their original work.
Then, not taking defeat sitting down, I redesigned a lot of the sentences, added some more, and redid the database enough to make it mine. I then rewrote the application and released it as Splork!. Part of this redesign is that I have a backend running on a container to offload a lot of the sentence structure. The Android app and attempted iOS app would call this backend without porting the underlying sentence engine. This allowed me to write quickly a Google Assistant conversation and Alexa skill. I even have a display at work connected to a Raspberry PI 3B+ that displays this and will, eventually, keep a history.
You may be asking yourself “what is this waste of my time”? It is simply that a crushing defeat can often lead to better things. As they say in my daughter’s karate class when asked why you fall down: to get back up!