10 признаков того, что хороший программист из вас не получится

Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Signs You Will Suck at Programming» автора Jonathan Bluks. Очень часто на Reddit или Quora я вижу вопросы вида «Как понять, смогу ли я стать успешным программистом?» (На самом деле, эта статья является расширенным продолжением моего недавнего ответа на Quora.) Когда кто-то задумывается о смене карьеры или […]

Обзор Kaggle ML & DS Survey 2019. Или сколько зарабатывают ML специалисты

Ежегодно Kaggle проводит опрос среди специалистов по анализу данных, и объявляет конкурс на поиск инсайтов из полученных данных. В этом году в опросе участвовало 19717 человек со всего мира. В статье рассматриваются лучшие обзоры и решения Kaggle ML & DS Survey 2019. Рисунок 1. Распределение опрошенных специалистов по странам. Как видно из инфографики, больше всего […]

Основные минусы работы из дома

Сегодня я расскажу тебе о своем опыте удаленной работы, а если быть точнее, о минусах удаленной работы. Эта публикация сделана не для демонизации удаленной работы, а для того, чтобы восстановить баланс в информационном пространстве, предостеречь тебя от возможных негативных последствий. Сейчас слишком много видео, пабликов, рекламы создают мифы вокруг удаленной работы, все говорят о том, […]

Перенос Quake 3 на Rust

Наша команда Immunant любит Rust и активно работает над C2Rust — фреймворком миграции, берущим на себя всю рутину миграции на Rust. Мы стремимся автоматически вносить в преобразованный код на Rust улучшения безопасности и помогать программисту делать это самому, когда не справляется фреймворк. Однако в первую очередь нам нужно создать надёжный транслятор, позволяющий пользователям приступить к […]

Бот для сборов. Собираемся на футбол с новыми технологиями

Введение Всем привет. В этой статье я опишу своего чат-бота для сервиса обмена сообщениями telegram и социальной сети VK с использованием NodeJS. На этом месте у многих читателей должно вырваться что-то вроде: «Доколе!» или «Что, опять ?!». Да, похожие публикации уже были и на хабре в том числе. Но, тем не менее я считаю, что […]

Логические поля в базах данных, есть ли противоядие

Часто в таблицах содержится большое количество логических полей, проиндексировать все из них нет возможности, да и эффективность такой индексации низка. Тем не менее, для работы с произвольными логическими выражениями в SQL пригоден механизм многомерной индексации о чем и пойдёт речь под катом. В SQL логические поля используются в основном в двух случаях. Во-первых, когда действительно […]

Техподдержка 3CX отвечает: Обновление на 3CX v16 с предыдущих версий

В новый год с новой АТС! Правда, не всегда есть время или желание разбираться в тонкостях перехода между версиями, собирая информацию из разных источников. В этой статье мы собрали всю информацию, необходимую для простого и быстрого обновления до 3CX v16 Update 4 со старых версий. Причин для обновления множество — о всех функциях, появившихся в […]

Автоматическое обновление кода до TensorFlow 2

В материале предоставлен перевод руководства по автоматическом обновлению кода с TensorFlow 1.x до Tensorflow 2 с помощью скрипта обновления tf_upgrade_v2. TensorFlow 2.0 включает много изменений API, таких как изменение порядка аргументов, переименование символов и изменение значений по умолчанию для параметров. Ручное исправление всех этих модификаций утомительно и подвержено ошибкам. Чтобы упростить изменения и сделать ваш […]

Пять интересных способов использования Array.reduce() (и один скучный путь)

Привет, Хабр! Представляю вашему вниманию перевод статьи «Five Interesting Ways to Use Array.reduce() (And One Boring Way)» автора Chris Ferdinandi. Из всех современных методов работы с массивами самым сложным из всех, что мне пришлось использовать, был Array.reduce(). На первый взгляд он кажется простым, скучным методом, который мало что дает. Но, не смотря на свой скромный […]

Запись и передача звука с устройства на устройство при помощи Multipeer Connectivity

Добрый день, дрогой читатель! Некоторое время назад я решил попробовать записать и передать записанный звук с устройства на устройство. Как средство передачи записанного звука выбор пал на фреймворк MultipeerConnectivity. В этой статье я расскажу как это сделать. Первым делом нам необходимо два устройства для записи и воспроизведения звука. Соответственно нам необходимо написать класс для выполнения […]