Pull to refresh

All streams

Show first
Rating limit
Level of difficulty

Windows Native Applications and Acronis Active Restore

Reading time9 min
Views1.9K
We continue telling you about our cooperation with Innopolis University guys to develop Active Restore technology. It will allow users to start working as soon as possible after a failure. Today, we will talk about Native Windows applications, including details on their development and launch. Under the cut, you will find some information about our project, and a hands-on guide on developing native apps.

image
Read more →

Service for Active Restore or the Story of an Industrial Project at Innopolis

Reading time8 min
Views1.2K
Hello, Habr! My name is Roman. Today I would like to share a story of how we at Innopolis University developed a test stand and a service for Acronis Active Restore system, which will soon become part of the company’s product range. Those interested to know how the University builds its relationship with industrial partners are welcome to click the «Read More» button.

image
Read more →

Deploying Tarantool Cartridge applications with zero effort (Part 2)

Reading time11 min
Views1.5K


We have recently talked about how to deploy a Tarantool Cartridge application. However, an application's life doesn't end with deployment, so today we will update our application and figure out how to manage topology, sharding, and authorization, and change the role configuration.

Feeling interested? Please continue reading under the cut.
Read more →

Active Restore: Can we Recover Faster? Much Faster?

Reading time5 min
Views1.7K
Backing up valuable data is a proven practice, but what if we need to continue work immediately after a natural disaster or other disruptive events, and every minute is important? Our team at Acronis decided to see how quickly we can start an operating system. This is our first post from the Active Restore series. Today I will tell you how we launched our project with Innopolis University, which solutions were studied, and what we are working on today. All the details are under the Cut.

image
Read more →

This is how you deal with route leaks

Reading time2 min
Views2.8K
That, we must say, is the unique story so far.

Here’s the beginning: for approximately an hour, starting at 19:28 UTC on April 1, 2020, the largest Russian ISP — Rostelecom (AS12389) — was announcing prefixes belonging to prominent internet players: Akamai, Cloudflare, Hetzner, Digital Ocean, Amazon AWS, and other famous names.

Before the issue was resolved, paths between the largest cloud networks were somewhat disrupted — the Internet blinked. The route leak was distributed quite well through Rascom (AS20764), then Cogent (AS174) and in a couple of minutes through Level3 (AS3356) to the world. The issue suddenly became bad enough that it saturated the route decision-making process for a few Tier-1 ISPs.

It looked like this:

image

With that:

image
Read more →

Turns out internet businesses are sustainable during pandemics. Why? Home Office DNA

Reading time5 min
Views1.6K
“In 1665, Cambridge University closed because of the plague. Issac Newton decided to work from home. He discovered calculus & the laws of motion.”

We live in a truly remarkable moment. With the year 2020 and the COVID-19 outbreak employees all over the world are staying home for quarantine, trying their best to sustain the normal flow of life, which means continue working. And this is something new compared to all the previous infectious pandemics humanity has survived through — this time we have the Internet.

Read more →

Self-Development: How I Couldn't Wear Two Hats and Found Third One

Reading time18 min
Views2.6K


Hi all! I lead antispam team and several machine learning teams at Mail.ru Group. The subject of this article is self-development for team leads/managers. But in reality many techniques and recipes do not depend on the role at all. This really concerns me because machine learning is developing extremely fast, and it takes a lot of time to stay up to date. So the question about what should be done for development and how is quite topical.

Of course, the content of this article is not the ultimate truth but just a description of the results of my continuing quest. It tells about approaches based on books and workshops, trials and errors, which have worked for me. It'll be good to have a discussion with you in comments.
Read more →

What does «clean code» mean in 2020?

Reading time9 min
Views6.6K

«Clean Code» and a clean cat

There is nothing developers enjoy better than arguing about clean code: Dan Abramov, for example, has recently fueled the hype with his blog post, «Goodbye, Clean Code».

However, “clean code” per se doesn’t even have a clear definition. The main book on the subject is Clean Code, where Robert «Uncle Bob» Martin states that there are perhaps as many definitions as there are programmers. But he doesn’t walk away from the fact with a conclusion that there’s no reason to discuss clean code, rather — compare several definitions and highlight general ideas. Therefore he cites the views of several outstanding programmers on what clean code is.

So we have also become interested in what people in 2020 think of clean code. Have the views changed since the publication of the book? Do opinions vary in different IT fields (maybe backend developers perceive the idea of clean code differently from testers)?

This spring, Uncle Bob comes to St. Petersburg to give talks at our three conferences: they are about .NET development, testing and JavaScript. Therefore, we’ve asked speakers from each of those conferences to share their opinion on clean code so we could compare the opinions of the industry experts in 2020.

We've already published the results in Russian, and here's the English version. Since the topic is known to provoke discussions, feel free to give your own definition or argue about those already given!

UPD: When we posted this article, Uncle Bob had our conferences in his schedule. Unfortunately, the situation has changed. We updated this post on March 12, to avoid any misunderstanding.

Read more →

Fault Tolerance Web Architecture for Our Cloud Solutions

Reading time10 min
Views3.3K
image

Hi Habr,

I'm Artyom Karamyshev, a system administration team leader at Mail.Ru Cloud Solutions (MCS). We launched many products in 2019. We've aimed to make API services easily scalable, fault-tolerant, and ready to accommodate rapid growth. Our platform is running on OpenStack, and in this article, I describe all the component fault tolerance issues that we've resolved.

The overall fault tolerance of the platform is consists of its components fault tolerance. So, I'm going to show you step by step tutorial about all levels where we've found the risks.
Read more →

Google Interviewing Process for Software Developer Role in 2020

Reading time6 min
Views84K

Hello! I just finished interviewing with Google and wanted to quickly catch you up on some interesting and frustrating steps of the process so that you can understand what to expect from Google interviews and the steps involved. I will also share some tips on how to prepare for the interview and mistakes to avoid.

If you’re looking for a success story, this is the wrong post for you. I actually failed the interviewing process, but the whole experience was pretty interesting for me and leads me on to another stage of my career. I will share more details on this at the end of the post. All names and identifying details have been changed to protect the privacy of Google employees.
Read more →

Inside ITMO University: The robotics lab

Reading time4 min
Views1.8K
The Department of Computer Science and Control Systems at ITMO University houses a robotics lab. In this article we’ll take a look at the projects its staff is working on, and show you the machinery on site: industrial manipulator robots, robotic hands and dynamic positioning system testing equipment.

Read more →

Tips and tricks from my Telegram-channel @pythonetc, January 2020

Reading time3 min
Views1.5K


It is a new selection of tips and tricks about Python and programming from my Telegram-channel @pythonetc.

Previous publications.


The order of except blocks matter: if exceptions can be caught by more than one block, the higher block applies. The following code doesn’t work as intended:
Read more →

Hypercube. How we gave developers test devices without losing any

Reading time11 min
Views5.1K
You can’t properly test and debug mobile apps without test devices, which there should be plenty of considering how the same code may behave differently on different models. So how do we keep track of these devices? How do we quickly provide developers and testers with the smartphones they need, configured the way they need, and without much red tape?

I’m Alexey Lavrenuke. Over the years, I’ve worn many hats: one of the authors behind Yandex.Tank, a speaker on load testing, and the guy who calculated energy consumption by mobile phones. Now I’m a Yandex.Rover developer on the self-driving car team.

After the phones and before Yandex.Rover, there was Hypercube.

A few years ago, the head of mobile development popped in to the load testing department and mentioned a problem they were having with test devices: phones had a tendency to inexplicably migrate from one desk to another. Picking the right device and then finding it had become a challenge. We already experienced working with mobile devices from building a digital ammeter to calculate energy consumption, so we decided to help our coworkers out and quickly rig up a handy contraption. We figured the whole thing wouldn’t take more than three months. Oh how wrong we were. Let me tell you what we were really in for.


''Dallas cube''
Read more →

Making a demo for NES — HEOHdemo

Reading time26 min
Views5.8K
There is a lengthy history of computer arts festivals, also known as demo parties, held in Russia over the last quarter century. For decades, once in a while people from all over the country gather together to compete in their ingenuity at getting what was once deemed impossible out of the old or new computer hardware and mere bytes of code. A few leading annual events has been established in the early years. One of them, creatively named CAFe (an acronym for Computer Art FEstival), was held in Kazan from 1999 to 2003. It went under the radar since, making the way for the everlasting Chaos Constructions (1999 — now) and DiHalt (2005 — now). After so long hiatus, the last year CAFe made a loud comeback, returning in full glory — at least by the number of prods released, if not in the scale of the event itself. Presentation of the compo entries went far into the night, with the last demos being shown at 6 AM to the popping eyes of the few hardy ones. There was my demo, too, and this is the story of its making.

Read more →

Full disclosure: 0day vulnerability (backdoor) in firmware for Xiaongmai-based DVRs, NVRs and IP cameras

Reading time6 min
Views97K

This is a full disclosure of recent backdoor integrated into DVR/NVR devices built on top of HiSilicon SoC with Xiaongmai firmware. Described vulnerability allows attacker to gain root shell access and full control of device. Full disclosure format for this report has been chosen due to lack of trust to vendor. Proof of concept code is presented below.
Read more →

Weekend Picks: light reading for STEM majors

Reading time4 min
Views1.4K
The weekend is upon us, and so is the paralysis that comes with having nothing to do. Fear not, our editorial team picked 9 books on science and tech worth picking up on a cold winter day. You’ll learn about the history of space exploration, join a physicist on a surprisingly science-appropriate hike, and more.

Tips and tricks from my Telegram-channel @pythonetc, December 2019

Reading time2 min
Views1.6K


It is a new selection of tips and tricks about Python and programming from my Telegram-channel @pythonetc.

Previous publications.


Different asyncio tasks obviously have different stacks. You can view at all of them at any moment using asyncio.all_tasks() to get all currently running tasks and task.get_stack() to get a stack for each task.
Read more →

Tesla Cybertruck copy was spotted in Moscow. This is a customized… Russian LADA Samara

Reading time2 min
Views5.6K
image

Hi Habr! Just noticed that this funny article exists only in Russian, so I’ve decided to translate it to English with some light modifications. Please enjoy!

Few days ago Tesla Cybertruck replica has been spotted on the roads of Moscow. The design of the electric pickup presented by Elon Musk can't be confused with anything else.

Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel

Reading time6 min
Views2.4K


In the PHP ecosystem, there are currently two connectors for the Tarantool server: the official PECL extension tarantool/tarantool-php written in C, and tarantool-php/client written in PHP. I am the author of the latter one.

In this article I would like to share the results of performance testing of both these libraries and show how you can achieve 3x-5x performance improvement (on synthetic tests!) with minimal changes in code.
Read more →

Tips and tricks from my Telegram-channel @pythonetc, November 2019

Reading time3 min
Views2.7K

Tips and tricks from my Telegram-channel @pythonetc, November 2019

It is a new selection of tips and tricks about Python and programming from my Telegram-channel @pythonetc.

Previous publications.



PATH is an environment variable that stores paths where executables are looked for. When you ask your shell to run ls, the shell looks for the ls executable file across all paths that are presented in PATH.
Read more →