Live data from Hacker News

Building a chatbot on Facebook Messenger with Ruby on Rails

tutorials.botsfloor.com

11–20 of 25 posts

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#11
post #5

Earlier quoted context omitted.

Because they are currently somewhere near the maximum in the hype cycle. https://en.wikipedia.org/wiki/Hype_cycle

Is it just a hype, or is there any real advantage for the user? From the point of view of the interaction, why should I chat with a bot instead of using a more classical gui? I'm asking because i teach ux/hci, and a student just asked me to be her supervisor for a chatbot based interface, and I'm trying to understand if - in a user centered perspective - this approach makes sense

I think there are a few benefits of using chatbot over another user interface type.

1- Being where your customers are. If you are planning on leveraging a chatbot as opposed to a mobile app or website, having some kind of presence of Facebook messenger could increase user engagement because of the lower amount of friction from switching or downloading new apps to interact with a business. It's especially relevant when you consider that social platforms are used for customer support more and more so augmenting this channel with some kind of automated support option makes sense from an ROI perspective.

2. Simpler user experiences. Now this one is definitely idealistic, and where a lot of hype is coming from. But, the general idea is to take websites and mobile apps and create a single interface into the content/services where the hope is that users will have a lower learning curve because they can use everyday language. In reality, bots that I've seen are mostly text based IVRs that confuse the users, and don't make experiences any more enjoyable.

3. Personalization and NL analytics. Assuming your chatbot allows for free form text. You could potentially build more comprehensive profiles of users by mining their conversations and behavior. You could certainly do this today with web and app metrics, twitter posts, support emails, and transcribed voice calls, but now you have a Facebook or social profile tied to a customer which is another dimension of data you can use where in the past you may have had no linkage between your app accounts vs a users social profile.

By no means a comprehensive list, and if you incorporate voice recognition on top of a "chatbot", you can provide an easier way for users to interact with systems when they may not be able to use their hands (driving, lost an appliance remote, running)

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#12
post #4

Erm .. what is the point of Rails here? This can be done with Rack, Sinatra, Node, Go. I really like Rails, but I get a bit annoyed when people use it everywhere even where it is not a good fit e.g. no need of activerecord, no server side templates or other 70% of Rails feature set, it is all just there adding to bloat without any usage.

I agree!

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#13
post #4

Erm .. what is the point of Rails here? This can be done with Rack, Sinatra, Node, Go. I really like Rails, but I get a bit annoyed when people use it everywhere even where it is not a good fit e.g. no need of activerecord, no server side templates or other 70% of Rails feature set, it is all just there adding to bloat without any usage.

ActionCable!

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#14
post #5

Earlier quoted context omitted.

Because they are currently somewhere near the maximum in the hype cycle. https://en.wikipedia.org/wiki/Hype_cycle

Is it just a hype, or is there any real advantage for the user? From the point of view of the interaction, why should I chat with a bot instead of using a more classical gui? I'm asking because i teach ux/hci, and a student just asked me to be her supervisor for a chatbot based interface, and I'm trying to understand if - in a user centered perspective - this approach makes sense

I assume we're talking about chatbots on phones.

For the users the advantage is that they don't have to install anything. The disadvantage is that it's a more crude UI than a full fledged app or a modern mobile website but that can be hidden by a good design.

However a conversational UI mostly flows in time with little memory (scrolling and searching are possible but not user friendly), whilst apps/desktop/websites mostly spread in a 2D space. The design of the interaction is very different. Just try some mockup tools for chatbots and you'll find it out quickly.

There are advantages for developers too: it's easier to develop a chatbot than an app (unless you go very deep in AI), as much as it was to develop a web app than a desktop one. It costs less, it delivers earlier, it can be updated 100 times per day without app store approvals.

Edit: s/full fledged API/full fledged app/

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#15
post #9

For those of you who are interested in chatbots and Ruby, we open sourced Clarke, the framework we are using at Applidium to architecture them: https://github.com/applidium/clarke And if you're more interested in the thought process behind, we did a presentation of what led us to this architecture https://docs.google.com/presentation/d/1kGiHfMMjf-OL7ZUODttu... If you have any question or feedback they're very welcome…

Is it possible to develop chatbot on any of the messaging platform using Clarke?

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#16
Even if I'm an happy Ruby developer,

I feel that realizing a chatbot

- in a standard programming language (Ruby),

- with a standard framework (Rails),

- for a specific channel (Messenger),

is an ERROR, in the long terms.

BTW, I realized naif, my personal micro framework just to build chatbots in Ruby (see slides: https://github.com/solyaris/naif), nevertheless, I decided to NOT publish the code and no more deepen what I call the "hard-coded" way,

instead I suggest to use and support a chatbot scripting (meta)language. About rationales, I wrote a bunch of articles: www.medium.com/@solyarisoftware

I support opensource great ChatScript (https://github.com/bwilcox-1234/ChatScript/) and BTW I wrote simple client in Ruby (https://github.com/solyaris/rChatScript/)

My two cents

giorgio @solyarisoftware

Re: Building a chatbot on Facebook Messenger with Ruby on Rails

#20
post #4

Erm .. what is the point of Rails here? This can be done with Rack, Sinatra, Node, Go. I really like Rails, but I get a bit annoyed when people use it everywhere even where it is not a good fit e.g. no need of activerecord, no server side templates or other 70% of Rails feature set, it is all just there adding to bloat without any usage.

You can run rails without active record, you use it in API mode as well.

Go is a language not an application framework. So that's not a fair comparison.

You get a lot of nice things right out of the box with Rails so it's a good choice for many projects.

Node isn't a framework or a language, it's a runtime environment. You'd still have to write a Javascript application.

With Rails you get rapid development speed and you can just use the pieces you want.

You could argue that writing this sort of app in Swift is a good choice as well.

As far as bloat.. what's the actual consequence? A slightly bigger deployment? It's negligible in terms of real world consequences and offset by the convenience of Rails conventions.

Post reply on HN