All posts by Elena Nimchenko

The dark side of AI

 

There are two sides to everything, including innovation.

Take AI. It can be turned to good, as discussed last week, but it can just as easily be used by the dark side.

The dark side of AI holds consequences for the real world, both socially and personally.

Stuff like dating, which I, as a 22-year-old single woman, take very personally.

An article in Gizmodo describes the Future of Online Dating and that future is brutal. Human relations are usually based on games, emotions, negotiations, etc.

Online dating itself kills some of that; you know both you’re looking and the most of the play is lost from that moment: depending on the app, you know you’re both ready for sex and maybe more — spending time together and even a relationship — otherwise you would never open the app or site, but at lease they offer some space for the fun of maneuvering.

The future of online dating looks more like breed selection when you take 2 dogs of the same breed, with genetic desirability, compatible traits and they give you nice puppies.

How? The AI algorithm will take a look at your social media, reveal a lot of stuff about you (who you are, what you like, friends, family and more; check out article for detail, it’s terrifying and depressing) and give you the perfect match.

Thank you, AI, but I prefer to remain  a messy human, after all.

AI is a big player in enabling sites to addict us to increase their revenue. More and more, AI tells us what to buy (think Amazon suggestions) and, taking a page from game makers, helps online businesses and social media increase the addictiveness of their sites through profiling and data analysis. And Miki also wrote about the dark side in When What You See Ain’t What You Get.

Because my company builds AI software for drones that take on dangerous jobs, so humans don’t have to risk their life, I’ve been talking with many people about the two sides of new technology.  All of us, including the engineers, hope AI will only be used in positive ways.

But none of us are so naïve that we believe that will happen.

AI, what’s good you have for me

 

We never know where new inventions will lead us. We tend to overestimate it in short-term and underestimate the long. We also tend to see only the positive forgetting that most everything has a dark side, too.

So just keep that in mind when we’re talking about AI – there will definitely be no robots walking around the streets in the next few years, but you can’t even begin to imagine what the world will be for you // your children // grandchildren will find themselves in 50 years.

It is because the world is so full of mysteries and technology is so unpredictable that it fascinates me so.

Today I want to talk not about the future, but about today. I really enjoy tracking the tech news, especially AI, because, as you know, it’s what my company does, so I’m actually involved.

Today I want to share some of the exciting news on the positive side of AI development; these are my top four.

We’ve gotten used to hearing about the innovative stuff that happens in healthcare – NTR Lab once worked with a local university on a project for tumor image recognition — the results were fascinating.

While serious diagnostic and treatment breakthroughs are amazing, they aren’t the health problems most of us face in our everyday life.

However, mental health is something that, while often not discussed, most of us deal with to some degree, even if it’s just a down day. That’s why I find the suicide trends tracker so amazing.

The second one I’m undecided if it’s good or bad, so writing about it is a bit confusing. Take a look at article about facial recognition.

It’s about modern AI algorithms catching crimes in crowd. I find this both scary and encouraging at the same time. It’s obviously good for public safety — finding criminals or missing people (especially children). But thinking about being tracked wherever I go and it’s not so great anymore.

Third, the way history and sociology can really benefit from using AI and related technologies in their studies, such as modern 3D models. It’s probably too early, but the idea that AI could contribute something revolutionary to historical studies, such as this effort to recover lost languages, makes me feel good —  assuming, of course, that society pays attention to the results.

Finally, if technology can empower people by getting rid of social gaps, then it has the potential to make society more homogenous and, hopefully, friendly.

Tech, such as the wearables that allow blind runners to run independently, are the future.  Maybe once there really is no difference — and I don’t mean pity, toleration or politically correct stuff — between us and people who are not like us there will be more inclusion, collaboration and even a bit more peace.

All the result of technology filling the gap.

And I find that really cool.

The Seven Deadly Sins of AI Predictions

 

I love working at NTR Lab, partly because of the people, but also because we have a huge number of AI-related projects and really a strong R&D department. It’s fun to connect what I read in the news with what is going on in my company.

I’ve written a lot about our drone team, AI, etc. But because I work with this kind of stuff I can’t avoid thinking about in a philosophical way, as I’m sure many of you do. That’s why I want to share an article from the MIT Technology Review called “The Seven Deadly Sins of AI Predictions.” 

We’ve all heard about how robots will take our jobs in few years; I’ve written about this before. Because I am just 22, this is a major concern of mine and I like to keep eye on research and the thoughts in the field.

Sometimes surfing the Internet I see scary predictions about how robots take advantage of us — it sounds so sci-fi/non-realistic, with the terrifying predictions of the future for me and my kids and, of course, Terminator music playing in the background.

The MIT article has fresh point of view that I haven’t seen before and, for me, it really makes its point.

In short, the article says that predictions of a future full of robots are based on none-information, just dreams about the Singularity.

We believe in them in a non-logical way, because living with the speed of progress has made us believe everything that sounds more or less relatable.

The author describes seven reasons as to why people are making these kinds of predictions.

I really enjoyed the way he explains complicated philosophical theories and social differences between ages and technological eras.

While most of his theses are relatively simple and recognizable (if you are familiar with the tenets of philosophy) they are well-executed and extremely readable. And the illustrations are a nice addition.

It’s a short read and well worth your time.

‘Like’ it and let me know what you think.

 

Next week we’re going to share the “recipe” of implementing AI into your product – our thoughts and experiences.

For today I would like to bring you some fun – I collected some IT-related memes just for you.

As for me, memes are now very important part of our culture, like really fast and flexible stream of everyday reflection.

Humour was always a very important part of thinking about the everyday life and its issues and I really enjoy the way it developed itself.

2eKlpt92BaY b0UJLNMYsP8 Kba3msPYKKw B1vxxdV5Fok p1zFgAHSw_Q NHhjM-G5z1o 0CbepfCpLRg

 

Indoor drone challenges SOLVED

 

Last week we talked about the inherent challenges when flying industrial UAVs in enclosed spaces. Today, I’d like to share how my company is addressing those challenges.

 

Regarding the first two challenges, i.e., the lack of GPS and the absence of radio signals: NTR’s drone is truly autonomous and unmanned. In fact, the inspector only goes inside a tank to launch the UAV or change a battery.

We accomplish this by using a combination of sonar and lidar to navigate walls and other obstacles. Precise positioning is realized using only on-board sensors  — rangefinders, optical flow, IMU, and ultrasonic — so no connection to the real world is needed.

And because one size doesn’t fit all we gave our UAV software the ability to work with any UAV frame, including drones that are ATEX-compliant.

 

Challenge 3 was the lack of light for imaging. We equipped our UAV with powerful, impulse LED lighting allowing it to shoot quality images suitable for photogrammetry and structural inspections/image recognition.

 

Next was the magnetometer problem — as in it doesn’t work. A bit of background: drones typically use magnetometers to navigate, move or turn against the 4 points of a compass.  North is usually stated as straight ahead, west is left, east is right, and south is backwards. However, the metal borders of a tank, for example, means the drone sees all directions as north, so it spins, and a spinning drone is not particularly efficient.

To fix that, our engineers removed the magnetometer and provided the drone with “eyes” in the form of 2 lidars on its head. This allows the drone to mathematically estimate its position against the wall and understand where forward and backward are; a third lidar measures height.

Currently, our drone only “remembers” its height, because the exact position isn’t needed in something like a tank. We are working on a solution that will allow the drone to remember its exact coordinates, in order to return to that exact place after battery replacement or the end of a shift.

 

The fifth challenge was providing the maneuverability required in tight spaces.

Drones may not feel, but they still make every effort to avoid hitting obstacles and walls that would damage it. Logically, the more precise the positioning the more effective it is functioning in tight spaces and avoiding accidents.

Our engineers did two things: they improved the algorithms and lowered the weight. They did this by equipping it with a 3-axis gimbal and powerful controllers, so it could operate longer. They also integrated systems, such as optical flow (optical navigation) or SLAM (simultaneous location and mapping), in its “brains.”

 

Our final challenge concerns environments full of edges and obstacles. Again, some background: optical flow is best used for environments with plain surfaces, such as tanks or tubes — metal walls and nothing else — then it is as simple as using a computer mouse; left is left and right is right. I find it amazing that the laser tech is the same in something as common as a mouse and as exotic as a drone.

However, when edgy surfaces are added — in a warehouse, ship tank, living room — optical flow is almost useless, because the drone will be unable to locate the corner and turn.

If SLAM algorithms are integrated into the UAV’s software it is more likely to locate the corner and turn. It does so by estimating and then predicting how the surrounding environment looks, constructing or updating a map of the unknown environment, and simultaneously keeping track of what’s going on around it. That said, SLAM is not as simple as it seems and requires almost total reconstruction of the drone.

That’s what we are working on now and will release soon. I look forward to sharing it with you. Keep in touch!

Distributed team: making hardware happen

 

As I mentioned last week, NTR has a new department dedicated to developing hardware for several clients around the world.

Yes, I said hardware. For years software was everything; even some of my friends were surprised when I mentioned we are supplying distributed teams to build hardware. They said, “What are you building? Why do startups (our main clients) need new hardware?”

I said, “Think UAV, AKA, drones.”

Xt_41xdB_Y8

Our hardware department was originally formed to do a major UAV project, along with some IoT and robotics projects. The department consists of Sasha, the team lead and lead engineer/developer and AI/computer vision specialist, Andrey, lead engineer and embedder, another Andrey, a hardware engineer and 3D printing and modeling specialist, Ruslan, engineer and embedder, and Lesha, a junior engineer, who is learning machine learning.

It all started when a long-time Dutch client came up with a new startup idea and came to NTR to make an MVP of it. The idea was to use drones for the technical inspection of oil tanks.

You see, oil tanks must be inspected for tech problems every 10 years. The process is very time-consuming, costly, and, most importantly, very dangerous for the human inspector.

WP_20170504_14_51_07_Pro[1] (2)
This is how oil tanks look from the inside. The first drone’s field testing

It’s been a very challenging project, because the steel tank’s borders are reflective, which means they reflect all commonly used types of signals — GPS, Wi-Fi, BlueTooth or radio — so the UAV must do everything on its own, which means the implementation of fully coated surface flight algorithms and obstacle flight algorithms. 

And to make it even more difficult there is a serious lack of light meaning it’s extremely challenging to shoot high resolution quality images.

Снимок434
This picture was taken by drone

Worse still, Ruslan was seriously injured in car accident and spent several months in the hospital, but he’s OK now and back to work.

Accomplishing all this turned out to be far more difficult than anyone expected! It doubled our original estimate, but the scientific interest was so strong that NTR decided to complete the project ourselves. The result is that on our own we built a drone that is close to DARPA FLA  requirements among commercial drones, which is something we are very proud of!

Here’s a few videos of our drone in action.


Just checking the world tech news I’m amazed at how fast progress is. A few years ago we didn’t know what a drone was (except in sci-fi) and today we get packages from Amazon drone-delivered, DHL does drone-based medicine delivery service in Germany, Google is testing its own drone-delivery service in Australia, Walmart uses drones to inventory its warehouses, the United Arab Emirates is working on a system to use drones to transport government documents, military uses are beyond counting, and both Walmart and Amazon sell drones to consumers.

So, how does it feel to be a part of something that big and fast-growing?

Mindboggling and majestic.

Distributed team: process overview p.2

 

Distributed team: process details

Last week I shared an overview of NTR’s process, because, in the final analysis, no matter how talented the techs or smart the founder, anything goes better with a solid plan.

My boss is always saying, plan equals process, but I think of process more like a map that shows how to get from here to there.

We covered the first two steps — understanding your vision, market and biz, and the necessary paperwork — yesterday, so let’s get to the interesting stuff.

When it comes to software development, we offer three engagement options:

  • Project
  • Virtual Offshore Development Center (VDC)
  • Dedicated Offshore Development Center (DDC)

Here is what is involved with each:

Project involvement.
When requirements are well-specified and detailed we can work with you on a fixed-cost, project-based premise.

This means that you provide us with a detailed requirements document for the software and based on that we estimate the project in detail, factor in the development risks, and provide you with a fixed cost/fixed time proposal.
Substantial requirements changes will trigger change management procedures, including contract renegotiation if necessary.
We are responsible for project management, while QA can be on either side.


VDC (time-and-materials)
The development team is flexible, based on your needs. 

We track all developer working hours and bills are based on those reports. Invoices w/timesheets are submitted by email or online access and paid monthly.

Project management and QA can be on either side.
VDC is suited for fast-paced environments where the time to renegotiate a contract is too costly in terms of both deadlines and money.


DDC (dedicated staff)
The team is stable — works only on the clients business — allowing it to build a deep competence in the customer’s product, needs and processes.

We usually work iteratively and you pay either for each iteration based on time and material reports or a fixed monthly amount.

NTR offers two development process options, depending on the specific situation

  • Agile
  • Rational Unified

 

Agile process, typically SCRUM-based
Agile rests on four main iterative activities (listening, designing, coding and testing) with the following process highlights:

  • continuous customer interaction;
  • continuous testing;
  • early feasibility studies;
  • early prototyping;
  • early detailed software design;
  • early functional software;
  • gradual feature addition.

Typical activities include:

  • daily status meetings
  • planning reminders
  • code reviews
  • unit testing
  • weekly customer demos

Rational Unified process
A four-phase approach (inception, elaboration, construction and transition):

  • starts with business needs and context analysis;
  • produce the project plan and description;
  • consider challenges and basic architecture;
  • create development plan;
  • write the code;
  • complete all necessary testing and feedback-driven adjustments. This includes all customer-specific options.

Step 3

The quality and efficiency of your experience with any kind of remote work is heavily dependent on the quality of communications that facilitates the teamwork.

We use a variety of communications technology, combined with written documentation that avoids misunderstandings, mishearings or memory lapses.

As I keep saying, communications are paramount. Together we choose the optimal communication tools we set up

  • a rhythm of daily or weekly meetings, along with whatever additional communications are needed;
  • a solid online project management tool or issue tracker;
  • a tool to collaborate and share all sorts of documents about the product; and
  • tools that allow effective distributed collaboration for engineering activities.

Step 4

When applicable we build a UI prototype.

We make an interactive prototype, correct and change it depending on customer feedback, and only after that do we make the real prototype.

Step 5

Each project has a project manager and lead developer. We start coding when the spec is decided using the agreed upon development method (Agile or Rational Unified)

Step 6

We move to small one- or two-week iterations sequentially increasing the functionality of the application.

Step 7

We use a variety of technology to track errors and store the code on GitHub to facilitate full integration.

Step 8

We build effective tests into the planning process at the start, because that is the best way to assure quality and prove your application is ready to launch. Testing includes setting up measurement tools, including KPIs, if applicable.

We have our own team of QA engineers. They conduct both manual and automated testing as needed.

Step 9

Launching is always a multi-faceted process. We make sure that the marketing build-up, actual product launch, and data migration (if applicable) occur at the same time.

Step 10

Comprehensive Support

After product delivery we provide support, warranty bug fixes and usually continue developing future versions, allowing you to focus on market and monetization.

These are the details of our development process — from the seeds (AKA paperwork) to the beautiful flowers (product delivery) and berries (comprehensive support).

As NTR’s business development manager I don’t really need to know these details; even when I work with potential clients these details are beyond our typical conversation — they belong to our accounts and tech guys.

But I believe that what really distinguishes great workers from OK ones is the will to do and learn and know more.

For me, understanding how things go from idea to solid code, per aspera ad astra, really helps me  integrate into the very living essence of your company, to really feel part of it, not just a contractor, but someone who helps your dream grow and blossom — like a bee to the flower. Maybe that sounds corny, but it is how I feel.

Join me next week when I start sharing stories about our departments, people and especially the newest part of NTR — hardware. You’ll have fun. Bye!

Distributed team: process overview

 

Last week I quoted something a client said to me, “give a fool a tool and you still have a fool — they need to be used correctly.”  

I do business dev for NTR and when potential clients ask the “process question” it means they are seriously interested. It also means my response can make or break the deal.

When I first started working in IT I found it surprising that everyone wanted to know how we work. I thought that was weird, because everybody works the same way. Boy was I wrong.

People who work in IT know there is this special atmosphere of creation — developers discussing how to implement unusual features you never think about; their jokes that nobody else understand, QA department guys pretending to be a bus to test a new feature (how accurate is the bus timing in a navigator app), flying drones around the office; lots of turmoil and lots of excitement.

The atmosphere is inspiring even when it’s a bit childish. The project managers tell me that it’s a process in which they must carefully balance the creative forces, while avoiding chaos. 

NTR’s process has been developing for 16 years and continues to iterate. Probably because we have grown from the original little team of friends to 12 teams with 100+ developers working together on really large projects for both major customers and dozens of startups and from all over the world.

So our basic process must be really solid, well-curated, and fully customizable in order to deliver the best results for our clients and be proud of ourselves.

The first step is in getting to know your business; we take time to understand you market, its pain, your solutions, and how we can help tame the idea a reality.

Every engagement starts by signing a binding NDA-NCA-NSA. The reason for NDA is kind of obvious. Non-compete agreements (NCA) ensure that we don’t walk away and start a business competitive to yours, while non-solicitation agreements (NSA) mean two things. First, that neither of us will solicit each other’s customers directly, and, secondly, that neither side will poach each others employees.

Once the paperwork is done, there are three main engagement options:

  • Project-based
  • Virtual Offshore Development Center or VDC (time and materials)
  • Dedicated staff

And a choice of two development options depending on the specific situation:

  • Agile process
  • Rational Unified Process

Once these choices are made we build a UI prototype when it’s applicable.

The next step is an interactive prototype, discussed, corrected and modified depending on client feedback; only then do we build the real prototype.

Each project has its own project manager and lead developer.

We set up measurement tools and store the code on GitHub to facilitate full integration.

Our quality team conducts both manual and automated testing to ensure your product is ready for launch.

Because launching is a multi-faceted process, we make sure that the marketing build-up, launch of the product, and data migration (if applicable) occurs at the same time.

Finally, we provide comprehensive support.

Next week I’ll go into more detail on the how and why of the choices above.

Distributed team: what about the tools?

 

Most people, especially those who work in tech, and most especially Millennials like me, really like where we work — if we didn’t we would leave and work somewhere else.

I know from all the recruiters who contact me that I could move easily and probably for a little more money.

So why do I stay? Because I love the way NTR does business. I may not have a lot of work experience, but I have been on the receiving end of companies whose sole interest is taking my money and not giving a damn once they have it.

I know from chatting with people in other countries that the attitude isn’t unusual no matter how many times they say “you are very important…”

And that’s why I stay, because NTR isn’t like that.

Nick and Anton (our founders) have spent 16 years “improving the customer experience,” as they say at Amazon.

Over those years they developed a really good process and continue to tweak it, constantly evaluating the tools to be sure we use the best ones for the job, incorporating new tech because it’s better — not just because it’s new.

So let’s take a look at the tools.

 In the course of a series on outsourcing last year the importance of good communications was prominent with everyone we talked to.

Because our project managers all speak and write competent English, we can use a variety of different communications tech, partially dependent on client preferences, combined with written documentation that avoids misunderstandings, mishearing or memory lapses.

There are many tools available, so we set up

  • a rhythm of daily or weekly meetings by Skype, Slack, Google Hangouts etc.,
  • continue with online communications beyond the scheduled meetings;
  • a tool to collaborate and share all sorts of documents about the product (Google Docs, Confluence);

However, as critical as good communication with clients is it’s still not everything. Teamwork tools are also extremely important, since we are communicating across time zones. So in addition to Skype, Slack, and Google docs, we add

All of the tools we use are cloud-based, so our clients can work from anywhere.

Tech tools are great, but, as a client said to me, give a fool a tool and you still have a fool — they need to be used correctly.  That means they need to integrate smoothly into whatever process is being used.

NTR’s process is what truly sets us apart, as I will explain in detail next week.