I decided to switch my job and find a good remote job to be flexible with location and working hours. Here I’ll post a links for websites which I’m checking to find a remote job for me.

Remote OK – Probably, the best website for remote job listings.

We Work Remotely – a website from 47signals, it compliments their book called Remote

Remote.co – good website, but I just couldn’t find anything suitable for me (more…)

Once you made bot, you wonder how many people use it, what requests do they perform and if there are any errors. The easiest way is to save this data to the database, but what if you need a ready-made solution?

As I can see now, there is a bunch of services with unclear pricing models. I’ll try them next time, but now, I’ll tell about connecting your bot to google analytics.


Recently, I decided to build a smarter bot and use wit.ai platform for it. This tool integrates NLP and allows you to extract meaningful data from user messages. In other words, to make your bot more human-like. The tool looks powerful, the only problem is an absence of Java client library. So, I decided to build one. It’s built for my specific needs and tried to generalise. It covers two main API methods now, so it’s a long way to go. You could support the development with issues and pull requests. The source code could be found on github and when it will be stable, publish it to maven central. (more…)

This is the fourth post from bot series. Now I have POJOs, codecs and bot skeleton. We need to figure out how to find recipes by ingredients in a flexible way. I came up with idea that on each request, the bot will return only one recipe. A user could click on the ingredient which he wants to exclude (doesn’t have or just doesn’t want) and get a new recipe which matches updated criteria. After some tests with different approaches, I found the convenient solution: use full-text search on ingredients. MongoDB has search syntax which is similar to Google. You enter terms which you’re looking for and exclude terms with “-“. Perfect! Let’s create a text index for ingredients. (more…)

In my previous machine learning post, I described preparing data. Of course, now I realised that I did it wrong. Now I have more data and better way to prepare it. My twitter script has been running almost a year. The data it collects and what it means you could read in the previous post. So, now I have 36 google spreadsheets if tweets. I looked for good tools for data cleaning and found a nice one – OpenRefine, former Google Refine and you can see this by it’s UI. (more…)

I continue to write about telegram bot which I going to create. This time I’ll tell about initial steps, required to create Telegram bot using Java. First of all, we need to create a bot, let’s do it. There is a funny way to create it, using another bot, called Bot Father. Install it, the process is really straightforward and if you have any problems, I encourage you to look through the official documentation. At this moment you should have bot username and token, so now, let’s create Java application. (more…)

I’m continuing to tell about Telegram bot. In the previous post I described a process of scrapping, in order to retrieve data. I save my data to MongoDB and during my work I faced with some difficulties. In this post, I’ll write about codecs, which let you encode end decode your BSON data. (more…)

Now you often hear about bots and that this is future, so I decided to check it out and try to build a Telegram Bot. I’m going to make a bot which could find me a recipe from given product list. For example, those which I have in my fridge.

First of all, I was need to find a good database with recipes and if wasn’t hard because I decided just to scrap it from one of my favourite websites eda.ru 

To fill database it’s one-time task, so I decided to keep it simple, so if you’d just google ‘java website scrapper’ you quickly find the best option – JSoup library. (more…)

Some time ago, Google presented their Deep Learning algorithm called TensorFlow. The whole world has been playing with that deep dream experiment. I was not an exception.

Some time ago, Google made a Deep Learning course on Udacity I wasn’t familiar with all this complex context, so my friend recommended to take Intro to Machine learning at first. This weekend I completed three lessons, it was interesting, not so complex, except maybe, Python language, which I’ve never used.

I’ve found, that I can play a bit with Naive Bayes, it was a topic of first lesson and assignment. In short, this is most simple Machine learning algorithm, which is suitable to analyse simple text data.

After the revolution, Ukrainian tweeter has an interesting concept. Loads of tweets are marked with hashtags #зрада and #перемога which mean #betray and #win accordingly.Hard to explain, but it just like labels, when people don’t like what happens, they say “that is betray!” or opposite “It’s epic win!”

This, in my opinion, fits my task just perfect. (more…)

Recently I’ve read an article about docker. I became curious, why this new product became so popular in such short term. I can even say that it has become standard for web development.

As you may know, Docker is open source project for deployment automation. The main feature is docker containers – the container is  some kind of virtual machine with basic configuration, desired software and its dependencies. I will not try to explain all the magic that docker does, its website does it better. I started to help with the development of one nice start-up and decided to investigate, what docker could do for us.


Scroll To Top