Author - Alexandr Kalinin

High performance development

Good software systems are all alike; every bad system is bad in its own way.
Leo Tolstoy about software engineering.

Every stakeholder dealing with software development sooner or later tries to answer the question. 

  • Is my development process goes right? 
  • How to measure it and express it in terms of numbers?
  • How to make these measurements less subjective and turn into KPI tool?

The reason and context concerning the arousal of these questions can be different, for example:

Read More

Migration From DialogFlow to RASA: the missing part

Implementing DialogFlow chatbots is cool and convenient if you have something trivial and easy to prototype: fancy UI – easily, extracting base entities like name, surname and phone number – here is a tool if don’t want to install and deploy – cloud solution is at your service.
But what if you need to go deeper:

– Do you have a Japanese tokenizer, dear DialogFlow?
– Nope
– Transparent and customizable intent classification tool?
– Sorry, guys.
– Also I want to integrate my search index, knowledge graph and custom dialogue management policy.
– What are you talking about?

In a nutshell if you want fully controlled system, if you need custom advanced AI in your app, if you need natural language processing in your chatbot pipelines, if you want to scale your chatbot behaviour – on-premise solution is the way for a chatbot developer. And here it’s Rasa framework that really shines.

Read More

Predicting product item category in 10 lines of code

Why on earth?

If you somehow deal with storing or processing any kinds of goods – than a problem of assigning a category set to your product items will arise sooner or later, and the problems may be the following:

  • You are running a web-store, and you want to facilitate a user to navigate your site and search items with help of categories.
  • You have a dataset with items that miss categories mapping, and you want to do some research on aggregated clusters of products.
  • You are going to introduce a recommendation system in your online-store, and you want it to take categories into account for more precise predictions.
  • All other cases when you need categories, but don’t have them.

Of course – the most straightforward solution is to develop your own categories classification and assign a category to each product item manually, but that’s not always the case – because you may not have a ready-to-use inventory of categories, and you need to do the following:

  • create a set of categories by yourself
  • assign a suitable category to each item, predicting it from its name.

Gonna do the stuff? Quite hard, isn’t it? But fortunately we have a plan:

Read More