Архив за 17 января 2020 - 4

Автомобили Tesla смогут поговорить с пешеходами - 1

Автомобили Tesla уже могут общаться с владельцами… настало время научится диалогу и с остальными людьми.
Читать полностью »

Юристы SEC из США два дня допрашивали Дурова, в сети появилась стенограмма части допроса - 1

Представители Комиссии по ценным бумагам и биржам США (SEC) провели 7 и 8 января 2020 года допрос Павла Дурова по поводу блокчейн-платформы TON и его команды. Место проведения допроса — Дубаи, где последнее время проживает создатель Telegram. Дурова допрашивали с 11:20 утра до 10 вечера в первый день и с 10 утра до 5 часов вечера во второй день. Все разговоры записывались на видео. Также делалась стенограмма процесса. Именно часть этого документа и оказалась у издания The Bell.
Читать полностью »

Правила работы с динамическими массивами и пользовательскими классами коллекций - 1

Правила работы с динамическими массивами и пользовательскими классами коллекций
Здесь представлены правила, которых я придерживаюсь при работе с динамическими массивами. По сути, это руководство по проектированию массивов, но я не захотел помещать его в руководство по проектированию объектов, потому что не в каждом объектно-ориентированном языке есть динамические массивы. Примеры написаны на PHP, потому что он похож на Java (с которым вы, возможно, уже знакомы), однако с динамическими массивами вместо встроенных классов коллекций и интерфейсов.
Читать полностью »

Припадки - 1

В этой статье хочу поделиться опытом, как мы решили проблему “зависания” задач в нашей компании.

Я работаю в стартапе, который, как и все стартапы, переживает этап роста от 10 человек год назад до 35 человек сегодня, причем количество программистов за это время выросло с 5 до 25 человек и большинство из них пришли за последние шесть месяцев.

Структуру компании, несмотря на ее молодость, я бы назвал старомодной, так как никто и никогда не занимался выстраиванием процессов. При росте мы разделились на команду разработки, команду тестирования и команду девопсов, и все более или менее работало.

Процесс разработки, если его можно назвать “процессом”, был таким:
Читать полностью »

На Луне могут найти жизнь

Еще до высадки на Луну первых людей ученые знали, что спутник нашей планеты безжизненный, пустой, стерильный. И до сих пор, спустя десятилетия, мы не нашли доказательств того, что инопланетная жизнь когда-либо существовала на Луне.

Мы были готовы и к отсутствию жизни, даже биологических соединений, в некоторых типах лунных пород. Луна все еще выглядит бесплодной. Но оказалось, что мы искали жизнь не там, где нужно.

Читать полностью »

Huawei выпустит смартфон P40 Pro Premium Edition с пентакамерой

Как мы уже сообщали, Huawei анонсирует в марте флагманские смартфоны P40 и P40 Pro. Теперь стало известно, что в этой серии также будет представлена третья модель — P40 Pro Premium Edition.

По имеющейся информации, версия Huawei P40 получит тройную основную камеру, модификация Huawei P40 Pro — четверную. Что касается аппарата Huawei P40 Pro Premium Edition, то он будет оборудован пятикомпонентной камерой.

Читать полностью »

В преддверии старта курса «Алгоритмы для разработчиков» подготовили очередной перевод интересной статьи.


Задача: Дан граф и начальная вершина src в графе, необходимо найти кратчайшие пути от src до всех вершин в данном графе. В графе могут присутствовать ребра с отрицательными весами.

Мы уже обсуждали алгоритм Дейкстры в качестве способа решения этой задачи. Алгоритм Дейкстры является жадным алгоритмом, а его сложность равна O(VLogV) (с использованием кучи Фибоначчи). Однако Дейкстра не работает для графов с отрицательными весами ребер, тогда как Беллман-Форд — вполне. Алгоритм Беллмана-Форда даже проще, чем алгоритм Дейкстры, и хорошо подходит для распределенных систем. В то же время сложность его равна O(VE), что больше, чем показатель для алгоритма Дейкстры.

Рекомендация: Прежде, чем двигаться к просмотру решения, попробуйте попрактиковаться самостоятельно.
Читать полностью »

Каждый раз, когда мы пишем класс, управляющий ресурсами, мы задумываемся о том, что, скорее всего, для него придётся писать move-конструктор и move-присваивание. Ведь иначе объекты такого типа становятся неуклюжими, как std::mutex, ими тяжело пользоваться на практике: ни вернуть из функции, ни передать в функцию по значению, ни положить в вектор — а если положить его в другой класс как один из членов, то тот класс также «заболевает».

Положим, мы преодолели свою лень (хотя в Rust таких проблем нет!) и садимся писать move-операции для нашего класса. Проблема в том, что move-семантика в C++ имеет фундаментальное ограничение: каждый владеющий ресурсами тип с move-операциями должен иметь пустое состояние, то есть состояние с украденными ресурсами. Его нужно описывать в документации и предоставлять ему поддержку, то есть тратить время и силы на то, что нам не нужно.

Для абстрактных типов данных пустое состояние обычно бессмысленно — если у объекта украли его ресурсы, то он не сможет выполнять свои обычные функции. Но мы вынуждены это делать, чтобы реализовать move-семантику. Для некоторых типов пустое состояние недопустимо: open_file (в противовес теоретическому file), not_null_unique_ptr<T> (в противовес unique_ptr<T>).

Говоря словами Arthur O'Dwyer, мы заказывали телепорт, а нам дали «вас клонируют и убивают первоначальную копию». Чтобы вернуть себе телепорт, проходите под кат!

Читать полностью »

Всем привет. В этой статье я опишу свой опыт настройки и использования sway — тайлингового оконного менеджера для Linux.Читать полностью »

Пресс-служба МГУ имени М.В. Ломоносова распространила сообщение о том, что сотрудникам химического факультета университета в сотрудничестве со специалистами из Сколтеха удалось создать первый в России прототип проточного окислительно-восстановительного аккумулятора.

Считается, что такие аккумуляторы позволят решить проблему накопления большого количества электроэнергии. Потребность в этом вызвана ростов выработки электроэнергии из возобновляемых источников, поскольку для «зеленой» энергетики характерна неравномерность выработки, не совпадающая с неравномерностью потребления.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js