Stève Sfartz has a long career in the IT industry. Starting from NeXT and Java in ’90, he always has taken up and worked on cutting-edge technologies and frameworks. Nowadays Stève is deeply involved with Web APIs, and he leads a global team of developer advocates for DevNet – Cisco’s Developer Program.
So, with a little surprise, his attendance at Codemotion Rome 2017 was about what capabilities DevNet can offer to developers and, in particular, he choose the Bot topic to showcase explain how Cisco API can help to provide enterprise-class experience.
Stève is really engaged with DevNet. Cisco developers program is aimed to explain, teach, and help developers worldwide how to use all available features and there are much areas of interest to cover: how to do IoT, how to work with collaboration tools or videos, how to connect and develop networks devices and features.
Mixing and infrastructure and code, you should move from full stack web developer to full stack new generation app developer.
There is plenty of tutorials, community forums and environment tours on DevNet to experiment and text Cisco technologies. In Stève’s opinion, the really hot topics involve interconnection and communication.
Modern developers, in fact, need to connect together different worlds and have to work on a mix of infrastructure and code. So their skills and knowledge should encompass different domains: hardware, networking, and software, programming all that together.
On top of this technical challenge, it comes the challenge to provide a useful and well-suited service to users and customers. This is especially true, he says, when it involves communication features. It could be not trivial to have a good quality when you bring video or chat in your apps or services, but it should. And Stève has the right mindset and experience to share with us.
His talk at Codemotion Rome 2017 was about how to properly build chatbot and voice machines (a.k.a voice interactive assistants). While, in fact, could be really simple and fast to code a bot, the real challenge starts when you aim to build a professional bot.
From Stève Sfartz point of view, you need serious programming and API architecture experience but also “bot specific” skills.
What do you need to build a chatbot? Just an API responding to events, few lines of code with a “good” framework. What means good? It depends on your needs.
Chatbots and voice assistants have a common ground on their basic flow: write a code that is ready to produce a specific response when an event occurs and deploy it somewhere. Of course you can, and usually, you must instruct your code to retrieve some external data to produce an appropriate reply to incoming inquiries.
Then it comes the hard part and it’s mostly related to how you manage your bot in production. Bots and assistants are commonly deployed on cloud or serverless services, and while it makes really easy to run then, Stève said, it could be a pain to diagnose problems and follow real-time usage. Frameworks can provide emulators to help developers in debugging activities. And developers can use chops to monitor how and what their bots are performing.
As Stève Sfartz explained during his talk, there are some specific topics to considers when working on chatbots too. First of all the experience to the end user: it’s a conversation, so developers should provide a welcome message, help commands, and fallback commands. Moreover, developers should consider a way to store the context of the conversation, to provide the proper flow of information.
The bot industry is just starting and Stève suggested some smart insight about the next stage. For instance, at present time there is no standard on providing some “about” info (who created the bot? what usage and data privacy policy?) as well as no standard to know the current status and health check.