• ANPR using RoR & React Native

    Danny Krastev, Mirabbos Umarov, Ekaterina Menshenina, ITMO University, Info communication Systems, Computer Science. 2019

    image

    Abstract


    Due to the never-ending increase in volume of vehicles surrounding our daily lives, Automatic Number Plate Recognition (ANPR), has become an evolving solution for managing and monitoring vehicles worldwide to enforce rules and prevent criminal activities, such as parking violation, red light violation, speeding, and vehicle theft. Although there is already a variety of public and private methods and libraries that have been developed and are used to achieve the automatic recognition of car license plate numbers around the world, there has not been much focus on making advancements toward a cross platform ANPR solution that supports all vehicle license plates worldwide. This paper introduces the Plate Vision project, a web and mobile application built on Ruby on Rails and React Native, which aims to serve as an alternative ANPR platform that supports detection of all license plates worldwide by utilizing various open source optical character recognition (OCR) libraries and making efficiency optimizations.

    Key words and phrases: ruby, rails, react native, license plate recognition, plate region extraction, optical character recognition (OCR), ANPR.
    Read more →
  • How to make possible micro-payments in your app

    This week I spent coding my very first public pet-app based on Telegram chat bot which acts as a Bitcoin wallet and allows to send and receive tips between Telegram users and other so-called “Lightning Apps”. I assume that you are familiar with Bitcoin & Telegram in general, i’ll try to post short and without deep jump into details. More resources about Bitcoin can be found here and Telegram is simply an instant messenger that allows you to create your custom apps (chat-bots) using their platform.


    What are the key points of such app?


    • Allows to rate other users ideas and answers with real value instead of
      ‘virtual likes’. This brings online conversation to completely new level
    • Real example of working micro-payment app which can act with other entities
      over internet using open protocol
    • All the modules are open-source projects and can be easy re-used and adjusted
      for your own project. App does not relay on third-party commercial services.
      Even it falls under e-commerce field, which is currently almost closed, the app
      is based on open solutions.

    What are the use-cases?


    something like this…

    image
    Read more →
  • Automatically obtaining SSL certificates by Let's Encrypt using DNS-01 challenge and AWS

    This post describes the steps needed for setting up automatic SSL certificates creation and renewal, using Let's Encrypt as the automated Certificate Authority, which provides a well-maintained API.
    acme-dns-route53 is the tool to obtain SSL certificates from Let’s Encrypt using DNS-01 challenge with Route53 and Amazon Certificate Manager by AWS. acme-dns-route53 also has the built-in functionality for using this tool inside AWS Lambda, and this is what we are going to do.

    Read more →
  • How to Develop A User-Friendly Application



    Mobile apps are necessary for every business today. They are the tools that bridges the gap between consumers and business, makes it easier for clients to view the trends, and offers an easy chance to the consumers to know the business in person. Having so many advantages already, why it is important to keep app’s user-friendliness as one of the most important points?

    There are a number of reasons for developing a user-friendly mobile application. The users today are more eager to have a superb experience while browsing through the application. And for the same reason the UI and the app UX holds prominence for every mobile app development company. No matter how successfully your app has been designed, it is important to offer a unique browsing experience to the users.
    Read more →
  • What is a coding bootcamp?

    A coding bootcamp is a program of technical training teaching the programming skills that employers are looking for. Coding bootcamps allow students with low skills to concentrate on the most significant coding aspects and apply their new coding skills to solve real-world problems.

    The goal of many bootcamp coding attendants is to move into a web development career. They do this by learning to build applications at a professional level – providing the foundation they need to build applications that are ready for production and demonstrating the skills they have to add real value to a potential employer.
    Read more →
  • Quality as Team's responsibility. Our QA experience

    Disclaimer: This is a translation of an article. All rights belongs to author of original article and Miro company.


    I'm a QA Engineer in Miro. Let me tell about our experiment of transferring partially testing tasks to developers and of transforming Test Engineer role into QA (Quality assurance).


    First briefly about our development process. We have daily releases for client side and 3 to 5 weekly releases of server side. Team have 60+ people spitted onto 10 Functional Scrum Teams.


    I'm working in Integration team. Our tasks are:


    • Integration of our service into external products
    • Integration of external products into our service
      For example we have integrated Jira. Jira Cards — visual representation of tasks so it's useful to work with tasks not opening Jira at all.

      image

    How the experiment starts


    All starts with trivial issue. When someone of Test Engineers had sick leave then team performance was degraded significantly. Team was continued working on tasks. However when code was reached testing phase task was hold on. As a result new functionality didn't reach production in time.


    Going onto vacation by Test Engineer is a more complex story. He/she needs to find another Test Engineer who ready to take extra tasks and conduct knowledge sharing. Going onto vacation by two Test Engineers at the sane time is not an applicable luxury.

    Read more →
  • NodeMCU simple driver model (SDM) showcase: dynamic user interface

    image


    NodeMCU is an interactive firmware, which allows running Lua interpreter on the ESP8266 microcontroller (ESP32 support is in development). Alongside with all the regular hardware interfaces, it has WiFi module and SPIFFS file system.


    This article describes the new module for the NodeMCU — sdm. SDM stands for simple driver model and it provides device-driver model abstraction for the system. In the first part of this article we will discuss the model itself and in the second part will be a showcase of dynamically created web user interface using sdm with some commentaries.

    Read more →
  • 10 critical skills every DevOps engineer

    What is DevOps and Why is it important?


    DevOps is the combination of Development teams and Operation teams in order to create a business with traditional software development practices. DevOps gaining popularity at a rapid pace. Let's see how DevOps helps the delivery of Software products.

    When the development and operational teams are inseparable silos, it makes development life cycles longer due to lack of communication and cooperation between two teams. By merging those two we can make software development shorter cycles.

    DevOps is not a profession. It's culture. It builds teams and makes engineers work for a common goal rather than individual performances. This leads to better collaboration and increased efficiency.

    More importantly, DevOps reduces rollback failures, Rollbacks and give time to recover. The main characteristic of DevOps. This helps to find bugs and failures quickly giving rise to rectify bugs or recover from failures.
    Read more →
  • The effectiveness of the marketing funnel AARRR

    AARRR stand for:

    • Acquisition.
    • Activation.
    • Retention.
    • Revenue.
    • Referral.

    AARRR (also called the Pirate Metrics) describes the sales funnel. At the top of the funnel are visitors who only saw your application, or just downloaded it and still do not know how they will interact with it. Next, visitors are registered — of course, if it is provided by the functionality of the application.

    Now they (you can start calling them users) reach the moment when they have to understand the value of the product and decide to remain its user, i.e. start buying some services, recommend the application to your friends and, in general, constantly return to the application for any purpose, or delete it from mobile device.

    You will not have another chance to impress the user!

    The AARRR framework forces developers to measure their sales funnel numerically. At every stage.
    Read more →