• Lots of mobile and web applications include different geographical data – we can see maps almost everywhere. It’s very handy to use them in variant social area of everyday life – from check-in services like Foursquare to driving trackers like Carpooling or MitfahrZentrale. Giants like Google, Microsoft, Yahoo, and many others, provide useful APIs for simple operations, like drawing maps and objects on them or performing the most common calculations. As a popular framework, Ruby on Rails often is used for GIS and mapping app development. With an example from real life I’d like to show how the adding some features to your Rails app can change things and prevent troubles.


  • iOS Sport App For Soccer Fans

    14 June 2013
    By Gleb Nitsman, Senior Project Manager

    DataArt has finished an experimental iOS-based application that visually recognizes UK football clubs by their emblems. The software identifies club emblems shown on a computer or TV screen, printed in a magazine or a newspaper, or even tattooed on a fan’s chest.


  • Those who spend a lot of time at conferences, forums, and professional exhibitions know how unreliable a link during all events can be – wifi connections become virtually impossible. The reasons are well-known: big crowds of people, lots of devices, and a limited access channel. Frequent interruptions, inability to connect, prolonged delays are the unfortunate consequences of this. To show demos when a link is overloaded is a difficult task that requires a lot of patience.

    After several IT-exhibitions we decided to optimize a protocol to work under such uncomfortable and ineffective conditions, when the data required is too big and the channel too small. If there is no possibility to increase the channel or to use a multiplicity of channels, we should reduce the channel’s load.


  • Kinect to Add Vision Capability to a Robot

    07 June 2013
    By Dmitry Yakovlev, VP of Engineering

    Kinect, a well-known sensor for the Xbox 360 console is usually associated with computer games. It allows people to interact with the console by body postures, gestures, and voice commands without any additional devices. DataArt engineers attached a Kinect controller to a robot to add vision capability – this is what this story will be about.


  • Lifehack Experience: A Cat Access Device

    23 May 2013
    By Ilya Kretov, Senior Coordinator

    As a developer with long-standing experience I often ask myself: “Do I use anything I create? Could I make something useful for myself? And how could it facilitate my life and my family existence?” This R&D project for personal use appeared surprisingly when spring came.


  • LinkedIn, the world’s largest professional network with 225 million members in over 200 countries and territories around the globe, is an invaluable tool for networking. LinkedIn is able to solve many business tasks if you know how to use it and how to take advantage of the information available. Additional features make LinkedIn an indispensable tool in obtaining information about business contacts.


  • Reviewing BlackBerry 10 Benefits

    17 May 2013
    By Ivan Rikhmayer, Senior Mobile Software Engineer

    BlackBerry 10

    Recently, BlackBerry company (till January, 30 – Research In Motion) announced the release of BlackBerry 10 – the whole world is expecting a revival of the brand’s former glory.

    Our BlackBerry Competence Center assembled the best DataArt developers specialized in the platform and has already released several applications for BlackBerry 10 (with a couple more under development right now). Being able to provide strong C++, QML and Qt skilled mobile development specialists, we are capable of developing new apps as well as importing applications from Android and iPhone analogues of media, business, communication, shopping, social, tools, low level testing and other applications.

    Based on this experience, let’s take a look at the platform’s main features, benefits and perspectives.


  • Transparency in Healthcare: How It Improves Service Quality

    15 May 2013
    By Valentina Lakhina, Business Development, Healthcare & Life Sciences

    How is it with all the achievements in medicine and technology at hand, patients still fail to receive the required treatment? Surprisingly, it is often all about data… or rather, lack thereof.

    Sharing patients’ data is the keystone of understanding patients’ needs and thus improving service quality. This implies that a payer failing to equip providers with adequate patient data impedes care coordination. At the moment healthcare providers, payers and other involved parties lack transparency; this can be gained when “payers and providers develop more transparent policies and procedures for analyzing business and clinical data”, as stated by Cynthia Burghard, research director at IDC Health Insight, in her blog.

    Once the new rules have been set, it will be necessary to put theory into practice and that’s when software development firms will step up to save the day.

  • I’ve been developing Android apps for at least three years, and have also taken part in the work of DataArt Android Competence Center.

    Often, while developing Android applications, I am faced with the need to create my own components not provided by the system. It could be different handle switches, spectrum visualizers, etc. Some of them could be substituted by graphical resource replacements or by rotating the canvas by 90 degrees. But sometimes I have to build components from scratch.

    For creating the following custom visual component, I gathered all my knowledge of music theory.


  • Augmented Reality on a Gadget

    30 April 2013
    By Gleb Nitsman, Senior Project Manager

    What we typically call an Augmented Reality app on a smartphone or a touchpad device is built the following way: it captures the video stream provided by the built-in camera, transforms it, and delivers the output stream to the screen. The process of ‘transformation’ generally includes detection of a known object (marker) in the input stream, calculating its position in the 3D scene geometry, overlaying the scene with an artificial 3D model, placed at the right position and angles, and putting all this together. Depending on the application, the model can be static or dynamic, interactive or not, etc.