Социальные сети Рунета
Четверг, 25 апреля 2024

[Перевод] Руководство по аутентификации в Node.js без passport.js и сторонних сервисов Автор статьи, перевод которой мы сегодня публикуем, говорит, что сейчас можно наблюдать рост популярности таких сервисов аутентификации, как Google Firebase Authentication, AWS Cognito и Auth0. Индустриальным стандартом стали универсальные решения наподобие passport.js. Но, ...

[Перевод] Организация работы программиста-одиночки Автор материала, перевод которого мы публикуем сегодня, говорит, что большинство программистов работает в командах. Однако на определённом этапе карьеры разработчику может понадобиться трудиться в одиночку. Основной объём подходов к организации работы над программными продук...

[Перевод] 13 приёмов работы с npm, которые помогают экономить время Каждый день миллионы разработчиков, создавая свои JavaScript-приложения, обращаются к npm (или к Yarn). Выполнение команд наподобие npm init или npx create-react-app стало привычным способом начала работы над практически любым JavaScript-проектом. Это может быть сервер, клие...

[Перевод] 7 привычек высокоэффективных программистов Начинающие программисты тратят много времени, набирая знания, необходимые для прохождения интервью. Они решают задачи и улучшают свои резюме. Но самое интересное начинается после того, как программист получает вожделенную должность — в каком-нибудь стартапе, в Google, в Amaz...

[Из песочницы] Как сойти за хорошего программиста Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla. Программисты – это, своего рода, волшебники: слегка потрепанные персонажи-бедняки, которые умеют превращать кофе в строчки кода. Я не владею магией, я всего ...

[Перевод] Возможности Python 3, достойные того, чтобы ими пользовались Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как...

Украинские IT-специалисты рассказали DOU.UA о самых эффективных каналах поиска работы (лучше всего работают рекомендации и LinkedIn) Украинский ресурс DOU.UA провел опрос отечественных IT-специалистов, в котором на реальном опыте выяснил самые эффективные каналы поиска работы. Показательно, что чаще всего IT-специалисты находят работу по рекомендации друга или коллеги — таких среди опрошенных оказал...

[Из песочницы] Тестирование и экономика проекта В своей работе я постоянно использую unit-тесты. А вы? По моему опыту, большинство программистов – очень редко. Проводя собеседование с кандидатами на вакансии в моей команде, я всегда задаю вопрос: «Есть ли у вас опыт тестирования?». И чаще всего слышу в ответ: «Нет». А есл...

[Перевод] Пишем чистый и масштабируемый JavaScript-код: 12 советов Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов. Современные веб-приложения силь...

[Перевод] Как работает оптимизирующий компилятор Оптимизирующие компиляторы — основа современного ПО: они позволяют программистам писать код на понятном для них языке, затем преобразуя его в код, который сможет эффективно исполняться оборудованием. Задача оптимизирующих компиляторов заключается в том, чтобы понять, что де...

SAP HANA: где и как эффективно использовать big data и машинное обучение Аэропорты, стадионы, промышленные предприятия, ритейлеры — что их связывает? Очевидно, что работа с большими данными, которая может быть эффективной и простой, если в арсенале присутствуют современные инструменты. Одним из таких инструментов может стать платформа SAP HANA. П...

[Перевод] Бесстрашная защита. Безопасность памяти в Rust В прошлом году Mozilla выпустила Quantum CSS для Firefox, который стал кульминацией восьми лет разработки Rust — безопасного для памяти языка системного программирования. Потребовалось более года, чтобы переписать основной компонент браузера на Rust. До сих пор все основны...

Если бы мир был создан программистом В самом начале был свет, тьма и Stackoverflow, что на самом деле просто комбинация этих двух составляющих. В сияющем новом мире, который был создан программистом, можно увидеть всё это творение и сказать: «Да, всё это наверное, хорошо», но баги скорее всего лежат под поверх...

Подборка полезностей для программиста под Linux Думаю, у каждого программиста есть набор любимых утилит, трюков и знаний. Некоторые он даже использует в работе. Скорее всего, у разных программистов они различаются. Значит, пришло время поделиться. Сегодня я расскажу о своей подборке того, что, вероятно, известно не настол...

Что предложат новые хранилища для систем ИИ и МО MAX Data объединят с Optane DC для эффективной работы с системами ИИ и МО. Фото — Hitesh Choudhary — Unsplash По данным исследования MIT Sloan Management Review и The Boston Consulting Group, 85% из трех тысяч опрошенных управленцев считают, что системы ИИ помогут их комп...

[Перевод] Как уменьшить использование памяти и ускорить работу кода на Python с помощью генераторов Всем привет. Сегодня хотим поделиться одним полезным переводом, подготовленным в преддверии запуска курса «Web-разработчик на Python». Писать код эффективный по времени и по памяти на Python особенно важно, когда занимаешься созданием Web-приложения, модели машинного обучени...

Работа с внешними ресурсами в Unity 3d Введение Здравствуйте уважаемые читатели, сегодня речь пойдет о работе с внешними ресурсами в среде Unity 3d. По традиции, для начала определимся, что это и зачем нам это надо. Итак, что же такое эти внешние ресурсы. В рамках разработки игр, такими ресурсами может быть все...

[Перевод] Обзор Python-пакета Datatable «Пять экзабайт информации создано человечеством с момента зарождения цивилизации до 2003 года, но столько же сейчас создаётся каждые два дня». Эрик Шмидт Datatable — это Python-библиотека для выполнения эффективной многопоточной обработки данных. Datatable поддерживает наб...

[Перевод] Структуры данных для программистов игр: bulk data Любому программисту будет полезно понимание различных структур данных и способов анализа их производительности. Но на практике мне ни разу не пригождались АВЛ-деревья, красно-чёрные деревья, префиксные деревья, списки с пропусками, и т.д. Некоторые структуры данных я исполь...

Flutter: локализация приложений средствами Android Studio Про локализацию (интернационализацию) приложений Flutter написано уже достаточно много. Официальная документация довольно подробно останавливается на этом вопросе, кроме этого ряд энтузиастов описывает самые различные подходы. Эта статья не претендует на полноту охвата вопр...

[Перевод] 10 самых распространенных ошибок при работе с платформой Spring. Часть 1 Всем привет. Сегодня делимся первой частью статьи, перевод которой подготовлен специально для студентов курса «Разработчик на Spring Framework». Начнём! Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении...

[Перевод] Как написать сопроводительное письмо при поиске работы в США: 7 советов На протяжение многих лет в США была распроcтранена практика требовать претендентов на различные вакансии не только резюме, но еще и сопроводительное письмо (cover letter). В последние годы важность этого аспекта начала снижаться – уже в 2016 году сопроводительные письма тр...

Пишем гибкий код, используя SOLID От переводчика: опубликовали для вас статью Северина Переса об использовании принципов SOLID в программировании. Информация из статьи будет полезна как новичкам, так и программистам с опытом. Если вы занимаетесь разработкой, то, скорее всего, слышали о принципах SOLID. О...

[Перевод] Признаки настоящих программистов-сеньоров и методы их выслеживания в дикой природе Существует большой разброс в уровнях квалификации разработчиков. И то, что называют «сеньорностью», часто ничего не говорит о реальных возможностях программиста. Что делает некоторых разработчиков объективно лучше других? Что выделяет их из серой толпы? Если у программиста е...

Беспощадная автоматизация. Director's Cut Я хочу рассказать о своем опыте ускорения автоматизации в команде программистов, и о том, какие приемы мы применили на практике, и что из этого получилось. Начальные условия Наш эксперимент по ускорению работы программистов мы проводили в следующих условиях: это было террит...

[Перевод] Что необходимо сделать, чтобы вашу учетную запись Google не украли Корпорация Google опубликовала исследование «Насколько эффективна базовая гигиена учетной записи для предотвращения её кражи» о том, что может сделать владелец учетной записи, чтобы её не украли злоумышленники. Представляем вашему вниманию перевод этого исследования. Прав...

Один в поле не воин. Путь до эффективной командной работы Команда — это группа людей, которые вместе двигаются к общей цели, распределяют между собой задачи и ответственность за конкретный результат. Команды создаются, чтобы решать задачи, которые один человек выполнить не сможет. Эффективная команда достигает цели за минимальный с...

Nomad: проблемы и решения Первый сервис в Nomad я запустил в сентябре 2016 года. На данный момент пользуюсь как программист и занимаюсь поддержкой как администратор двух Nomad кластеров — один "домашний" для своих личных проектов (6 микро-виртуалок в Hetzner Cloud и ArubaCloud в 5 разных датацентрах ...

[Перевод] JavaScript: вопросы и ответы Недавно в компании SmartSpate решили собрать вопросы, касающиеся JavaScript, и на них ответить. В материале, перевод которого мы публикуем, приведены чуть больше двух десятков вопросов о JavaScript и ответов на них. Спектр затрагиваемых здесь тем достаточно широк. В частност...

Дж. Х. Рейнвотер «Как пасти котов»: породы программистов и особенности их разведения Об управлении людьми в целом на сегодняшний день сказано уже немало (по мнению многих, более чем достаточно). Об управлении программистами с учетом специфики их задач, организации работы и внутренних отношений в команде – в разы меньше. Любая попытка обобщить и проанализир...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 27. Введение в AСL. Часть 1 Сегодня мы начнем изучение списка управления доступом ACL, эта тема займет 2 видеоурока. Мы рассмотрим конфигурацию стандартного списка ACL, а на следующем видеоуроке я расскажу про расширенный список. На этом уроке мы рассмотрим 3 темы. Первая – что такое ACL, вторая — в ...

[Перевод] Кодогенерация в Dart Известно, что для программиста очень хорошо быть ленивым, потому что делать больше с меньшими затратами — ключ к прогрессу. Никто не любит делать одно и то же снова и снова. Это утомительно, скучно, да и совсем не креативно. Повторяя одно и то же действие мы часто делаем оши...

[Перевод] Современные возможности C++, о которых надо знать всем программистам Автор материала, перевод которого мы сегодня публикуем, говорит, что C++, в его современном виде, если сравнивать его с тем, чем был этот язык несколько лет назад, значительно изменился в лучшую сторону. Конечно, эти изменения произошли далеко не сразу. Например, в былые вре...

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

Разработка ТамТам-бота на Python Привет, Хабр! Позвольте представиться: меня зовут Сергей Агальцов, и я "программист по жизни". Это значит, что я давно уже IT-менеджер, а вовсе не программист по профессии, но программирование использую постоянно, как в своей основной деятельности, так и как хобби. Как част...

Опыт разработки сервиса Refund Tool с асинхронным API на Kafka Что может заставить такую большую компанию как Lamoda с отлаженным процессом и десятками взаимосвязанных сервисов существенно менять подход? Мотивация может быть совершенно разная: от законодательной до присущего всем программистам желания экспериментировать. Но это вовсе н...

Кастомизация Django ORM на примере ZomboDB Кастомизация Django ORM на примере ZomboDB Часто при работе с Django и PostgreSQL возникает необходимость в дополнительных расширениях для базы данных. И если например с hstore или PostGIS (благодаря GeoDjango) всё достаточно удобно, то c более редкими расширениями — вроде p...

[Из песочницы] Фантазии на тему метаклассов в C# Программистам вроде меня, которые пришли в C# с большим опытом работы в Delphi, часто не хватает того, что в Delphi принято называть ссылками на класс (class reference), а в теоретических работах – метаклассами. Я несколько раз натыкался в разных форумах на обсуждение, прохо...

Когда стандарта HTTP мало. Коммитим в Micronaut Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не...

Репутация, работа и эмиграция: как использовать инструменты продвижения компаний для решения личных задач Ведение блогов, создание контента, работа со СМИ – это то, чем занимаются всё больше компаний. Но на самом деле подобные инструменты продвижения могут использоваться не только бизнесом для привлечения клиента, но и обычными людьми для профессионального развития. Сегодня м...

Смотри меня полностью: выжимаем максимум из live video на мобильных платформах Самый простой способ воспроизвести видео на мобильном устройстве — это открыть ссылку имеющимся в системе плеером, но это не всегда эффективно. Можно взять ExoPlayer и оптимизировать его, а можно вообще написать свой видеоплеер, используя только кодеки и сокеты. В статье ...

[Перевод] Python и быстрые HTTP-клиенты В наши дни, если вы пишете некое Python-приложение, то вам, скорее всего, придётся оснащать его функционалом HTTP-клиента, который способен общаться с HTTP-серверами. Повсеместное распространение REST API сделало HTTP-инструменты уважаемыми жителями бесчисленного множества п...

Митапы Saint TeamLead Conf для углубления в тему В продолжение серии статей о том, как на Saint TeamLead Conf мы собираемся раскрыть три важнейших блока работы тимлида — работу с командой, инструментарий тимлида и развитие осознанности — сегодня расскажу о темах, которые будем обсуждать в формате камерных встреч, митапов, ...

[Из песочницы] Пример реализации Continuous Integration с помощью BuildBot (Image by Computerizer from Pixabay) Привет! Меня зовут Евгений Черкин, я программист команды разработчиков в горнодобывающей компании Polymetal. Приступая к любому крупному проекту начинаешь задумываться: «Какой же софт лучше использовать для его обслуживания?». IT-пр...

Об оценке и управлении разработкой программных продуктов В институте учат алгоритмам, структурам данных, ООП. В хорошем случае могут рассказать о паттернах проектирования или многопоточном программировании. А вот про то, чтобы рассказывали как правильно оценивать трудозатраты, я не слышал. Между тем, этот навык необходим любом...

.NET: Инструменты для работы с многопоточностью и асинхронностью. Часть 2 Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Я продолжаю создавать текстовую версию своего выступления на митапе по многопоточности. С первой частью можно ознакомиться здесь или здесь, там речь больше шла о базовом наборе инструментов, что...

[Перевод] Подробности о JavaScript-объектах Автор материала, перевод которого мы сегодня публикуем, говорит, что в JavaScript-объектах содержится много такого, о существовании чего можно и не подозревать, пользуясь ими в повседневной работе. Объекты в JavaScript очень легко создавать, с ними удобно работать, они кажут...

Как QA организовать автоматизацию тестирования на проекте. Один практически примененный способ Некоторое время назад я написала статью о своем опыте организации работы QA Инженера на проекте. Сейчас хочу продолжить эту тему, но уже в более узком ее направлении — автоматизации тестирования. Речь пойдет о том же самом проекте, он небольшой, но развивающийся под запросы ...

[Перевод] Анализ 112654 тестовых заданий и тренды рынка труда программистов 2019 года Материал, перевод которого мы публикуем сегодня, посвящён анализу рынка труда разработчиков программного обеспечения. А именно, компания Devskiller, которая работает в сфере рекрутинга, делится здесь результатом исследования 112654 тестовых заданий, которые выполнили програм...

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1 Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями. Наше серверное приложение — это монолит, представ...

[Перевод] Динамическое программирование в реальном мире: вырезание швов У динамического программирования репутация метода, который вы изучаете в университете, а затем вспоминаете только на собеседованиях. Но на самом деле метод применим во многих ситуациях. По сути, это техника эффективного решения задач, которые можно разбить на множество сильн...

DARPA займется разработкой ракетного ядерного двигателя Агентство DARPA в 2020 году планирует начать работу по созданию ядерного ракетного двигателя. Задача — разработка такого движка, который можно было бы использовать для передвижения космических транспортников в пределах лунной орбиты. Финансирование проекта составляет $10 м...

Управление ветряными электростанциями в Швеции будут проводить на базе облачных технологий В последние годы интерес крупных корпораций, таких как Facebook, Amazon и Google к сокращению углеродного следа и снижению воздействия на окружающую среду неуклонно возрастает. В связи с этим быстрые темпы развития ветроэнергетики в Швеции требуют новых методов управления ра...

Эволюция программного проекта и ООП Осваивая рецепты эффективного развития программного проекта, постарался для себя найти причины, делающие полезным использование принципов развития архитектуры SOLID (статья Как не понимать принципы развития архитектуры SOLID). Анализ этих принципов позволил выделить несколь...

Как решает типичные проблемы программист Google От переводчика: публикуем для вас перевод статьи Стива Меррита, сотрудника Google, который рассказывает о том, как он решает типичные проблемы программирования. Пост будет полезен, в первую очередь, начинающим программистам. В этой статье я расскажу о своей стратегии ре...

Просто о внутренних и внешних настройках для приложения в Unity3D Введение Здравствуйте уважаемые читатели, в сегодняшней статье хотелось бы поговорить о настройках и конфигурировании игровых приложений, создаваемых в среде Unity3d. По традиции начну с предыстории. За время работы в игровой индустрии я разрабатывал различные проекты, с р...

Введение в программирование: простой 3Д шутер с нуля за выходные, часть 1 Этот текст предназначен для тех, кто только осваивает программирование. Основная идея в том, чтобы показать этап за этапом, как можно самостоятельно сделать игру à la Wolfenstein 3D. Внимание, я совершенно не собираюсь соревноваться с Кармаком, он гений и его код прекрасен. ...

Какие есть мифы (заблуждения) об эффективных продажах товара – услуги? 7 мифов об эффективной продаже. Существует множество высказываний (так называемых мифов) о том, как заниматься продажами. Приведем десять самых распространенных из них, с которыми можно поспорить. «Хорошими менеджерами по продажам рождаются». Несомненно, способность убеждать...

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

Повышаем продуктивность на GitHub: советы для новичков и не только От переводчика: публикуем для вас статью Даррена Барнса, который делится своим опытом работы с GitHub. Его советы будут полезны, в первую очередь, новичкам. Возможно, и опытный кодер найдет что-то для себя. GitHub — отличный сервис, которым пользуются пусть не все, но ...

Настройка vscode под stm32 на примере отладочной платы stm32f429i-disco Всем привет! Сегодня рассмотрим настройку удобной и красивой среды разработки для программиста микроконтроллеров с помощью набора полностью бесплатных инструментов разработки. Все шаги проверены на виртуальной машине со свежеустановленной Ubuntu 16.04 xenial desktop. Подраз...

[Перевод] 19 концепций, которые нужно изучить для того, чтобы стать эффективным Angular-разработчиком TODO-приложение во фронтенд-разработке — это то же самое, что «Hello world» в обычном программировании. При создании TODO-приложений можно изучить выполнение CRUD-операций средствами того или иного фреймворка. Но часто подобные проекты лишь весьма поверхностно касаются того,...

[Перевод] [в закладки] Bash для начинающих: 21 полезная команда Материал, перевод которого мы публикуем сегодня, предназначен для тех, кто хочет освоить командную строку Linux. Умение эффективно пользоваться этим инструментом позволяет экономить немало времени. В частности, речь здесь пойдёт о командной оболочке Bash и о 21 полезной кома...

Как запоминать больше, используя метод 50/50 Правильная работа с текстом эффективнее бессмысленной зубрёжки.

[Из песочницы] Методы эффективного преобразования информации на основе модифицированной формулы Бэйли — Боруэйна — Плаффа Описание Указанный ниже метод позволяет осуществлять эффективное преобразование цифровых последовательностей любой размерности, что в свою очередь применимо в области обработки цифровой информации. Ниже рассмотрено два вычислительных способа: Преобразование объемной послед...

Курс «Основы эффективной работы с технологиями Wolfram»: более 13 часов видеолекций, теория и задачи Все документы курса можно скачать здесь. Этот курс я прочел пару лет назад для довольно обширной аудитории. Он содержит очень много информации о том, как устроена система Mathematica, Wolfram Cloud и язык Wolfram Language. Однако, конечно, время не стоит на месте и за по...

Как заопенсорсить npm-пакет с нормальным деплоем, CI и демо (без потери радости к жизни) Вот вы сделали что-то новое и крутое, приходит мысль — выложить в опенсорс и опубликовать в npm. Просто запушить код в публичный репозиторий недостаточно. Это обречет проект на отсутствие развития и провал. А с другой стороны вспоминается целый ряд скучных процессов: версио...

[Перевод] Использование Immer для управления состоянием React-приложений Состояние используется для организации наблюдения за данными React-приложений. Состояния меняются по мере того, как пользователи взаимодействуют с приложениями. Когда пользователь выполняет некое действие — нам нужно обновить состояние, представляющее собой набор данных, на ...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

Типичные ошибки при работе с PostgreSQL. Часть 2 Мы продолжаем публиковать видео и расшифровки лучших докладов с конференции PGConf.Russia 2019. В первой части доклада Ивана Фролкова речь шла о непоследовательном именовании, о constraints, о том, где лучше сосредоточить логику — в базе или в приложении. В этой части вас жд...

Помощь в ведении бизнеса разного уровня Никто не станет отрицать важность постоянного повышения уже существующих навыков и приобретения новых. Несмотря на то, что сегодня многим может показаться, что эффективные меры повышения рентабельности бизнеса исчерпаны, материалы форума, где находятся курсы по бизнесу, дока...

Самодокументируемый REST сервер (Node.JS, TypeScript, Koa, Joi, Swagger) Про преимущества и недостатки REST написано уже довольно много статей (и еще больше в комментариях к ним) ). И если уж так вышло, что вам предстоит разработать сервис, в котором должна быть применена именно эта архитектура, то вы обязательно столкнетесь с ее документировани...

[Из песочницы] Продвинутый Debug Debug Area — полезная функция в работе iOS разработчика в Xcode. Как только мы начинаем осваивать разработку под iOS, и пытаемся отойти от привычного и любимого print метода, и найти более быстрые и удобные методы понимания состояния системы в определенный период мы начинаем...

Анализ кода CUBA Platform с помощью PVS-Studio Для Java программистов существуют полезные инструменты, помогающие писать качественный код, например, мощная среда разработки IntelliJ IDEA, бесплатные анализаторы SpotBugs, PMD и другие. Всё это уже используется в разработке проекта CUBA Platform, и в этом обзоре найденных...

[Из песочницы] Как я не стал программистом в 35 лет С самого начала сентября широким потоком хлынули на Хабр публикации об успешном успехе на тему «Детство программиста», «Как стать программистом после N лет», «Как я ушёл в IT из другой профессии», «Путь в программирование» и так далее. Подобные статьи пишут постоянно, но во...

Бывший программист Rockstar упомянул о работе над ПК‑версией Red Dead Redemption 2 Бывший программист Rockstar Toronto Нан Ма написал в резюме, что занимался разработкой версии Red Dead Redemption 2 для персональных компьютеров. Пользователи reddit предположили, что Ма допустил ошибку, однако в перечне других проектов, над которыми он работал, программист ...

[Перевод] Внутри Quake: всегда рассматривайте альтернативы Программист Майкл Абраш, в середине 90-х приглашённый Джоном Кармаком для работы над движком первого Quake, написал в процессе разработки серию статей. Это вторая колонка из данной серии. Перевод первой находится здесь. Должен признаться: меня достал классический рок. В по...

[Из песочницы] Что они думали о программистах Привет, Хабр! Представляю вашему вниманию перевод статьи «What They Thought of Programmers» автора Robert C. Martin. Интересно и познавательно вернуться в прошлое и посмотреть, как программисты были представлены в массовой культуре. Что люди о нас думали? Знали ли они, кто ...

[Перевод] Что такое Deno и чем этот проект отличается от Node.js? Райан Даль, создатель Node.js, потратил последние полтора года на работу над проектом Deno. Это — новая среда выполнения для JavaScript, которая должна исправить проблемы, присущие Node.js. Не поймите меня неправильно. Платформа Node.js представляет собой замечательную серв...

[Перевод] Управление стейтом с помощью React Hooks – без Redux и Context API Всем привет! Меня зовут Артур, я работаю ВКонтакте в команде мобильного веба, занимаюсь проектом VKUI — библиотекой React-компонентов, с помощью которой написаны некоторые наши интерфейсы в мобильных приложениях. Вопрос работы с глобальным стейтом у нас пока открыт. Существу...

Структуры против Классов С самого начала, когда я начинал заниматься программированием, вставал вопрос, что использовать для улучшения быстродействия: структуру или класс; какие массивы лучше использовать и как. По поводу структур, Apple приветствует их использование, объясняя это тем, что они лучше...

PVS-Studio идёт в облака: GitLab CI/CD Эта статья является продолжением цикла публикаций об использовании PVS-Studio в облачных системах. На этот раз мы рассмотрим работу анализатора совместно с GitLab CI — продуктом от GitLab Inc. Интеграция статического анализатора в CI систему позволяет выявить баги сразу пос...

[Перевод] Три типовых ошибки в сфере безопасности, о которых должен знать каждый React-разработчик Автор статьи, перевод которой мы сегодня публикуем, говорит, что React — это её любимая библиотека для создания интерактивных интерфейсов. React одновременно и лёгок в использовании, и достаточно хорошо защищён. Однако это не значит, что React-приложения совершенно неуязвимы...

Расширения для Visual Studio Code которые помогают работать с Git Visual Studio Code имеет git по умолчанию, но встроенных функций хватает не всегда для удобной и быстрой работы. Также для эффективной работы с git требуется визуализация процессов. Читать дальше →

[Перевод] Работа с ошибками в Go 1.13 В последнее десятилетие мы успешно пользовались тем, что Go обрабатывает ошибки как значения. Хотя в стандартной библиотеке была минимальная поддержка ошибок: лишь функции errors.New и fmt.Errorf, которые генерируют ошибку, содержащую только сообщение — встроенный интерфейс...

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

[Перевод] Создаем инфраструктуру как код с GitLab и Ansible Вся мощь GitLab CI в демонстрации плейбуков Ansible при подходе «инфраструктура как код». GitLab CI — это эффективный инструмент для самых разных сценариев, включая инфраструктуру как код. GitLab можно использовать с разными инструментами, но в этой демонстрации мы возьмем ...

[Из песочницы] Учимся стандарту проектирования — Entity Relationship Здравствуйте. Данная статья посвящена одной из самых популярных, а также и многим знакомой, модели проектирования — ER(Entity Relationship), которая была предложена учёным, в области информатики — Питером Ченом, в 1976 году. По ходу статьи простым языком на простых примера...

15 препятствий на пути к эффективной работе вашей команды Инфографику предоставила Wrike — Управление Проектами It

Столичные школьники получат возможность проводить самодиагностику онлайн Как сообщил глава столичного Депобразования Исаак Калина, список сервисов электронного образовательного мегапроекта «Московская электронная школа» (МЭШ) вскоре пополнится новым сервисом под названием «Самодиагностика». Он будет оказывать школьникам помощь в эффективной подго...

Используйте GIT при документировании Иногда не только сама документация, но и процесс работы над ней может быть критичным. Например, в случае проектов львиная часть работы связана именно с подготовкой документации, и неправильный процесс может привести к ошибкам и даже к потере информации, а, следовательно, и к...

WinForms: ошибки, Холмс Мы любим искать ошибки в проектах Microsoft. Почему? Всё просто: их проекты, как правило, легко проверить (работу можно вести сразу в среде Visual Studio, для которой у PVS-Studio есть удобный плагин) и они содержат мало ошибок. Поэтому обычный алгоритм работы такой: найти ...

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

Что делать, если для постройки робота не хватает кубиков? Моя предыдущая статья была написана, в первую очередь, для менеджеров проектов и руководителей направления RPA. Эту статью я хотел бы адресовать, в первую очередь, программистам и тем, кому приходится с роботизацией сталкиваться face-to-face. Первые несколько процессов, кот...

[Из песочницы] Как я свой первый ИИ писал Привет, Хабр. История моя берёт начало в январе 2019 года. Мы с моей тимой геймдевелоперов решили взяться за самый большой проект в нашей истории- 2Д платформер. Нет, мы не делали до этого какие-нибудь FlappyBird'ы или змейки, но объём работы в этом проекте просто сносил на...

Видеокамера Canon Legria HF R88: 32-кратный зум и эффективная стабилизация Canon Legria HF R88 — это несложный и недорогой аппарат для любителя, имеющий два главных плюса: 32-кратный зум и эффективную систему стабилизации изображения. Другие положительные характеристики также достойны упоминания: компактные размеры, встроенная память на 16 ГБ, длит...

[Перевод] Подробности о GraphQL: что, как и почему GraphQL сейчас, без преувеличения, это — последний писк IT-моды. И если вы пока не знаете о том, что это за технология, о том, как ей пользоваться, и о том, почему она может вам пригодиться, значит статья, перевод которой мы сегодня публикуем, написана специально для вас. Зд...

Как я буду мир спасать Примерно год назад я твердо решил спасти мир. Теми средствами и навыками, которые у меня есть. Надо сказать, наборчик весьма скудный: программист, менеджер, графоман и хороший человек. В нашем мире полно проблем, и мне надо было что-то выбрать. Подумывал о политике, даже по...

Kingston начинает продажи регистровых модулей памяти DDR4-3200 для систем на процессорах AMD EPYC второго поколения Компания Kingston Technology объявила о начале продаж регистровых модулей DIMM DDR4 Server Premier объемом 8, 16 и 32 ГБ, которые работают на эффективной частоте 3200 МГц. По словам производителя, эти модули способны полностью раскрыть потенциал процессоров AMD EPYC вто...

Пробуем улучшенный оператор instanceof в Java 14 Не за горами новая, 14-я версия Java, а значит самое время посмотреть, какие новые синтаксические возможности будет содержать эта версия Java. Одной из таких синтаксических возможностей является паттерн-матчинг по типу, который будет осуществляться посредством улучшенного (р...

Микрошаговая отчётность в работе программиста Если ты дурак — записывай, как делаю это я В одной из компаний, где я работал, была очень строгая отчётность. Все рабочие часы должны были быть закрыты в отчётности какой-то задачей, а отчёты сдавались ежедневно. В общем, человек ко всему привыкает, и вполне можно было вспом...

Julia: типы, мультиметоды и арифметика над полиномами В этой публикации речь пойдёт об основной, на мой взгляд, отличительной особенности языка Julia — представлении функций в виде методов с множественной диспетчеризацией. Это позволяет повысить производительность вычислений, не снижая читаемости кода и не портя абстрагируемост...

[Перевод] Математики обнаружили идеальный способ перемножения чисел Разбивая крупные числа на мелкие, исследователи превысили фундаментальное математическое ограничение скорости Четыре тысячи лет назад жители Вавилонии изобрели умножение. А в марте этого года математики усовершенствовали его. 18 марта 2019 два исследователя описали самый ...

MVCC-7. Автоочистка Напомню, что мы начали с вопросов, связанных с изоляцией, сделали отступление про организацию данных на низком уровне, подробно поговорили о версиях строк и о том, как из версий получаются снимки данных. Затем мы рассмотрели внутристраничную очистку (и HOT-обновления), обыч...

[Перевод] Типы для HTTP-API, написанных на Python: опыт Instagram Сегодня мы публикуем второй материал из цикла, посвящённого использованию Python в Instagram. В прошлый раз речь шла проверке типов серверного кода Instagram. Сервер представляет собой монолит, написанный на Python. Он состоит из нескольких миллионов строк кода и имеет неско...

Как программист банк выбирал и договора читал Девять лет назад я написал заметку про то, как не быть обманутыми злыми буратинами. Всё, что там написано не потеряло актуальности, и сегодня мы рассмотрим попытку выбрать банк читая бумаги, а не рекламу. В данной заметке рассмотрены ВТБ, Альфа Банк, Авангард. По этим банка...

[Перевод] 13 полезных однострочников на JavaScript Автор статьи, перевод которой мы сегодня публикуем, говорит, что он программирует на JavaScript уже многие годы. За это время он собрал коллекцию отличных однострочников — фрагментов кода, удивительно мощных, учитывая то, что укладываются они в одну строку. По его словам, бо...

[Из песочницы] Эффективные и не эффективные методы кодинга на Python Привет, Хабр! Предлагаю Вашему вниманию перевод статьи Good and Bad Practices of Coding in Python автора Duomly. Python – высокоуровневый язык программирования, акцентирующий внимание на удобочитаемости. Он разрабатывается, поддерживается и часто используется в соответствии...

Ford разработал систему эффективной защиты сенсоров беспилотников от насекомых В ходе работы дальнейшей разработки беспилотных автомобилей, Ford создал специальную технологию, которая позволит им эффективно справляться с такими внешними загрязнениями, как пыль, дорожная грязь и насекомые.

История одного джуниора — как начать работать и не бояться всего подряд От переводчика: сегодня публикуем для вас статью Саиды Аймен Батул, которая рассказывает, как начинающему программисту преодолевать проблемы на пути к профессионализму. Мне кажется, что синоним программирования — проблемы. И если вы новичок, то проблем у вас в сто раз бо...

Как писать хороший и понятный код: 3 простых способа для программиста От переводчика: сегодня публикуем для вас статью разработчика из Индии Рави Шанкара Рахана. Он рассказывает о том, что стоит делать, если вы хотите научиться писать простой и понятный код. Статья рекомендуется всем начинающим программистам. Написать простой код несложно...

[Из песочницы] Эволюция самого популярного инструмента любого разработчика В любой среде разработки есть инструмент с названием «Output». Нет нужды описывать что он делает, поскольку абсолютно все разработчики его используют в своей работе ежедневно. Он прост и консервативен. По сути не менялся десятилетиями и до этих пор выглядит как то так: Т...

[Из песочницы] Современное программирование: взгляд после 25 лет перерыва или как я писал бота для Телеграм Задача кажется простой, когда ничего про нее не знаешь и когда решил. В один “прекрасный” день, я понял, что мне не интересно сидеть на многочисленных форумах, а хочется создать свой канал и делиться “мудростью”. Мне нравится Телеграм заложенными в него возможностями в то...

[Перевод] WolframClientForPython | Новая клиентская библиотека Wolfram Language для Python Оригинал перевода в моём блоге Получение полного доступа к языку Wolfram Language из языка Python Язык Wolfram (Wolfram Language) дает программистам в руки уникальный язык с огромным множеством сложных алгоритмов, а также встроенных знаний об окружающем мире. На протяжении...

[Перевод] Тестирование фронтенда Эффективная стратегия автоматизированного тестирования кода чрезвычайно важна для обеспечения быстрой и качественной работы команд программистов, занимающихся поддержкой и развитием веб-проектов. Автор статьи говорит, что в компании StackPath, в которой он работает, с тестир...

Делаем процесс разработки тяжеловесного программного обеспечения под микроконтроллеры более удобным (нет) Сейчас уже никого не удивить микроконтроллерами с энергонезависимой (чаще всего Flash) памятью объемом 512 килобайт и более. Их стоимость постепенно снижается, а доступность напротив, растет. Наличие такого объема энергонезависимой памяти дает возможность писать «тяжелые» по...

Предлагаемые изменения в Chromium нарушат работу uBlock Origin Разработчик uBlock Origin заявил, что его расширение для блокировки рекламы не сможет работать, если будут приняты изменения в Chromium. Речь идёт о внедрении declarativeNetRequest API, которые лишают возможности использовать webRequest API. Google считает, что изменения нео...

Исследователи научили нейросеть писать мрачные песни в стиле группы Cannibal Corpse Группа программистов Dadabots запустили на YouYube трансляцию работы новой нейрости, которую обучили сочинять мрачные тексты для песен в стиле «дез-метал». Саму музыку, если ее можно так назвать, написала другая нейрость. Если вслушаться в то, о чем поет этот своеобразный ду...

[Перевод] Python Testing with pytest. Просто, Быстро, Эффективно и Масштабируемо. Предисловие и Ведение Дальше Систематическое тестирование программного обеспечения, особенно в сообществе Python, часто либо полностью игнорируются или выполняются специальным образом. Многие программисты на Python совершенно не подозревают о существовании pytest. Брайен Оккен берет на себя труд...

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

[Из песочницы] Три относительно честных способа создания Flutter проекта Итак, с презентацией Google первой стабильной версии Flutter, которая случилась 4 декабря 2018 г. начался процесс изменения ландшафта на полях мобильного программирования. Появился новый игрок, способный изменить правила самой игры. Теперь из одной базы кода можно создават...

Лучшее из опыта создания чистых и быстрых Angular приложений На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular &...

[Перевод] Чем закончилась история с бомжом-программистом Решил разузнать из первоисточников как начиналась, развивалась и закончилась история про то, как программист обучал бомжа. Я даже пролистал всю группу в FB с логами проекта (там чересчур много деталей для поста на Хабре). Самые иллюстрирующие моменты есть в трёх статьях на M...

Как организовать эффективную работу по созданию, внедрению и поддержке продуктов и услуг — новый учебный курс ITIL® 4 CDS C 25 по 28 ноября в учебном центре Cleverics впервые пройдёт учебный курс ITIL® 4 Specialist: Create, Deliver & Support, основанный на одноименной публикации. Курс, тренеры и учебные материалы уже аккредитованы PEOPLECERT по схеме аккредитации AXELOS и по окончании курса...

[Перевод] 27 удивительных инструментов VS Code для современных JavaScript-разработчиков Visual Studio Code (его ещё называют VS Code и VSCode) — это экономичный но мощный кросс-платформенный редактор кода, выполненный в виде настольного приложения. По словам автора материала, перевод которого мы сегодня публикуем, VS Code поддерживает множество инструментов раз...

[Из песочницы] Автоматизации бизнес процессов компании в Trello с использованием технологии семантического моделирования В последние годы все чаще говорят о Trello, как о прекрасном инструменте для организации и планирования. В нашей компании мы вот уже 3 года используем Trello для планирования многих процессов, начиная с отпусков, командировок и согласования договоров и заканчивая управлением...

Разработка чат-бота (laravel+botman) Welcome! Я, как junior full stack разработчик, при попытке написать бота с использованием laravel и botman’а столкнулся с многими проблемами. Во-первых, я плохо знаю английский, а на русском статей очень мало на эту тему, а те, что есть не помогли мне решить мои проблемы. В ...

[Перевод] Руководство по использованию pandas для анализа больших наборов данных При использовании библиотеки pandas для анализа маленьких наборов данных, размер которых не превышает 100 мегабайт, производительность редко становится проблемой. Но когда речь идёт об исследовании наборов данных, размеры которых могут достигать нескольких гигабайт, проблемы...

ARM Assembler Editor: Если гора не идет к Магомеду, Магомед идет к горе… Если кто не знает мне интересно программирование на ассемблере для микроконтроллеров STM32… И все бы хорошо, да только программировать особо негде… Те среды которые есть в настоящий момент заточены больше для языка Си и программирование в них на ассемблере не сильно отличае...

[Перевод] Как я получил работу с зарплатой 300 000 долларов в Кремниевой долине В конце января мы публиковали перевод на тему «Как я успешно прошел шесть собеседований в Кремниевой долине». Пришло время поделиться продолжением, где речь пойдет о более животрепещущей теме — о деньгах и о том, как получить больше. «В течение недели мне предложили должнос...

[Перевод] Как сделать SFINAE изящным и надежным И снова здравствуйте. Делимся с вами интересной статьёй, перевод которой подготовлен специально для студентов курса «Разработчик C++». Сегодня у нас гостевой пост Адама Балаша (Ádám Balázs). Адам является инженером-программистом в Verizon Smart Communities Hungary и зани...

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

[Перевод] Реализуем UI в iOS: улучшаем, ускоряем, масштабируем Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. При создании мобильных приложений большая часть времени уходит на разработку UI, и оптимизация этого процесса всегда является актуальной темой в среде разработчиков. Мой коллега А...

Не лечите меня, доктор Когда собирали доклады на голосование для участия в одной специализированной конференции, я хотел рассказать такую тему – как подсидеть директора по качеству. Это был бы конъюнктурный доклад про карьерный рост для программиста или ИТ-директора. С одной стороны, рост в сторо...

Google Classroom 4.12.552 Google Classroom — установите приложение для Android, которое позволит вам работать с Классом откуда угодно. Класс помогает преподавателям экономить время, организовать учебный процесс и эффективно общаться с учащимися. Этот сервис доступен всем пользователям Google Apps for...

[Перевод] Что нужно знать о массивах JavaScript Представляем вам перевод статьи автора Thomas Lombart, которая была опубликована на сайте medium.freecodecamp.org. Перевод публикуется с разрешения автора. Пример использования метода reduce для сокращения массива Позвольте мне сделать смелое заявление: циклы часто бывают...

[Из песочницы] Тестирование локализации мобильных игр для чайников от чайника Введение Я уже полгода работаю тестеровщиком мобильных игр и хотел немного рассказать о своём самом любимом тестировании — Тестировании локализации. В этой статье я поделюсь своим опытом тестирования именно локализации, в основном будет опора именно на локализацию текста. Н...

Стихи про Хаскель, С++ и программистов Привет, Хабр, не желаешь ли небольшого воскресного отдохновения? Почитай мои стихи, они поднимут тебе настроение, а некоторые и заставят задуматься. Современный программист Я программист, осознавший едва Всю суть программистских контор. Я миддл опять в мои двадцать два, А в...

Привет от программистов 80-х Современных программистов можно назвать баловнями. К их услугам — мощнейшие среды разработки, множество языков программирования. А всего 30 лет назад учёные и энтузиасты-одиночки писали программы даже на калькуляторах. Осторожно, под катом много фотографий! Читать дальше ...

Memcached plugin от MySQL: инструкция по осторожному применению Здравствуйте! Меня зовут Максим Матюхин, я PHP-программист Badoo. В своей работе мы активно используем MySQL. Но иногда нам не хватает её производительности, поэтому мы постоянно ищем возможности ускорить её работу. В 2010 году Yoshinori Matsunobu представил NoSQL-плагин ...

Расчет нулевой гипотезы, на примере анализа зарплат украинских программистов Решил поделиться, да бы и самому не забывать, как можно использовать простые статистические инструменты для анализа данных. В качестве примера использовался анонимный опрос относительно зарплат, стажа и позиций украинских программистов за 2014 и 2019 год. (1) Этапы анализа...

VIAVI научит пользователей тестировать работу сетей 5G Российское представительство международной компании VIAVI Solutions представило комплекс технологий для эффективного тестирования работы сетей 5G — Triple pack. В сочетании, эти технологии дают возможность уже сегодня оценить готовность ...

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

[Перевод] Простой способ разобраться с вашими карьерными устремлениями Легко запутаться в процессе выстраивания своей карьеры. По моему опыту, даже наиболее успешные глобальные корпорации в разработке будущих талантов находятся в состояниях от плохого до среднего. Они часто скрывают то, что вам на самом деле нужно, и не могут чётко определить...

[Перевод] Как написать смарт контракт на WebAssembly в сети Ontology? Часть 2: С++ В этой статье мы разберем на двух примерах, как написать смарт контракт на языке C++, используя WASM на основе блокчейн сети Ontology. Сегодня, после нескольких месяцев стабильной работы в тестовом режиме, Ontology запустила WASM в основной сети, что позволяет безболезненн...

Грамотное и эффективное продвижение вашего сайта Без наличия собственного сайта, онлайн площадки, достаточно сложно развивать существующий бизнес. Если ваш бизнес в интернете, это даже не обсуждается, ведь именно так вы получите отличные результаты по продажам или по предоставлению услуг. Несомненно, необходимо на постоян...

[Перевод] Практический пример использования render-функций Vue: создание типографской сетки для дизайн-системы В материале, перевод которого мы сегодня публикуем, речь пойдёт о том, как создать типографскую сетку для дизайн-системы с использованием render-функций Vue. Вот демонстрационная версия проекта, который мы будем здесь рассматривать. Здесь можно найти его код. Автор этого мат...

Хакатон HACKNOWLEDGE II Ассоциация интернет-издателей хочет привлечь как можно больше пользователей к работе с ресурсами проектов на открытых лицензиях. Участников ждут прикладные и лекции от руководителей и ведущих специалистов, а также обучение работе с дан...

DEV Labs 2019. Python для решения нетривиальных задач. Онлайн-митап Уважаемые коллеги! Приглашаем принять участие в онлайн-митапе серии DEV Labs, который пройдёт 20 марта и будет посвящён языку Python. Расскажем о применении Python в сфере проектирования систем «умного дома» и рассмотрим примеры решения задач по распознаванию человеческих д...

Никита Шамгунов рассказал The Bell про работу в Microsoft и Facebook, разговор с Гейтсом и базу данных MemSQL Фото: РБК Вчера The Bell опубликовал интервью с Никитой Шамгуновым. Они назвали его одним из лучших программистов в России, и даже если не быть категоричными, он действительно крут. С детства изучал математику и компьютерные науки, занял третье место на чемпионате мира по ...

[Из песочницы] Как сделать легконастраиваемое кеширование в проекте и спасти коллег от написания однотипного кода «Если суть работы программиста в автоматизации работы других людей, то почему моя работа так мало автоматизирована» — думал я, копируя в очередной раз всю необходимую в проекте обвязку для добавления новой сущности в БД. И решил избавиться от этой рутины по добавлению шаблон...

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

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

[Перевод] Как заблокировать работу Microsoft Edge в фоне под Windows 10 Работая на устройстве под управлением ОС Windows 10, вы могли заметить в Task Manager среди запущенных процессов Microsoft Edge, даже если вы не пользуетесь этим браузером. Эти процессы, MicrosoftEdge.exe, MicrosoftEdgeCP.exe и MicrosoftEdgeSH.exe, отображаются там как прио...

[Перевод] Что я узнал о машинном обучении, поработав в 12 стартапах Всем привет. Поработав в 12 стартапах в сфере машинного обучения, я сделал восемь полезных выводов о продуктах, данных и людях. Все стартапы были из разных сфер (финтех, биотехнологии, здравоохранение, технологии обучения) и на разных этапах: и на этапе pre-seed, и на этап...

[Из песочницы] Использование SQLite в Unity (Unity + SQLite) Всем привет, данная публикация будет посвящена работе с встраиваемой реляционной базой данных SQLite в Unity. Данная статья написана новичком для новичков с целью показания работы с SQLite, предполагается, что вы знаете основы SQL. Так как в интернете нет ясного тутора для н...

Спринтец. Две недели продуктивной работы Привет. Если ты программист — все человеческое тебе не чуждо. И, скорее всего, ты сталкивался с вопросами саморазвития и повышения собственной эффективности как в профессиональном так и в личном плане. Не знаю терпел ли ты неудачи или процветал и насколько тебе хватало мотив...

[Перевод] Сети Kubernetes: поды Материал, перевод которого мы сегодня публикуем, посвящён особенностям сетевого взаимодействия подов Kubernetes. Он предназначен для тех, у кого уже есть некоторый опыт работы с Kubernetes. Если вы пока не очень хорошо разбираетесь в Kubernetes, то вам, вероятно, прежде чем ...

[Из песочницы] Как создать игру, если ты ни разу не художник В жизни каждого программиста бывали моменты, когда он мечтал сделать интересную игру. Многие программисты эти мечты реализовывают, и даже успешно, но речь сейчас не о них. Речь о тех, кто любит играть в игры, кто (даже не имея знаний и опыта) и сам пытался их когда-то созда...

А это нормально вообще? Проблема нормы в психологии Понятие нормы – это одно из фундаментальных понятий в психологии. Любая коррекционная работа начинается с того, что мы решаем, что является нарушением (которое можно устранить или, во всяком случае, скомпенсировать), а что – конструктивной особенностью отдельно взятого индив...

Google App Script, Mikrotik, Telegram и VPNBook затеяли сыграть квартет Сегодня в программе: Куда еще можно применить Google Apps Script, если закончились нормальные идеи. Автоматизация работы с VPNBook через цепочку скриптов на разных языках, которые я не знаю. Недо-cURL от Mikrotik. Telegram через одно место, чтобы не оказаться в другом, самко...

Индийцы выдавали работу программистов за ИИ Издание The Wall Street Journal обнародовало статью об индийском стартапе Engineer.ai, который позиционируется в качестве разработчика ИИ для создания приложений, но на самом деле выяснилось, что код писался обычными программистами. В 2018 году глава Engineer.ai заявил, что…

[Перевод] Метрики производительности для исследования невероятно быстрых веб-приложений Есть одно высказывание: «Что ты не можешь измерить, то ты не можешь улучшить». Автор статьи, перевод которой мы сегодня публикуем, работает в компании Superhuman. Он говорит, что эта компания занимается разработкой самого быстрого в мире почтового клиента. Здесь речь пойдёт ...

Code style как стандарт разработки Давайте сразу, это не про скобочки. Здесь речь пойдет о том, как работает наш мозг и почему code style помогает обеспечивать линейное развитие проекта, значительно ускоряет адаптацию новых сотрудников и, в целом, формирует и воспитывает культуру разработки. Я постарался собр...

[Из песочницы] Красивые точные часы из старого смартфона Речь в статье пойдёт о том, как старый ненужный мобильник переделать в отличные настенные часы с крупными цифрами, всегда точным временем и резервным питанием. Я расскажу о некоторых выясненных особенностях сихронизации времени в ОС Андроид, а также о разных электрических...

3 приложения, которые заставят ваш смартфон работать лучше Операционная система Android, несмотря на внешнюю схожесть с iOS, устроена совершенно иначе. Ее открытость позволяет настраивать и видоизменять ее всеми мыслимыми способами, а также, что еще более важно, влиять на скорость ее работы. Рассказываем, как при помощи всего лишь ...

Книга «Unity в действии. Мультиплатформенная разработка на C#. 2-е межд. издание» Привет, Хаброжители! Второе издание «Unity в действии» было полностью переработано, чтобы познакомить вас с новыми подходами и идеями, позволяющими максимально эффективно использовать Unity для разработки игр. Больше внимания уделено проектированию двумерных игр, фундамента...

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

[Перевод] Mozilla собирается использовать WASI для всех устройств, компьютеров и операционных систем Всем привет! На связи TestMace и мы продолжаем знакомить вас с самыми горячими новостями из мира JavaScript. На очереди перевод статьи о WASI — технологии, которая позволит использовать WebAssembly вне браузеров Один формат, чтоб править всеми Компания Mozilla на этой недел...

Spring JPA репозитории в CUBA Тема статьи достаточно узконаправленная, но, возможно, окажется полезной тем, кто разрабатывает свои собственные хранилища данных и думает об интеграции со Spring Framework. Предпосылки Разработчики обычно не очень любят менять свои привычки (зачастую, в список привычек вхо...

Технологии AR и VR в образовании Мысль о том, что в повседневном обучении важно использовать самые передовые технологии, не покидает умы не только современных исследователей, но и практически каждого из нас. По данным специалистов в области лингвистики и психологии, самые благоприятные условия для усвоени...

Хакер удаляет работы программистов и требует деньги за восстановление Сотни разработчиков вчера обнаружили, что их код в Git-репозиториях был кем-то удалён. Вместо него они увидели сообщение от неизвестного хакера с требованием выкупа за «похищенные» наборы файлов.

Популярный open source — часть третья: 5 инструментов для разработчиков Продолжаем говорить о самых обсуждаемых на Hacker News открытых проектах. Сегодня рассказываем о решениях для работы с репозиториями и блокчейнами. Предыдущие части: Инструменты для управления облаком Сервисы для работы с логами и базами данных Читать дальше →

[Перевод] Рассказ о том, как команда фрилансеров пишет фулстек-приложения на JavaScript Автор материала, перевод которого мы сегодня публикуем, говорит, что GitHub-репозиторий, над которым работал он и ещё несколько фрилансеров, получил, по разным причинам, около 8200 звёзд за 3 дня. Этот репозиторий попал на первое место в HackerNews и в GitHub Trending, за не...

[Перевод] Обзор новых функций NestJS 6 Мы в TestMace активно используем NestJS для разработки наших сервисов. Сегодня вашему вниманию представляется перевод статьи, посвященной обзору фич новой мажорной версии NestJS. Сегодня я рад представить официальный релиз Nest 6 — прогрессивного Node.js фреймворка для со...

Перенос почтовых ящиков между хранилищами в Zimbra Collboration Suite Ранее мы уже писали о том, насколько легко и просто масштабируется Zimbra Collaboration Suite Open-Source Edition. Добавление новых почтовых хранилищ можно осуществлять не останавливая работу инфраструктуры, на которой развернута Zimbra. Эта возможность высоко ценится SaaS-п...

[Перевод] Исследование глубин аннотаций типов в Python. Часть 1 C 2014 года, когда в Python появилась поддержка аннотаций типов, программисты работают над их внедрением в свой код. Автор материала, первую часть перевода которого мы публикуем сегодня, говорит, что по её оценке, довольно смелой, сейчас аннотации типов (иногда их называют «...

Как сбежать из секты? Наш мир устроен очень странно. И чем дальше, тем становится страннее. И хрен поймешь, в чем дело. Вот есть на свете инженеры и программисты. Иногда в одном лице. Люди, понимающие, что такое алгоритм. Более того – люди, создающие эти алгоритмы. Прекрасно знающие, что созданн...

[Перевод] Можно ли использовать Redux на сервере? Redux — это отличное средство для управления состоянием сложных фронтенд-приложений. Автор материала, перевод которого мы сегодня публикуем, собирается найти ответ на вопрос о том, можно ли воспользоваться возможностями Redux в серверной среде. Читать дальше →

Монады с точки зрения программистов (и немного теории категорий) Введение Как узнать, что человек понял, что такое монады? Он сам вам об этом расскажет в первые 5 минут общения и обязательно попробует объяснить. А ещё напишет об этом текст и по возможности где-нибудь его опубликует, чтобы все остальные тоже поняли, что такое монады. Среди...

Иммунная система человека использует для эффективной работы теорию хаоса Исследователи из Института Нильса Бора в Копенгагенском университете обнаружили, что динамика хаоса может играть жизненно важную роль в организации иммунной системы. Это настоящее открытие, так как ранее считалось, что жизнь должна априори тяготеть к упорядоченным формам и п...

Нарушающий законы физики двигатель проверят в Германии Как сообщает Wired, команда из Дрезденского технического университета должна опубликовать результаты своего эксперимента в августе 2019 года, а работы по его подготовке и проведению идут уже около года. Для проверки наличия малейшей тяги у EmDrive будут использованы усоверше...

[Перевод] Изучаем Docker, часть 6: работа с данными В сегодняшней части перевода серии материалов о Docker мы поговорим о работе с данными. В частности — о томах Docker. В этих материалах мы постоянно сравнивали программные механизмы Docker с разными съедобными аналогиями. Не будем отходить от этой традиции и здесь. Данные в ...

[Из песочницы] Откуда растут ноги у Java Memory Model Современное железо и компиляторы готовы перевернуть с ног на голову наш код, лишь бы он работал быстрее. А их производители тщательно скрывают свою внутреннюю кухню. И все прекрасно, пока код выполняется в одном потоке. В многопоточной среде можно волей-неволей наблюдать и...

Аппликативные парсеры на Haskell Мотивация Когда я только начинала осваивать Haskell, меня очень раздражало повсеместное использование сложных абстракций вместо каких-то конкретных решений. Мне казалось, что гораздо лучше всегда следовать принципу KISS и писать велосипеды с использованием элементарных конс...

Опыт перевода Maven-проекта на Multi-Release Jar: уже можно, но ещё сложно У меня есть маленькая библиотека StreamEx, которая расширяет возможности Java 8 Stream API. Библиотеку я традиционно собираю через Maven, и по большей части меня всё устраивает. Однако вот захотелось экспериментов. Некоторые вещи в библиотеке должны работать по-разному в раз...

[Перевод] 14 советов по написанию чистого React-кода. Часть 1 Написание чистого кода — это навык, который становится обязательным на определённом этапе карьеры программиста. Особенно этот навык важен тогда, когда программист пытается найти свою первую работу. Это, по существу, то, что делает разработчика командным игроком, и то, что сп...

Как мы сдружили EF 6 с MSSQL и PostgresSQL Жил-был проект на EF 6 с СУБД MSSQL. И появилась необходимость добавить возможность его работы с СУБД PostgreSQL. Проблем здесь мы не ожидали, ведь есть большое количество статей на эту тему, и на форумах можно найти обсуждение похожих задач. Однако, на деле не все оказало...

Как работает сжатие в объектно-ориентированной архитектуре памяти Команда инженеров из MIT разработала объектно-ориентированную иерархию памяти для более эффективной работы с данными. В статье разбираемся с тем, как она устроена. Читать дальше →

Что выбрать: MacBook Pro 2018 или 2017 года? В прошлом году Apple обновила линейку компьютеров MacBook Pro. Ноутбуки получили более мощные процессоры, улучшенную клавиатуру, экран и возможность апгрейда до 32 ГБ оперативной памяти. По сравнению с тем, как Apple обычно обновляет MacBook Pro (взять ту же модель с Touch ...

Как очистить оперативную память на Mac? Быстродействие компьютера далеко не всегда зависит от мощности его аппаратной начинки, особенно, если говорить про Mac. Высокий уровень оптимизации «харда» и «софта» обеспечивает компьютерам Apple возможность исправно работать на относительно слабом железе, месяцами не треб...

Habr Special #18 / Новые гаджеты Apple, полностью модульный смартфон, деревня программистов в Беларуси, феномен XY В этом выпуске: 00:38 — Новинки Apple: iPhone 11, Watch и бюджетный iPad для студентов. Добавляет ли профессиональности приставка Pro? 08:28 — «Честнофон» Fairphone — полностью модульный гаджет, у которого можно заменить буквально все части. 13:15 — «Медленная мода» тормо...

[Перевод] Изучаем Docker, часть 5: команды Сегодняшняя часть цикла материалов по Docker, перевод которого мы публикуем, посвящена командам Docker. Документация Docker содержит подробнейшее описание великого множества команд, но тот, кто только начинает работу с этой платформой, может в них и потеряться, поэтому здесь...

Toolbox для исследователей — третий выпуск: поиск источников и работа с ними Работа над любым исследовательским проектом включает в себя поиск и изучение множества источников информации. Организация этого процесса — непростая задача. Сегодня мы расскажем об инструментах, которые призваны оптимизировать различные ее составляющие. Toolbox для исследо...

Основы реактивного программирования с использованием RxJS. Часть 3. Higher Order Observables В данной статье мы рассмотрим, как можно в одном потоке обрабатывать другой, для чего это нужно, и как нам в этом помогут операторы Higher Order Observables (дальше HOO). При работе с потоками часто возникает ситуация, когда необходимо в качестве значения одному потоку пе...

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

Работа с навигацией при рефакторинге легаси проекта в React Native Данный материал посвящен работе по рефакторингу навигации в мобильной разработке. В статье приведены примеры возможных проблем, а также выходов из сложных ситуаций, связанных с работой навигации в мобильной разработке на React Native. Мы рассмотрим основные особенности и ...

TDMS Фарватер и BIM Приглашаем вас принять участие в бесплатном вебинаре «TDMS Фарватер и BIM». ЗАРЕГИСТРИРОВАТЬСЯ Дата проведения: 09.04.2019 г., в 11:00 по московскому времени. Продолжительность: 60 минут. Участие в вебинаре бесплатное, осталось мало мест. 9 апреля состоится вебинар: «TD...

Краеугольные камни уничтожения медленного кода в Wolfram Language: ускоряем код в десятки, сотни и тысячи раз Скачать файл с кодом и данные можно в оригинале поста в моем блоге Картинка к вебинару и посту взята не просто так: в определенном смысле символьное ядро Wolfram Language можно сравнить с Таносом — если бы его мощь была бы направлена в правильное русло, он мог бы стать самы...

[Перевод] Серверный рендеринг в бессерверной среде Автор материала, перевод которого мы публикуем, является одним из основателей проекта Webiny — бессерверной CMS, основанной на React, GraphQL и Node.js. Он говорит, что поддержка многоарендной бессерверной облачной платформы — это дело, которому свойственны особенные задачи....

[Перевод] Анализ и оптимизация React-приложений Люди, вроде меня, которые борются за высокую производительность сайтов, часто тратят на это много времени. Поэтому сейчас я собираюсь раз и навсегда решить проблему низкого быстродействий веб-ресурсов, интерфейс которых написан на React. А именно, я предлагаю всем, кто это ч...

[Перевод] 10 возможностей VS Code, помогающих ускорить работу программиста Когда программист попадает в состояние потока, его мысли часто движутся прямо-таки с космической скоростью. Он пишет код так быстро, как только может, прилагая все усилия к тому, чтобы ухватить свои идеи и не дать им растаять в воздухе или затеряться в закоулках новых образо...

[Перевод] 7 ключевых индикаторов риска Active Directory на панели мониторинга Varonis Все, что нужно злоумышленнику, – это время и мотивация для проникновения в вашу сеть. Но наша с вами работа состоит в том, чтобы не дать ему этого сделать или, по крайней мере, максимально усложнить эту задачу. Нужно начать с определения слабых мест в Active Directory (дал...

Артем Светлов: «Каждый день на работе я вижу, как OSM помогает самым разным компаниям» Артем Светлов aka trolleway — программист из NextGIS, а также любитель архитектуры и общественного транспорта. Он не только правит OpenStreetMap, но и каждый день работает с данными из него. Помимо этого, он увлекается съемкой сферических панорам улиц. Зачем он это делает, ...

[Перевод] Заметка о void в JavaScript и TypeScript Если вы, до того, как заинтересовались JavaScript, писали на традиционных языках с сильной типизацией, то вы, возможно, знакомы с концепцией void. Это — тип, использование которого сообщает программисту о том, что соответствующие функции и методы при их вызове ничего не возв...

[Перевод] GitLab 12.4 с улучшенными зависимостями мердж-реквестов и Audit API В GitLab 12.4 появилось несколько улучшений в сфере управления, включая Audit API, утверждение от владельца кода для защищенных веток и контроль доступа для Pages. Зависимости мердж-реквестов помогают управлять работой в командах, а другие замечательные фичи позволяют работ...

Гугология (это не опечатка) для программистов О математике (так, чтобы было интересно) писать сложнее, чем о физике. Однако я надеюсь, что вы дочитаете хотя бы до примеров сумасшедших программ на C. Читать дальше →

[Перевод] Python-скрипт на 20 строк, который каждый день желает родителям доброго утра через WhatsApp Автор материала, перевод которого мы сегодня публикуем, говорит, что современные люди, жизнь которых переполнена работой, часто забывают писать сообщения своим родным и близким. Он, глядя на то, как его родители каждое утро шлют ему в WhatsApp вдохновляющие цитаты и полезные...

[Из песочницы] Хранение и автоматическая сортировка фото и других файлов. Работа с файлохранилищем на базе NAS Synology Давно хотел написать про то как я храню свои файлы, как делаю бэкапы, но все никак не доходили руки. Недавно тут появилась статья, в чем-то похожую на мою но с другим подходом. Сама статья. Я уже много лет пытаюсь найти идеальный для себя метод для хранения файлов. Думаю я ...

Какое напольное покрытие использовать для своего дома? Согласитесь, много кто успел прикупить, либо достроить свой дом в жаркие летние дни и сейчас начал заниматься внутренними работами. Однако у большинства людей всегда появляются спорный моменты, когда работа достигает до напольного покрытия. Между ними встает выбор: ламинат, ...

[Из песочницы] Система генерации ландшафта лабиринта с улучшенным визуальным реализмом [перевод статьи Jinmo Kim] Привет, Хабр! В этой публикации я расскажу о статье автора Jinmo Kim: "Maze Terrain Authoring System in Immersive Virtual Reality for New Visual Realism". Она была опубликована 4.04.2019. Полный текст статьи можно посмотреть здесь. Краткое описание системы В стать...

Тайна Pixel 4 XL. Грядущий флагман Google, похоже, имеет какой-то элемент над экраном, о котором мы ранее не знали Грядущие смартфоны Google, похоже, повторяют судьбу своих предшественников, что касается утечек. Ещё в начале месяца мы получили возможность в подробностях рассмотреть Google Pixel 4 XL, а незадолго до этого и сама Google опубликовала изображения грядущего аппарата, под...

[Перевод] Профилирование кода Go-проекта и решение проблемы с выделением памяти Пожалуй, каждому программисту известны слова Кента Бека: «Make it work, make it right, make it fast». Сначала надо сделать так, чтобы программа работала, дальше — надо заставить её работать правильно, а уже потом можно переходить к оптимизации.  Автор статьи, перевод кото...

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

[Из песочницы] Передача знания и Нейронный машинный перевод на практике Нейронный машинные перевод (НМП, англ. Neural Machine Translation, NMT) развивается очень быстро. Сегодня, чтобы собрать свой переводчик, не нужно иметь два высших образования. Но чтобы обучить модель, нужен большой параллельный корпус (корпус, в котором предложению на исход...

Книга «Дизайн-мышление. От инсайта к новым продуктам и рынкам» Привет, Хаброжители! В последние годы произошел всплеск интереса к дизайн-мышлению. Мы живем в эпоху, когда банки отказываются от традиционных банковских операций и переходят на цифровые деньги. На наших глазах рождаются стартапы, которые создают новые рынки, используя дизай...

[Перевод] Ускоряем JavaScript-код с использованием типа данных Set Автор материала, перевод которого мы сегодня публикуем, говорит, что уверен в том, что многие JavaScript-разработчики пользуются, в основном, такими типами данных, как Number, String, Object, Array и Boolean. В большинстве случаев этого вполне достаточно. Но если нужно сдела...

[Из песочницы] Побеждаем прокрастинацию игровой зависимостью Всем вам, безусловно, знакомо явление прокрастинации. Психологическая неспособность покинуть зону комфорта и начать заниматься каким-то делом здесь и сейчас съела немало человеко-часов представителей самых разных профессий. Под её влиянием, не занимаясь ни делом, ни отдыхом,...

[Из песочницы] Всё что вам нужно знать о Node.js Привет, Хабр! Представляю вашему вниманию перевод статьи "Everything you need to know about Node.js" автора Jorge Ramón. В наши дни платформа Node.js является одной из самых популярных платформ для построения эффективных и масштабируемых REST API's. Она так же под...

[Из песочницы] Гопники теперь и на зарубежных рынках или «Почему так сложно найти нормального программиста?» Вечная конкуренция Для многих из нас уже давно не секрет, что найти заказчика на проект краткосрочный или долгосрочный на ресурсах интернета — это очень непростая задача. В основном, потому что очень большая конкуренция: от тебя хотят максимум работы за минимум денег. И ког...

Напиши свою песню за 10 минут (модуль textgenrnn Python3) Сегодня попробуем обучить свою собственную нейронную сеть, чтобы писала текст для песен. Обучающей выборкой будут тексты группы "Руки Вверх". Ничто не мешает чтобы поменять данные на тексты своих любимых групп. Для извлечения данных с веб-сайтов используем Python3 (модуль B...

[Из песочницы] Сети кабельного телевидения для самых маленьких. Часть 1: Общая архитектура сети КТВ Как бы просвещённое сообщество не ругало телевидение за негативное влияние на сознание, тем не менее, телевизионный сигнал присутствует практически во всех жилых (и во многих нежилых) помещениях. В больших городах это почти всегда телевидение кабельное, даже если все вокру...

[Из песочницы] NeoBook: среда программирования для непрограммистов NeoBook: среда программирования для непрограммистов Для кого эта статья Статья написана, в первую очередь, для тех, кто не является профессиональным программистом, но хочет уметь создавать свои собственные компьютерные программы для компьютеров с Windows. Программирование ...

[Из песочницы] Локальный (offline) npm репозиторий Предыстория Решив продаться задорого, я оказался у работодателя, где интернета нет не только в пром-контуре, но и в деве (ситуация на самом деле нередкая во многих, так сказать, "энтерпрайзах"). Есть IE в консоли, где ты, мой дорогой читатель, можешь конечно посм...

Проект Salmon: как эффективно противостоять интернет-цензуре с помощью прокси с уровнями доверия пользователям Правительства многих стран так или иначе ограничивают доступ граждан к информации и сервисам в интернете. Борьба с подобной цензурой – важная и непростая задача. Обычно простые решения не могут похвастать высокой надежностью или долговременной эффективностью. Более сложные...

[Перевод] 10 самых влиятельных языков программирования последних 50 лет и их создатели В IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них. Языки, о которых пойдёт...

Как очистить оперативную память на Android-смартфоне Освободив оперативную память, вы заставите смартфон работать быстрее Большинство устройств среднего и высокого ценового диапазона, выпущенные за последние пару лет, имеют в районе 4 гигабайт оперативной памяти. Если, конечно, мы не будем принимать во внимание флагманы вроде ...

В поисках вдохновения, или Как вытащить себя из Ж После выхода моей первой статьи «Не бойтесь пробовать, или Как я стала программистом в возрасте далеко за 18», в личку и комментариях на Хабре, а также в соцсетях стали приходить самые разные отзывы. Один из них запомнился больше всего: «Спасибо за Вашу статью. Очень грамо...

1С, не болей Я в жизни видел два типа бизнеса, которые развиваются хуже всех — франчайзи 1С и продавцы елок. Речь не о развитии вширь, когда просто поголовье программистов растет, а о внутреннем развитии. Об эффективности, короче. Хотя, наверное, продавцов ёлок можно исключить из этого ...

[Перевод] Ускорение разведочного анализа данных с использованием библиотеки pandas-profiling Первым делом, приступая к работе с новым набором данных, нужно понять его. Для того чтобы это сделать, нужно, например, выяснить диапазоны значений, принимаемых переменными, их типы, а также узнать о количестве пропущенных значений. Библиотека pandas предоставляет нам множе...

[Перевод] Parcel — мой любимый сборщик проектов Сегодня мы поговорим о сборщиках проектов (о бандлерах), об инструментах, которые облегчают жизнь разработчиков. Суть работы бандлеров заключается в том, что они берут JavaScript-код, содержащийся во множестве файлов, и упаковывают его в один или несколько файлов, определённ...

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

[Перевод] Три совета по управлению временем для тех, кто всё перепробовал Оптимизация времени и расписания не должна быть сложной математической задачей Если поискать в Интернете «советы по тайм-менеджменту», вы найдете множество страниц с рекомендациями — начиная с личных блогов и заканчивая рецензируемыми статьями, — где вам обязательно расск...

Домашняя автоматика с поддержкой промышленных языков программирования, или BluePill x405 Начало обзора Итак, мои дорогие коллеги, начнём обзор с того, что же на самом деле мы хотим тут осветить. В статье я хочу рассмотреть элементы, характерные для построения программы промышленного контроллера, и показать, как их можно применить для систем домашней автоматики. ...

Домен-фронтинг на базе TLS 1.3 Введение Современные корпоративные системы фильтрации контента, от таких именитых производителей как Cisco, BlueCoat, FireEye имеют довольно много общего с более мощными их собратьями — DPI системами, которые усиленно внедряются на национальном уровне. Суть работы и тех и д...

[Перевод] Диаграмма Ганта vs Канбан доска Если коротко – диаграммы Ганта полезны, когда зависимости являются основным фактором формирования расписания, тогда как Канбан доски можно использовать для работ, которые не имеют зависимостей между собой. Кроме того, диаграммы Ганта подходят, когда существует предварительн...

[Из песочницы] Управление временем в проектах Самая большая боль современного человека – время. Время является одним из самых важных и нужных ресурсов. Но проблема в том, что время никогда не повернуть вспять, нельзя сохранить в какой-нибудь баночке «до лучших времен», нельзя вложить в банк, что-то на него купить или пр...

Клининговые услуги на высоте - качественно, быстро и доступно Согласитесь, частоту необходимо соблюдать не только внутри зданий, но и снаружи. Однако, когда речь заходит о высотных работах снаружи зданий, обычные уборщики помещений здесь не подойдут. Выход есть, главное обратиться к профессионалам своего дела. Не знаете к кому? Вы ко...

Как написать вредное API Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. Всем привет! Я работаю тимлидом команды Integration Development в сервисе онлайн-бронирования отелей Ostrovok.ru и сегодня хотел бы поделиться своим опытом работы с ра...

[Перевод] Учебный курс по React, часть 11: динамическое формирование разметки и метод массивов map В сегодняшней части перевода учебного курса по React мы поговорим об использовании стандартного метода массивов map() для организации динамического формирования JSX-разметки, описывающей наборы однотипных элементов. → Часть 1: обзор курса, причины популярности React, Reac...

[Перевод] Главный секрет разработки хороших Electron-приложений Кое-кто люто ненавидит Electron-приложения. То, что приложение включает в себя браузер Chromium, кажется, мягко говоря, странным. Это ощущение усиливается в ходе работы с такими приложениями. Они потребляют много памяти, медленно загружаются и не отличаются особенно высокой ...

Выгодное приобретение торгового робота для Форекс Многие трейдеры по достоинству оценят инновационную разработку в виде торгового робота, который позволяет в автоматическом режиме управлять своими финансами на рынке. Это уникальная система, которая по определенному алгоритму осуществляет свою работу относительно распределен...

Как организовать мобильный офис со смартфона на Android Проджект-менеджер в Москве, программист в Таиланде, а копирайтер на Бали. Офис давно перестал быть обязательным условием ведения бизнеса. Более актуальная задача сегодня – найти эффективный способ управления удалённой командой. И смартфон играет здесь не последнюю роль. Как...

Управление климатом в коллективе Хотелось ли вам работать в коллективе, который решает творческие и не стандартные задачи, где сотрудники доброжелательны, улыбчивы и креативны, где они удовлетворены работой, где стремятся быть эффективными и успешными, где царит дух настоящей команды, которая сама и непреры...

Переезд программиста в Эстонию: работа, деньги и стоимость жизни На хабре довольно популярны статьи о переезде в разные страны. Я собрал информацию о переезде в столицу Эстонии – Таллин. Сегодня поговорим о том, легко ли разработчику найти вакансии с возможностью релокации, сколько можно заработать и чего вообще ожидать от жизни на севе...

4 раздражающие проблемы Android и как с ними справиться Делаем Android лучше! Давайте будем честны с самими собой: идеальной мобильной операционной системы не существует. Можно сколь угодно долго спорить о том, что лучше — Android или iOS, но неоспоримый факт всегда будет лишь один — и там, и там, есть раздражающие мо...

Гайд по автоматическому аудиту смарт-контрактов. Часть 2: Slither Анализатор: Slither Описание: Open-source static analysis framework for Solidity githib: https://github.com/trailofbits/slither Это статический анализатор кода, написанный на python. Он умеет следить за переменными, вызовами, и детектирует вот такой список уязвимостей. У каж...

Популярные игры отправляют ваши данные третьим лицам, а разработчики даже не в курсе Ряд исследований показал, что популярные игры отправляют данные нескольким сторонним организациям, и порой даже даже сами разработчики этих игр могут не знать, какие данные кому отправляются. Например, одна из популярнейших во всем мире франшиз Angry Birds, как выяснилось, ...

ИТ компания TrustSol Современный бизнес на сегодняшний день требует поддержки со стороны IT сервисов и систем. Компания TrustSol предоставляет услуги ИТ-аутсорсинга, Ит услуг разной сложности. Компания готова оказать помощь в виде единого консультирования или же полного создания и внедрения прое...

Пользователи массово жалуются на проблемы iOS 13.1.2 iOS 13.1.2 — уже третий апдейт, вышедший после iOS 13, но проблем в нём хоть отбавляй Думаю, немногие могут похвастать тем, что ни разу не столкнулись с какими-либо проблемами после обновления до новых версий iOS. Разного рода недоработки даже стали своего рода фишкой ...

[Из песочницы] Генератор мемов на Ruby для привлечения интереса к языку По моему мнению язык Ruby перестал быть популярным как в 2012 — 2014 году и поэтому у меня возникло желание пока про язык совсем не забыли, попробовать его снова донести в массы, ведь Ruby по моему мнению самый удобный и практичный язык для веб разработки. Я с неделю назад ...

Пробуем preload (PHP 7.4) и RoadRunner Привет, Хабр!  Мы часто пишем и говорим о производительности PHP: как мы ей занимаемся в целом, как мы сэкономили 1 млн долларов при переходе на PHP 7.0, а также переводим разные материалы на эту тему. Это вызвано тем, что аудитория наших продуктов растёт, а масштабирован...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 4 ← Часть 3. Косвенная адресация и управление потоком исполнения Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 4. Программирование периферийных устройств и обработка прерываний В этой части поста мы, как и обещали, займемся одним из самых востребован...

[Из песочницы] Angular. Понимание @Input, @Output и EventEmitter Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding @Input, @Output and EventEmitter in Angular» автора foolishneo. Приветствую всех желающих накапливать информацию о тонкостях работы фреймворка Angular. Сегодня посчитал нужным лучше изучить информацию,...

Исследование рынка аналитиков: где учатся, какими инструментами пользуются и сколько зарабатывают Партнеры Нетологии — компания «Нормальные исследования» совместно с рекрутинговым агентством New.HR и сервисом анонимного поиска работы GeekJob.ru — провели глубокое исследование рынка аналитиков. Среди охваченных тем — можно ли быть успешным аналитиком без профильного образ...

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

Data Version Control (DVC): версионирование данных и воспроизводимость экспериментов Эта статья — своеобразный мастер-класс «DVC для автоматизации ML экспериментов и версионирования данных», который прошел 18 июня на митапе ML REPA (Machine Learning REPA: Reproducibility, Experiments and Pipelines Automation) на площадке нашего банка. Тут я расскажу об осо...

Свежий воздух на Марсе: согнуть молекулу СО2 и получить кислород Что мы вспоминаем при словосочетании «научная фантастика»? Конечно же роботов, летающие машины, исследование ранее неизведанных уголков Вселенной, инопланетян и еще целую вереницу сюжетов. Среди них особое место всегда занимала тема заселения другой планеты, то ли от увере...

Как общаться онлайн по работе и не выгореть Возможности онлайн общения можно использовать на благо себе и клиенту, а можно и выгореть, всегда оставаясь на связи. Психолог и руководитель психологической службы для сотрудников и волонтеров благотворительных организаций «Вдох» Ольга Сорина специально для Теплицы рас...

Эффективное решение для контроля сотрудников Согласитесь, сегодня достаточно тяжело следить за каждым сотрудником, особенно если ваша компания насчитывает огромное количество персонала. Однако необходимость следить за качеством и своевременным выполнением работы все же остается. Но как все это успеть и какими решениями...

[Перевод] Жизненный цикл кода на Python – модель выполнения CPython Всем привет! Наступила весна, а это значит, что до запуска курса «Разработчик Python» остается меньше месяца. Именно этому курсу и будет посвящена наша сегодняшняя публикация. Задачи: — Узнать о внутреннем устройстве Python; — Понять принципы построения абстрактного син...

[Из песочницы] Не переусложняйте ваш CI/CD и пользуйтесь Docker'ом осмысленно Я работал в разных компаниях, которые используют микросервисы. И они запускали их в docker контейнерах. Сейчас я работаю с проектом, который хоть и монолит, но его все равно удобнее запустить в контейнере. С одной стороны, Docker очень универсальный инструмент, его можно л...

Защищенный смартфон с поддержкой ИИ и не только: чем интересны устройства Poptel Это первый защищенный телефон с поддержкой ИИ На рынке смартфонов сейчас можно наблюдать довольно интересную ситуацию: производители поняли, что экраны увеличивать уже некуда, а размер оперативной и встроенной памяти ограничен технологиями, поэтому каждый хочет выделиться на...

Кто есть кто в ИТ? На современном этапе развития промышленной разработки программного обеспечения можно наблюдать многообразие производственных ролей. Их число растет, классификация усложняется с каждым годом, и, естественно, усложняются процессы подбора специалистов и работы с кадровым поте...

Открытый вебинар «Работа: своя и чужая» Добрый день, друзья! Уже в этот четверг мы запускаем новый поток по курсу «Руководитель разработки». И сегодня хотим поделиться с вами транскрипцией открытого вебинара, который прошел на прошлой неделе. Открытый вебинар «Работа: своя и чужая» С одной стороны, фраза «это н...

[Перевод] Крошечные компоненты: что может пойти не так? Используем принцип единственной ответственности Представляем вашему вниманию перевод статьи Scott Domes, которая была опубликована на blog.bitsrc.io. Узнайте под катом, почему компоненты должны быть как можно меньше и как принцип единственной ответственности влияет на качество приложений. Фото Austin Kirk с Unsplash Чит...

Что делать при сбое оперативной памяти. Анамнез и методы лечения Оперативная память – такая деталь системы, которая реже всех выходит из строя. Но спонтанные перезагрузки системы с BSOD и без него, вылеты игр или программного обеспечения, некорректные результаты обработки заданий в тяжёлом софте – всё это и многое другое может быть симпто...

Повышение эффективности ручного тестирования на VueJS Сегодня я предлагаю затронуть вопрос ручного тестирования проектов на VueJS. Независимо от уровня автоматизации процессов тестирования, практически всегда остается “живое общение” тестировщика с будущим релизом. Естественно, что оно должно быть комфортным и эффективным. ...

[Перевод] Распределение памяти в JVM Всем привет! Перевод сегодняшнего материала мы хотим приурочить к запуску нового потока по курсу «Разработчик Java», который стартует уже завтра. Что ж начнём. JVM может быть сложным зверем. К счастью, большая часть этой сложности скрыта под капотом, и мы, как разработчики ...

Едим слона по частям. Стратегия мониторинга работоспособности приложений на примерах Всем привет! Наша компания занимается разработкой программного обеспечения и последующей технической поддержкой. В рамках технической поддержки требуется не просто исправлять ошибки, а следить за работоспособностью наших приложений. Например, если «упал» один из сервисов, ...

Как плавание влияет на работу мозга? Плавание полезнее, чем вы думали Как известно, вода жизненно необходима для выживания человека, но не только ее употребление дает нам преимущества. Плавание полезно не только для профилактики сердечно-сосудистых заболеваний и общего поддержания здоровья, но также для работы ...

F#3: Форматирование текста При работе с любым языком вам, скорее всего, нужно будет отформатировать текст, и F# ничем не отличается. Поскольку F# является языком .NET, мы всегда можем использовать Console.WriteLine (..) и String.Format (..), где мы можем использовать любой из обычных форматеров, кото...

[Перевод] 101 совет, как стать хорошим программистом (и человеком) 1. Научитесь гуглить Быть программистом, — значит научиться искать ответы на свои вопросы. Научившись эффективно «гуглить», вы сэкономите много времени, затрачиваемого на разработку. 2. Не обещайте много, но делайте больше, чем обещали Лучше сообщать вашей команде, что вы...

Ученые впервые вырастили человеческую печень в лаборатории Ученые уже довольно давно занимаются исследованиями по выращиванию искусственных органов, но до недавнего времени получить жизнеспособные образцы было довольно затруднительно. Однако исследователи из Питтсбургского университета впервые в истории вырастили в лаборатории чело...

Хакатон HACKnowlege Ассоциация интернет-издателей и «Викимедиа РУ» при поддержке компании Яндекс хотят привлечь как можно больше пользователей к работе с ресурсами проектов на открытых лицензиях. Участников ждут воркшопы и прикладные и лекции от руководит...

[Перевод] Заменяют ли Redux хуки React? С тех пор, как в React появились хуки, возникает много вопросов о том, способны ли они заменить Redux. Я полагаю, что хуки и Redux имеют мало общего между собой. Хуки не дают нам неких новых удивительных возможностей по работе с состоянием. Они, вместо этого, расширяют API,...

Как делают перевод фильмов: раскрываем секреты Перевод и локализация фильмов — крайне интересное занятие, в котором встречается целая куча подводных камней. Именно от переводчика во многом зависит восприятие фильма зрителями, поэтому это дело крайне ответственное. Расскажем вам, как на самом деле ведется работа над лок...

[Из песочницы] FFmpeg начало работы с Visual Studio Привет! Начну с того, что я занимаюсь разработкой программы определения автомобильных номеров на дешевом слабо мощном процессоре типа Intel ATOM Z8350. Мы получили достаточно хорошие результаты в определении российских номеров на статической картинке (до 97%) с не плохим быс...

[Из песочницы] Феерический screensaver для Kodi Назначение хранителя экрана для «Kodi» Проект предназначен для создания «Феерического» хранителя экрана с минимальным количеством исходного кода на языке Python. Проект является простейшим плагином для мультимедиа центра Kodi. Проект показывает как можно создать очень кра...

Марафон бесплатных мастер-классов по интернет-маркетингу, PR и SMM Хотите освоить интернет-профессию? Узнать, как правильно и эффективно вести социальные сети компании? Разобраться, как управлять проектами и репутацией в интернете? 10 июля приглашаем на Марафон бесплатных мастер-классов по интернет-маркетин...

Работа с командой Впервые на Saint TeamLead Conf 2019 будет три потока докладов. Мы растём и развиваемся, а тематика конференции позволяет широко и глубоко освещать разные направления работы и развития тимлида. Традиционно будет 6 основных направлений: личное развитие, работа с командой, инст...

Удаленка в IT: личный опыт Сейчас все больше компаний готовы к найму удаленных сотрудников. Для работодателей это расширяет возможность выбора высококвалифицированных специалистов. В Surf найм удаленных сотрудников практикуется уже давно, на данный момент 40% работают дистанционно — разработчики и мен...

Самый эффективный способ борьбы с пиратством — удобные и дешёвые легальные сервисы Всё новые исследования подтверждают один и тот же факт: карательные меры и репрессии против пользователей и распространителей пиратского контента — не лучший способ борьбы с пиратством. Самая эффективная мера — это дешёвые и качественные легальные сервисы, которыми люди буду...

Работа с инцидентами, улучшение incident response и ценность техдолга. Материалы митапа Backend United 4: Окрошка Привет! Это пост-отчёт с митапа Backend United, нашей серии тематических встреч для разрабочиков серверной части. В этот раз мы много говорили о работе с инцидентами, обсуждали, как выстроить свою систему для улучшения incident response и убедились в ценности техдолга. Захо...

[Перевод] Обработка 40 ТБ кода из 10 млн проектов на выделенном сервере с Go за $100 Написанной мной инструмент командной строки Sloc Cloc and Code (scc), который теперь доработан и поддерживается многими отличными людьми, подсчитывает строки кода, комментарии и оценивает сложность файлов внутри каталога. Здесь нужна хорошая выборка. Инструмент подсчитывает ...

[Перевод] Приключения с ptrace(2) На Хабре уже писали про перехват системных вызовов с помощью ptrace; Алекса написал про это намного более развёрнутый пост, который я решил перевести. С чего начать Общение между отлаживаемой программой и отладчиком происходит при помощи сигналов. Это существенно усложняет...

[Перевод] Почему мозгу нужно давать «передохнуть» Для работы некоторых жизненно важных функций мозг должен быть в состоянии покоя Внимание — один из ценнейших ресурсов, и его часто с трудом хватает на всё. Существенная его часть уделяется работе и социальным коммуникациям. Оставшиеся же крохи незаметно уходят на стимулы...

Бесплатный онлайн-семинар «SCRUM и фриланс: принцесса и чудовище. Как работать в 2 раза эффективнее?» Хотите успевать работать в 2 раза больше за то же время? 29 октября Академия Интернет-маркетинга WebPromoExperts приглашает на бесплатный онлайн-семинар по SCRUM-планированию для самоорганизации, а также для организации работы не...

[Перевод] JavaScript: 7 полезных мелочей Автор заметки, перевод которой мы сегодня публикуем, говорит, что в JavaScript, как и в любом другом языке программирования, можно обнаружить множество маленьких хитростей, предназначенных для решения самых разных задач, как простых, так и довольно сложных. Некоторые из подо...

[Перевод] Как научить людей использовать Git По работе приходится участвовать в разных проектах, поэтому я хорошо знаю, как работают все мои коллеги. Помню, что компания начала использовать Git буквально за пару недель до моего прихода. На мониторах разработчиков кругом висели наклейки с напоминанием: сначала add, пото...

Найден эффективный способ побороть старение мозга Португальские ученые впервые показали, что гибель нервных клеток при болезни Альцгеймера отчасти является защитной реакцией организма на растущее число неправильно работающих нейронов. Этот же механизм позволяет мозгу бороться со старением, продлевая его нормальное функциони...

[Перевод] Обзор инструментов для безопасности GitHub репозиториев Введение Когда вы начинаете создавать репозиторий на GitHub, одной из первых вещей, о которых вы должны подумать, является безопасность. В случае, если вы создаете свой собственный репозиторий GitHub или часто контрибьютите в репозиторий, вам необходимо знать, содержит ли...

[Перевод] Создание динамических PDF-файлов с использованием React и Node.js Материал, перевод которого мы сегодня публикуем, посвящён созданию динамических PDF-файлов с использованием HTML-кода в качестве шаблона. А именно, речь пойдёт о том, как сформировать простой счёт на оплату неких товаров или услуг, динамические данные, включённые в который, ...

[Перевод] Знакомство с Тестированием в Python. Ч. 3 Друзья, у нас для вас отличные новости. Во-первых на улице наконец-то светит солнышко, а это значит, что весна начинает полноправно вступать в свои права. Вторая новость более профильная — уже 20 марта стартует первое занятие в новом потоке по курсу «Разработчик Python», в с...

Вакансия: Теплица социальных технологий ищет координатора программы «Пасека» Теплица социальных технологий ищет координатора программы «Пасека». Прием заявок открыт до 10 апреля 2019 года. Программа «Пасека» – это сообщество веб-студий, агентств, IT-компаний и независимых профессионалов, заинтересованных в работе с некоммерческими организациями и...

[Из песочницы] Работа в немецкой компании – как подать резюме и не получить отказ? IT – одна из самых благодатных сфер для трудовой миграции. С введением в Германии системы Blue Card для высококвалифицированных специалистов кандидаты с постсоветского пространства начали конкурировать за рабочие места с программистами со всего мира. Оно и понятно: немецка...

[Из песочницы] JavaScript в 3D: введение в Three.js Привет, Хабр! Представляю Вашему вниманию перевод статьи «JavaScript in 3D: an Introduction to Three.js» автора Брета Кемерона (Bret Cameron). Введение Three.js это мощный инструмент. Он помогает использовать 3D дизайн в браузере с приемлемой производительностью. По нач...

[Перевод] GraphQL и Golang Технология GraphQL за последние несколько лет, после того, как компания Facebook перевела её в разряд опенсорсных, стала весьма популярной. Автор материала, перевод которого мы сегодня публикуем, говорит, что попробовал работать с GraphQL в среде Node.js и на собственном опы...

[Перевод] Apollo Client. Теперь — с хуками React Автор материала, перевод которого мы публикуем сегодня, говорит, что миссия разработчиков Apollo Client заключается в том, чтобы сделать этот инструмент самым современным и удобным решением для управления состоянием React-приложений. Сообщество React развивается и осваивает ...

[Перевод] Данные по-прежнему важнее Вот цитата из Линуса Торвальдса за 2006 год: Я огромный сторонник разработки кода вокруг данных, а не наоборот, и я думаю, что это одна из причин, по которой git был довольно успешным… По сути, я утверждаю, что разница между плохим программистом и хорошим заключается в том,...

Долбанутые среди нас Во все времена кого-нибудь да не хватает для успешной и эффективной работы бизнеса/завода или иного предприятия. Проблема эта вечная и мы — не исключение. Посему, хочется порассуждать о современных потребностях в отмороженных и прочих инакомыслящих. Читать дальше →

О ЦОДе начистоту: как мы решали проблему пыли в серверных помещениях дата-центра Привет, Хабр! Я Тарас Чирков, директор ЦОД Linxdatacenter в Санкт-Петербурге. И сегодня в нашем блоге я расскажу о том, какую роль в нормальной работе современного дата-центра играет поддержание чистоты в помещении, как правильно ее измерять, достигать и поддерживать на ну...

[Перевод] API IntersectionObserver и ленивая загрузка изображений Использование ленивой загрузки изображений для улучшения производительности веб-проектов — востребованная техника оптимизации. Всё дело в том, что изображения — это «тяжёлые» ресурсы, которыми переполнены современные веб-сайты. Мы уже кое-что об этом публиковали. Здесь можно...

Как я создавал Recycle! VR В предыдущей статье мы попробовали создать базовую сцену в A-Frame, чтобы опробовать основные концепции фреймворка на практике. В этой статье я хотел бы поделится своим опытом создания игры на A-Frame — Recycle! VR. Репозиторий проекта доступен по следующей ссылке. Перера...

[Перевод] Хватить использовать смехотворно малый TTL для DNS Низкая задержка DNS — ключевой фактор для быстрой работы в интернете. Чтобы её минимизировать, важно тщательно подобрать DNS-серверы и анонимные рилеи. Но первым делом следует избавиться от бесполезных запросов. Именно поэтому DNS изначально создавался как сильно кэшируемый...

QEMU.js: теперь по-серьёзному и с WASM Когда-то давно я смеха ради решил доказать обратимость процесса и научиться генерировать JavaScript (а точнее, Asm.js) из машинного кода. Для эксперимента был выбран QEMU, некоторое время спустя была написана статья на Хабр. В комментариях мне посоветовали переделать проект ...

С бородой, в тёмных очках и в профиль: трудные ситуации для компьютерного зрения Технологии и модели для нашей будущей системы компьютерного зрения создавались и совершенствовались постепенно и в разных проектах нашей компании — в Почте, Облаке, Поиске. Вызревали как хороший сыр или коньяк. Однажды мы поняли, что наши нейросети показывают отличные резу...

[Из песочницы] Выбор между XML и SQL для накатывания скриптов LiquiBase на примере Java/Spring/H2 В процессе работы над очередным проектом в команде возникли споры по поводу использования формата XML или SQL в Liquibase. Естественно про Liquibase уже написано много статей, но как всегда хочется добавить свои наблюдения. В статье будет представлен маленький туториал по со...

Лазерная коррекция зрения — так ли эффективен метод Smile на самом деле? Мои исходные данные: небольшая близорукость, -1 диоптрия, но всего лишь 20% остроты — видел только две строчки. Очки или линзы мне были неудобны, поэтому я решил сделать операцию. Выбор сводился всего к двум типам — Femto lasik или Smile. Фемто — проверенный и надежный мет...

[Перевод] Самые позорные ошибки в моей карьере программиста (на текущий момент) Как говорится, если тебе не стыдно за свой старый код, значит, ты не растешь как программист — и я согласна с таким мнением. Я начала программировать для развлечения более 40 лет назад, а 30 лет назад и профессионально, так что ошибок у меня набралось очень много. Будучи пр...

Управление огнем как часть работы руководителя Эта статья посвящена управлению рисками, а никак не тяжелой работе пожарника, как могло бы показаться из названия. Тем не менее, мне кажется близким этот образ, когда я говорю об управлении рисками, потому как последствия неправильного контроля могут быть, порой, не менее др...

[Перевод - recovery mode ] Как предотвратить одебиливание компании? Как-то больно смотреть как крутая, эффективная и боевая компания скатывается в тупую посредственность и середнечковость. В Кремниевой Долине мы это называем «одебиливанием» (bozo explosion). Этот процесс кажется неизбежным для любой компании, пришедшей к успеху, обычно посл...

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

[Перевод] Сборщик мусора в V8: как работает Orinoco Не то чтобы работа сборщика мусора — это то, о чём каждый день думает фронтенд-разработчик, но это очень интересно. Если честно, это одна из самых жестоких статей, что я читал за последнее время: тут много про смерть в молодом возрасте, про гонения из одной области памяти в ...

[Из песочницы] Размышления на тему карьеры в IT и советы начинающим Привет, Хабр! Я тут недавно много думал насчёт карьеры, будущего нашей индустрии и так далее. Решил написать статью для тех кто только собирается сюда въезжать, да и вообще возможно кому-то будет интересно, все нижеприведенное чисто мое имхо и многое из того что я скажу прим...

Kubernetes кластер за $20 в месяц TL; DR Поднимаем кластер для обслуживания веб-приложений без записи состояния (stateless web applications) вместе с ingress, letsencrypt, не используя средства автоматизации вроде kubespray, kubeadm и любых других. Время на чтение: ~45-60 минут, на воспроизведение действий: ...

[Перевод] Встроенная альтернатива Redux с React Context и хуками От переводчика: Представляю вольный перевод стать о том, как реализовать эффективное решение для замены Redux контекстом React и хуками. Указание на ошибки в переводе или тексте приветствуются. Приятного просмотра. С момента выхода нового Context API в React 16.6.0 многие...

Как зависит перевод термина trunk от вендора коммутаторов? На эту ошибку (или, если хотите, разночтение) я обратил внимание во время проверки перевода по коммутаторам NETGEAR. Дело в том, что при переводе термина “trunk” нужно обязательно учитывать, чьей трактовки придерживается вендор — Cisco или HP, ибо между ними очень разный тех...

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

[Перевод] Нейросети и глубокое обучение: онлайн-учебник, глава 2 Содержание Глава 1 Глава 2 В прошлой главе мы видели, как нейросети могут самостоятельно обучаться весам и смещениям с использованием алгоритма градиентного спуска. Однако в нашем объяснении имелся пробел: мы не обсуждали подсчёт градиента функции стоимости. А это приличный...

Понимаем UICollectionViewLayout на примере Photos App Здравствуй, Хабр! Меня зовут Никита, я работаю над мобильными SDK в компании ABBYY и в том числе занимаюсь UI-компонентом для сканирования и удобного просмотра многостраничных документов на смартфоне. Этот компонент сокращает время на разработку приложений на базе технологии...

[Перевод] Записки фрилансера: разработка первого React Native-приложения Автор материала, перевод которого мы публикуем, недавно выпустил своё первое мобильное приложение, написанное на React Native. Так случилось, что это приложение стало и его первым проектом, который он создал как программист-фрилансер. Здесь он расскажет о том, с чем ему приш...

[Из песочницы] Подписываемся на Kafka по HTTP или как упростить себе Веб-хуки Существует множество способов обработки сообщений из Pub-Sub систем: использование отдельного сервиса, выделение изолированного процесса, оркестрация пулом процессов/потоков, сложные IPC, Poll-over-Http и многие другие. Сегодня я хочу рассказать о том, как использовать Pub-S...

[Из песочницы] Почему Вы должны попробовать FastAPI? Лого взято из Github репозитория FastAPI FastAPI — относительно новый веб-фреймворк, написанный на языке программирования Python для создания REST (а если сильно постараться то и GraphQL) API, основанный на новых возможностях Python 3.6+, таких как: подсказки типов (type-hi...

JDBC-пулы и эффективная работа с файлами: Java-митап 3 декабря в Петербурге Приглашаем вас на Java митап о перфомансе, который пройдет 3 декабря в питерском офисе Wrike. Поговорим о низкоуровневых, но важных для разработчиков любого уровня вещах, которым порой не хватает места на java-конференциях. Читать дальше →

[Перевод] Для чего нужны «золотые сигналы» мониторинга и SRE? Прим. перев.: То, что сегодня принято называть SRE (Site Reliability Engineering — «обеспечение надежности информационных систем»), включает в себя большой спектр мероприятий по эксплуатации программных продуктов, направленных на достижение ими необходимого уровня надежности...

[Перевод] Python как предельный случай C++. Часть 2/2 Продолжение. Начало в «Python как предельный случай C++. Часть 1/2». Переменные и типы данных Теперь, когда мы окончательно разобрались с математикой, давайте определимся, что в нашем языке должны означать переменные. В С++ у программиста есть выбор: использовать автоматичес...

Кому доверить проектирование объектов техперевооружения и реконструкции Из десяти проектов на российском промышленном рынке сегодня только два — новое строительство, а остальные — связаны с реконструкцией или модернизацией уже имеющихся производств. Для выполнения любых проектных работ заказчик выбирает исполнителя среди компаний, сравнить кото...

Компания Cellebrite создала устройство для взлома iPhone на iOS 12.3 В прошлом году израильская компания Cellebrite создала эффективное решение для взлома заблокированных яблочных мобильных устройств. Однако купертиновцы достаточно быстро разработали методы противодействия, которые направлены на защиту пользовательских данных. На днях предста...

Умный сервис кэша на базе ZeroMQ и Tarantool Руслан Ароматов, главный разработчик, МКБ Привет, Хабр! Я работаю бэкенд-разработчиком в Московском кредитном банке, и за время работы у меня накопился некоторый опыт, которым я хотел бы поделиться с сообществом. Сегодня я расскажу, как мы писали свой собственный сервис к...

[Перевод] Angular: состояние дел в 2019 году Сейчас лето — то время года, когда во всём мире проводятся различные конференции и другие мероприятия. Программистов в эту пору буквально заваливает новой информацией, которую обычно бывает довольно непросто усвоить. Вселенная фронтенд-разработки напоминает поезд, который д...

Добровольная амнезия: манипуляции с гиппокампом для удаления болезненных воспоминаний У каждого человека есть воспоминания, которые он старается забыть. Некоторые из них просто неприятны, вызывающие грусть, стыд, страх, а некоторые могут наносить серьезный ущерб, вызывая у человека самые настоящие психические расстройства (ПТСР, тревожное расстройство и т.д...

[Перевод] Наша проблема c зависимостями На протяжении десятилетий повторное использование ПО чаще обсуждалось, чем реально имело место. Сегодня ситуация обратная: разработчики каждый день повторно используют чужие программы, в виде программных зависимостей, а сама проблема остаётся практически неизученной. Мой со...

[Из песочницы] UICollectionView всему голова: Изменение представления на лету Привет, Хабр! Представляю вашему вниманию перевод статьи "UICollectionView Tutorial: Changing presentation on the fly". В данной статье мы рассмотрим использование различный способов отображение элементов, а также их переиспользование и динамическое изменение. Зде...

[Из песочницы] Учеба в зарубежном вузе от первого лица Доброго времени суток, хабровчане! В данной статье речь пойдёт о различиях организации и методов обучения в высших учебных заведениях Грузии и России, а также о BTU, студентом, которого являюсь я сам. Кроме этого, в конце статьи приведены мои субъективные взгляды по улучш...

[Перевод] Node.js: управление памятью, доступной приложениям, выполняемым в контейнерах При запуске Node.js-приложений в контейнерах Docker традиционные настройки памяти не всегда работают так, как ожидается. Материал, перевод которого мы сегодня публикуем, посвящён поиску ответа на вопрос о том, почему это так. Здесь же будут приведены практические рекомендаци...

[Перевод] 10 шагов к успешному Python-проекту Материал, перевод которого мы сегодня публикуем, посвящён инструментам, которые позволяют оснащать Python-проекты средствами форматирования кода, тестирования, непрерывной интеграции и анализа зависимостей. Это помогает ускорить процесс разработки, способствует повышению кач...

CRM с человеческим лицом «Внедряем CRM? Ну ясно, мы под колпаком, теперь только контроль и отчёты», — примерно так рассуждает большинство сотрудников компаний, услышав о том, что скоро работа переместится в CRM. Считается, что CRM — это программа для руководителя и исключительно его интересов. Это н...

Inno3D представила видеокарту GeForce GTX 1660 Ti Twin X2 Компания Inno3D не осталась в стороне от анонса видеокарт GeForce GTX 1660 Ti и представила собственную версию данного графического ускорителя под названием GeForce GTX 1660 Ti Twin X2. Новинка Inno3D оснащена системой охлаждения с парой вентиляторов, которые обдувают моноли...

[Из песочницы] WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti Уже были описаны некоторые примеры организации корпоративного WiFi. Здесь я распишу как реализовал подобное решение и проблемы с которыми пришлось столкнуться при подключении на разных устройствах. Будем использовать уже имеющейся LDAP с заведенными пользователями, подниме...

[Из песочницы] Правильный редизайн сайта — пошаговый алгоритм, основные вопросы и нюансы Дизайн — работа творческая, поэтому не всегда результат работы можно предугадать и не всегда он может нас устроить. Поэтому главное, составить грамотное и понятное ТЗ. Интернет изменяется буквально каждый день, поэтому всегда необходимо следить за актуальностью и удобством ...

«Эмпирические результаты лишь для публикации, реальные мотивы работ — эстетические». Большое интервью с Майклом Скоттом Майкл Скотт — уже 34 года как профессор Computer Science в Рочестерском университетe, а в родном универститете Wisconsin–Madison был деканом в течение пяти лет. Он занимается исследованиям в области параллельного и распределённого программирования и дизайна языков и обучает...

Как мы пробивали Великий Китайский Фаервол (ч.1) Всем привет! На связи Никита — системный инженер из компании SЕMrush. Сегодня я расскажу вам о том, как перед нами встала задача обеспечить стабильность работы нашего сервиса semrush.com в Китае, и с какими проблемами мы столкнулись в ходе ее выполнения (учитывая местонахожд...

Лицемерие google. PageSpeed Insights Google Page Speed Insights — это сервис от гугла, который позволяет определить производительность сайта и дает рекомендации по его оптимизации. Очень важно понимать, что это всего лишь рекомендации! Некоторые воспринимают эти рекомендации настолько серьезно, что готовы реали...

[Перевод] Создание шаблонов с тегами в Visual Studio для эффективного поиска и группировки пользователей Шаблоны проектов Visual Studio позволяют разработчикам более эффективно создавать несколько схожих проектов, определяя общий набор начальных файлов. Шаблоны проектов могут быть полностью кастомизированы в соответствии с потребностями команды разработчиков или группы и могут ...

Дайджест новостей из мира PostgreSQL. Предновогодний (укороченный) выпуск №13 Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL. В этом предновогоднем выпуске не будем утомлять вас длинным перечнем новостей. С Наступающим Новым Годом! Релизы pgAdmin4 3.6 В этой версии добавлены: из панели Properties можно дропать несколько...

[Перевод] Введение в геномику для программистов Об авторе. Энди Томасон — ведущий программист Genomics PLC. Он с 70-х годов занимается графическими системами, играми и компиляторами; специализация — производительность кода. Гены: краткое введение Геном человека состоит из двух копий примерно по 3 миллиарда пар оснований...

PHP для начинающих. Сессия Всем хорошего дня. Перед вами первая статья из серии PHP для начинающих разработчиков. Это будет необычная серия статей, тут не будет echo "Hello World", тут будет hardcore из жизни PHP программистов с небольшой примесью «домашней работы» для закрепления материала. Начну с...

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

Чем занимается UX-писатель? Осознавая тот факт, что существование такой должности, как UX-писатель, довольно спорно, непонятно, и подходит далеко не любому проекту, я все же решил рискнуть, и предложить сообществу перевод статьи, которая приоткрывает контекст работы UX-писателей. Заранее всем спасибо, ...

Осторожный переезд в Нидерланды с женой и ипотекой. Часть 2: подготовка документов и переезд Итак, за примерно год (май 2017 — февраль 2018) я, программист C++, нашел-таки работу в Европе. Я десятки раз откликался на вакансии в Англии, Ирландии, Швеции, Нидерландах и даже в Португалии. Я раз двадцать беседовал по телефону, скайпу и прочим системам видео связи с рекр...

Знакомство со статическим анализатором PVS-Studio при разработке C++ программ в среде Linux PVS-Studio поддерживает анализ проектов на языках C, C++, C# и Java. Использовать анализатор можно под системами Windows, Linux и macOS. В этой заметке речь пойдет об анализе кода, написанного на C и C++ в среде Linux. Установка Установить PVS-Studio под Linux можно разными...

Революция 2011 года: Objective-C 3.0, ссылки, сборщики мусора Иосифу Виссарионовичу, говорят, термин “гиперссылка” понравился бы. Это спорно, а кроме того, никакого отношения к тому о чем эта статья, не имеет. Речь в ней пойдет о совсем других ссылках. И о других сущностях называемых приведенными словами… В 2011 году на смену системе ...

Наши победили: TopCoder Open 2019 В Хьюстоне 13-16 ноября прошёл финал чемпионата TopCoder Open 2019, и Гена Короткевич (Беларусь) занял первое место сразу в двух соревновательных треках: Algorithm и Marathon. Такое раньше ещё никому не удавалось сделать в один год! Отличное завершение сезона-2019, в котор...

Линтеры в Go. Как их готовить. Денис Исаев Предлагаю ознакомиться с расшифровкой доклада Дениса Исаева "Линтеры в Go. Как их готовить." В go 50+ линтеров: в чем их профит и как эффективно встроить их в процесс разработки? Доклад будет полезен как тем, кто еще не использует линтеры, так и тем, кто уже применяет их: я ...

Коротко о работе с RabbitMQ из Python Так повелось, что в процессе работы в МегаФоне, приходится сталкиваться с однотипными задачами при работе с RabbitMQ. Закономерно возникает вопрос: «Как упростить и автоматизировать выполнение таких задач?» Первое решение, которое приходит в голову, использовать интерфейс ...

[Из песочницы] Современные тренды и рекомендации по аджайлизации крупных финансовых институтов 12-15 Мая 2019 в Дублине состоялся PMI EMEA Congress 2019, который был организован одним из лидеров отрасли в области разработки методологии управления проектами – Project Management Institute (PMI). Конгресс собрал более 700 делегатов из 70 стран и 450 организаций и стал ми...

[Из песочницы] Кросспостинг постов из Instagram в паблик VK на Python Предисловие Решил выйти на новый рынок сбыта, тем более, целевая аудитория моего интернет-магазина, не имеющая аккаунтов в Instagram, давно интересовалась появлением дубликата в VK. Идея хорошая, но постов на странице сотни, соответственно вручную работать ctrl+c ctrl+v не...

[Перевод] Учебный курс по React, часть 6: о некоторых особенностях курса, JSX и JavaScript Сегодня мы публикуем продолжение учебного курса по React. Здесь речь пойдёт о некоторых особенностях курса, касающихся, в частности, стиля кода. Тут же мы подробнее поговорим о взаимоотношениях между JSX и JavaScript. → Часть 1: обзор курса, причины популярности React, Re...

А вы все-все за меня мониторить будете? Ага Обычно Хабр используется как информационное решение — кто-то делится наработанной и структурированной информацией, а кто-то эту информацию впитывает (я хотел написать “потребляет”, но это слово маркетологи уже испоганили). Я же, на правах старожила, и учитывая легкую рассл...

Digital-мероприятия в Москве c 05 по 11 августа Подборка мероприятий на неделю. ok.tech: Data Толк #2 07 августа (среда) Ленинградский пр 39стр79 бесплатно 7 августа в московском офисе Одноклассников состоится ok.tech: Data Толк #2. В этот раз мероприятие будет посвящено образованию в Data Science. Сейчас вокруг работы ...

Компания «А+С Транспроект» поможет Челябинску эффективнее моделировать транспортные потоки Компания «А+С Транспроект» поставила в Управление дорожного хозяйства Администрации города Челябинска программные продукты PTV Visum и PTV Vissim. ПО будет использовано для разработки новых схем организации дорожного движения ...

Разворачиваем Kubernetes на десктопе за несколько минут с MicroK8s Начать работать с Kubernetes не всегда бывает просто. Не у всех есть необходимая для разворачивания полноценного кластера Kubernetes инфраструктура. Для локальной работы Kubernetes предлагет утилиту Minikube. Minikube — достаточно простое и удобное средство, и есть несколько...

Подборка: 5 книг по маркетингу, которые нужно прочитать основателю стартапа Создание и развитие новой компании – всегда непростой процесс. И одна из главных сложностей зачастую заключается в том, что основатель проекта поначалу вынужден погружаться в самые разные области знаний. Он должен улучшать сам продукт или услугу, выстроить процесс продаж, ...

Новый пакет валидаций для React на Mobx @quantumart/mobx-form-validation-kit Добрый день. Сегодня я хочу рассказать о новом пакете для асинхронных валидаций в проектах использующих в своей основе React, Mobx и написанных на Typescript. Современная Frontend разработка предполагает большое количество логики при заполнении страниц с документами, анкет ...

[Перевод] Как соединить GitLab и Pantheon и оптимизировать рабочие процессы Drupal и WordPress Наш гость, создатель инструментов для разработчиков из Pantheon, рассказывает, как автоматизировать деплои WordPress с помощью GitLab CI/CD. В Pantheon я занимаюсь связями с разработчиками, поэтому всегда ищу новые способы помочь разработчикам WordPress и Drupal решать проб...

Google будет сама решать, какой Android-смартфон игровой, а какой — нет Что означает понятие «игровой смартфон»? Ответ знает только Google Несмотря на то что для многих производительность уже перестала быть определяющим фактором при выборе нового смартфона, это не помешало появлению нового класса устройств, получивших название игровых....

Как мы делали нашу маленькую Unity с нуля У нашей компании есть свой игровой движок, который используется для всех разрабатываемых игр. Он предоставляет всю важную базовую функциональность:  рендеринг; работа с SDK; работа с операционной системой; с сетью и ресурсами.  Однако в нем не хватало того, чем так цени...

[Перевод] Руководство по React Native для начинающих Android-разработчиков (с примером приложения) Представляем вам перевод статьи Nikhil Sachdeva, опубликованной на hackernoon.com. Автор делится опытом разработки мобильных приложений с помощью React Native и предлагает создать свое приложение, используя этот фреймворк. Я был Android-разработчиком и довольно длительное...

[Из песочницы] System.Console, Mono и NCurses Всем привет, в своей работе (а ранее и в учебе) я часто использую C# и этот язык стал мне, что называется, привычным. Решив немного потренироваться в программировании, я написал консольный текстовый редактор для Linux. Вкратце опишу полученный опыт. В Mono класс System.C...

Пост-пост, мета-мета. Учимся писать на Хабр — А далеко до релиза? — Да пара вёрсток. Докатился — пишу на Хабр о том, как писать на Хабр. Хотя причины есть — я пять лет занимаюсь этим, перевидал и перепробовал кучу инструментов, так что теперь делюсь с вами самыми лучшим. Я расскажу о том, как прийти от HTML-разметки...

Работа с камерой во Flutter Возможность задействовать камеру существует во многих приложениях, и мы все регулярно пользуемся ею. Во Flutter мы можем реализовать работу с камерой с помощью двух официальных плагинов: camera image-picker Между ними – заметная разница, и использовать их стоит по ситуации...

Как программист в тренажерный зал ходил, и что из этого получилось Мой коллега поделился своей историей, которую я и предлагаю вашему вниманию в качестве лонгрида на уик-энд:) Привет, читатель! Меня зовут Александр Абдуллаев, я тружусь в компании Veeam вот уже 9 лет. Моя карьера в IT за это время сложилась довольно необычно — можно сказа...

[Перевод] LLVM с точки зрения Go Разработка компилятора — очень тяжёлая задача. Но, к счастью, с развитием проектов наподобие LLVM, решение этой задачи значительно упрощается, что позволяет даже программисту-одиночке создать новый язык, близкий по производительности к C. Работа с LLVM осложняется тем, что э...

Холивар. История рунета. Часть 2. Контркультура: пАдонки, марихуана и Кремль Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е В конце 90-х монополия интеллектуалов на рунет была нарушена. В царство завлабов и филологов ворвались два юных хулигана — Константин Рыков по кличке Jason Foris, и Егор Лавров по кличке Skele...

Книга «Kotlin. Программирование для профессионалов» Привет, Хаброжители! Книга Джоша Скина и Дэвида Гринхола основана на популярном курсе Kotlin Essentials от Big Nerd Ranch. Яркие и полезные примеры, четкие объяснения ключевых концепций и основополагающих API не только знакомят с языком Kotlin, но и учат эффективно использо...

Google AdSense упростит работу с экспериментами Google AdSense готовит ряд изменений, которые призваны упростить работу с экспериментами. В скором времени в сервисе появятся новые типы экспериментов и более релевантные показатели, которые позволят пользователям принимать более эффективные решения. Что изменится: Показател...

«Скользкие» места C++17 В последние годы C++ шагает вперед семимильными шагами, и угнаться за всеми тонкостями и хитросплетениями языка бывает весьма и весьма непросто. Уже не за горами новый стандарт, однако внедрение свежих веяний — процесс не самый быстрый и простой, поэтому, пока есть немного...

Нужен готовый джун — научи его сам, или Как мы запускали курс семинаров для студентов Для эйчаров в ИТ не секрет, что если твой город — не миллионник, то найти в нём программиста проблематично, а человека, который владеет нужным стеком технологий и опытом, и того сложнее. В Иркутске айтишный мир тесен. Большинство разработчиков города в курсе существования к...

А как на самом деле? Мифы и заблуждения о программистах Сколько можно приравнивать всех программистов к компьютерщикам (и чудикам) и приписывать им магические свойства, навязанные кинематографом и анекдотами из курилок? Поэтому в день программиста пора внести ясность, как обстоят дела у разработчиков на самом деле. В этом материа...

Пиксельные отступы в текстурной развертке Представляем четвертую статью нашего цикла о работе с 3D-моделями в Unity. Предшествующие статьи: «Особенности работы с Mesh в Unity», «Unity: процедурное редактирование Mesh», «Импорт 3D-моделей в Unity и подводные камни». В предыдущей статье мы упомянули о проверке тексту...

Обзор cPanel — веб-консоли для управления сайтами и хостингом Продолжаем серию постов о панелях управления хостингом и сайтами (веб-консолях), которые RUVDS предлагает своим клиентам. Сегодня мы рассмотрим одну из самых популярных панелей cPanel, лицензию на которую можно получить бесплатно на 2 недели, при покупке виртуального сервера...

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

[Из песочницы] Перевод: Стандарт IEEE 802.15.4z. Что нас ждет в будущем? Привет, Хабр! Представляю вашему вниманию перевод статьи «IEEE P802.15. Wireless Personal Area Networks». Перевод статьи: mentor.ieee.org/802.15/documents?is_dcn=coexistence%20document&is_group=004z Файл: 09-Apr-2019 ET Coexistence Document 15.4z Benjamin A. Rolfe (BCA...

Конкретное и глобальное: программа Mobius 2019 Moscow Что может интересовать мобильного разработчика? Самые разные вопросы: от конкретных технических («как бы ускорить сборку в Xcode») до глобальных карьерных («а не податься ли мне в инди-разработчики с собственным приложением»). А если действительно заняться собственным прило...

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

Исследование Roistat: поисковая реклама — самая эффективная Причём  у 60% рекламодателей Яндекс.Директ показал себя эффективнее Google Ads.

Как подключить скрипт на сторонний сайт Привет Хабр! Это первый пост в нашем блоге. Многие знают нас как чат для сайта, именно с него мы начинали, а сейчас мы занимаем лидирующие позиции в сфере бизнес-мессенджеров. Мы постепенно эволюционировали в комплексное бизнес-решение, которое предоставляет множество возмож...

Взаимодействие R с базами данных на примере Microsoft SQL Server и других СУБД Поскольку львиная доля бизнес информации храниться в базах данных. На каком бы языке программирования вы не писали, вам придётся производить различные действия с ними. В этой статье я расскажу о двух интерфейса для работы с базами данных в R. Большая часть примеров демонстри...

[Из песочницы] Серверный шкаф на 14 патч-панелей или 5 дней проведенных в серверной Укладка кабеля и расключение патч-панелей в серверной В этой статье делюсь своим опытом работы по организации серверной на 14 патч-панелей. Под катом — много фотографий. Читать дальше →

[Из песочницы] Duality — легкий и быстрый движок для игростроя под Windows (Доп.) Приветствую, читатель. В данной публикации речь пойдет о перспективном и достаточно молодом игровом движке, который незаслуженно остался в тени таких гигантов, как Unity или Unreal Engine. Разработчиками является объединение энтузиастов под руководством Adam's Lair. Как...

Nintendo Switch скоро могут превратить в планшет на Android Nintendo Switch довольно стремительно ворвалась на рынок, доказав всему миру, что нестандартные решения вполне могут приносить прибыль, став одной из самых быстропродаваемых консолей от японской компании. «Сердцем» игровой системы является чип Nvidia Tegra, а это ...

Перенос сайта на статику: мотивация, стоимость, работа Недавно мы сделали то, о чём грезят все программисты и дизайнеры — переписали всё с нуля: полный редизайн нашего сайта и написание «движка» с чистого листа. Ниже поведаем о мотивации и процессе миграции с онлайн-CMS на статику. Читать дальше →

Как AWS «варит» свои эластичные сервисы. Масштабирование серверов и базы данных Облака подобны магической шкатулке — задаешь, что тебе нужно, и ресурсы просто появляются из ниоткуда. Виртуальные машины, базы данных, сеть — все это принадлежит только тебе. Существуют и другие тенанты облака, но в своей Вселенной ты единоличный правитель. Ты уверен, что в...

Chrome расширения для веб-разработки и работы с GitHub Привет всем. Хочу поделиться с вами некоторыми из расширений для Хрома, которые я использую при разработке, анализе сайтов, в работе с GitHub и просто в повседневной жизни. Уверен, что для большинства читателей, список этих расширений не будет открытием, но те, кто узнает ...

Детали перехода от парных (относительных) валютных курсов к абсолютным. Работа над ошибками Введение Настоящая статья описывает результаты эксперимента проведенного в рамках проекта “Абсолютный курс валют”. Протокол эксперимента можно увидеть перейдя по ссылке. Проект “Абсолютный курс валют” занимается анализом парных валютных курсов, выделением из них абсолютных ...

Лицензионные соглашения у вредоносных программ Любое программное обеспечение — это объект интеллектуальной собственности. По сложившейся на рынке практике многие производители ПО оставляют за собой исключительные права на владение продуктом и лишь предоставляют клиентам возможность использовать одну или несколько его коп...

Как иридий и свет помогут победить рак Новая методика лечения рака может спасти не одну сотню жизней Ученые из Уорикского Университета (Великобритания) в сотрудничестве с коллегами из Китая, Франции и Швейцарии разработали уникальную методику терапии онкологических заболеваний. Причем речь идет не о новом эффекти...

Seagate Game Drive для вашей PS4 Официально представлен новый накопитель Seagate Game Drive, который сертифицирован для приставки PlayStation 4. Данный накопитель вмещает в себе 2 терабайта памяти, что примерно равно 50 играм ААА-класса. Стоит понимать, что на самом деле в этом нет никакого смысла — у консо...

США хотят позволить суперкомпьютеру управлять ядерным потенциалом страны На сегодняшний день суперкомпьютеры уже довольно часто используются для самых разных задач. Вычислительные мощности современных суперкомпьютеров позволяют проводить сложнейшие математические расчеты, помогать в создании новых эффективных лекарств и даже в поиске внеземной ж...

Тайваньские ученые кардинально улучшили память MRAM Магниторезистивная память с произвольным доступом (MRAM) считается наиболее подходящим кандидатом на роль универсальной памяти следующего поколения. Однако до недавнего времени эффективное управление MRAM было сложной задачей. Если верить сообщению тайваньского национал...

WAL в PostgreSQL: 1. Буферный кеш Предыдущий цикл был посвящен изоляции и многоверсионности PostgreSQL, а сегодня мы начинаем новый — о механизме журналирования (write-ahead logging). Напомню, что материал основан на учебных курсах по администрированию, которые делаем мы с Павлом pluzanov, но не повторяет их...

[Перевод] Типизируйте уже наконец свой код Привет хабр! На днях мне в очередной раз на глаза попал код вида if(someParameter.Volatilities.IsEmpty()) { // We have to report about the broken channels, however we could not differ it from just not started cold system. // Therefore write this case into the logs a...

СЭД прирастает искусственным интеллектом Главные новации в области систем документооборота — использование средств искусственного интеллекта, программных роботов и кросс-платформенность. Системы документооборота долгое время были, возможно, самым консервативным элементом ИТ-систем предприятия. Однако, как показа...

[Из песочницы] Программ для изучения английского очень много, но стоит ли какой-нибудь из них пользоваться если ты программист? Всем привет, меня зовут Алексей. Я давно увлекаюсь программированием, хоть это и не является моей основной профессией. А ещё где-то год назад я увлёкся изучением английского языка. Много статей написано о том, как учить английский язык. Но если ты владеешь навыками програм...

12 декабря в Минске пройдет Affiliate Marketing Conference Belarus 12 декабря в Минске впервые состоится Affiliate Marketing Conference Belarus. Ивент посвящен практическому применению аффилиативного маркетинга, а также арбитража трафика в «белых» и «серых» нишах. Спикеры рассмотрят эффективные методики работы в странах СНГ и на бурже....

Как ЛАНИТ привез в Google котика и узнал о работе со стартапами Встреча двух друзей, живущих в разных городах, всегда приносит много эмоций и заряжает позитивом. Как раз за вдохновением команда топ-менеджеров группы ЛАНИТ и отправилась этой весной в Дублин – в штаб-квартиру Google. Делимся с вами фотографиями и рассказываем о том, что за...

Как организовать работу над библиотекой общих компонентов Если ваша компания делает несколько продуктов в едином стиле, однажды вам в голову придет идея сделать библиотеку с общим кодом. Например, с UI-компонентами, сервисом авторизации или для работы со сторонними API. Возможно, вы зададитесь вопросами: кто должен поддерживать это...

Обучающие настольные игры для программистов На рынке труда в Java-разработке наблюдается интересная ситуация. Активных резюме разработчиков больше 100 000 и на одно резюме приходится одна вакансия. В то же время работодатели и кадровые агентства жалуются на недостаток кадров, и, несмотря на тысячи резюме, найти хороше...

[Перевод] Извлечение данных при машинном обучении Хотите узнать о трех методах получения данных для своего следующего проекта по ML? Тогда читайте перевод статьи Rebecca Vickery, опубликованной в блоге Towards Data Science на сайте Medium! Она будет интересна начинающим специалистам. Получение качественных данных — это пе...

Подборка книг о том, как учиться, мыслить и принимать эффективные решения В нашем блоге на Хабре мы публикуем не только рассказы о разработках сообщества Университета ИТМО, но и фотоэксурсии — например, по нашей лаборатории робототехники, лаборатории киберфизических систем и DIY-коворкингу Фаблаб. Сегодня мы собрали подборку книг, которые рассмат...

Split View, или как разделить экран Mac для работы с двумя приложениями одновременно Режим Split View позволяет разделить экран вашего Mac на две половинки в разных пропорциях для работы с двумя приложениями одновременно. Это позволяет максимально эффективно использовать рабочее пространство и выполнять несколько дел одновременно. В этом материале мы расскаж...

[Перевод] Грамматика английского. Who vs. Whom – как понять, какое слово использовать Разобраться в хитростях английской грамматики может быть довольно непросто. Классический пример здесь – выбор между who и whom. Даже носители языка не всегда корректно используют нужное слово, что уж говорить о тех, кто только изучает английского. В блоге одного из сервис...

[Из песочницы] Дружим часы реального времени PCF8563 с Arduino по I2C Привет, Хабр. Довелось мне использовать RTC на микросхеме PCF 8563 по I2C.Так как нормальных функции для более удобной работы с Arduino я не нашел, пришлось работать напрямую через I2C. В Англоязычном интернете нашел толковый туториал с подробным описанием процесса. Данная с...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 26. DNS и DHCP Система распределения доменных имен DNS и протокол динамической настройки узла DHCP являются очень важными для сетей, особенно для сети Интернет, так как позволяют настроить доступ к интернету, сконфигурировать браузер и т.д. На предыдущих уроках мы уже рассматривали настрой...

Operating Systems: Three Easy Pieces. Part 1: Intro (перевод) Введение в операционные системы Привет, Хабр! Хочу представить вашему вниманию серию статей-переводов одной интересный на мой взгляд литературы — OSTEP. В этом материале рассматривается достаточно глубоко работа unix-подобных операционных систем, а именно — работа с процесс...

[Перевод] Как сделать контейнеры еще более изолированными: обзор контейнерных sandbox-технологий Несмотря на то, что большая часть ИТ-индустрии внедряет инфраструктурные решения на базе контейнеров и облачных решений, необходимо понимать и ограничения этих технологий. Традиционно Docker, Linux Containers (LXC) и Rocket (rkt) не являются по-настоящему изолированными, пос...

Абстрактный постер сделал человека невидимым для машинного зрения Распознавание образов в реальном времени — перспективная технология, которая уже находит применение в охранных комплексах и системах поиска конкретных людей в толпе. Для выполнения этой задачи используются сверточные нейронные сети, которые способны с высокой скоростью ...

Бесплатный meetup eLama & Google в Екатеринбурге 28 ноября в Екатеринбурге в отеле Novotel пройдет бесплатное мероприятие для рекламных агентств и фрилансеров, на котором можно узнать, как использовать возможности Google Рекламы, чтобы и бизнес и клиент получали выгоду. Специалисты из...

.NET: Инструменты для работы с многопоточностью и асинхронностью. Часть 1 Публикую на Хабр оригинал статьи, перевод которой размещен в корпоративном блоге. Необходимость делать что-то асинхронно, не дожидаясь результат здесь и сейчас, или разделять большую работу между несколькими выполняющими ее единицами была и до появления компьютеров. С их по...

[Перевод] Фильму «Офисное пространство» 20 лет: как он изменил наши рабочие места В 1999 году фильм мастерски спародировал одновременно рутинную и нелепую офисную жизнь. Что с тех пор поменялось? "Офисное пространство" стал характерным фильмом, высмеивающим корпоративную банальность. В феврале ему исполнилось 20 лет, и если пересмотреть его сегодня, ста...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 38. Протокол EtherChannel для 2 уровня OSI Сегодня мы рассмотрим работу протокола агрегирования каналов Layer 2 EtherChannel для 2 уровня модели OSI. Этот протокол не слишком отличается от протокола 3-го уровня, однако прежде чем начать изучение Layer 3 EtherChannel, я должен ознакомить вас с несколькими концепциями,...

Паровые турбины: как горячий пар превращается в электричество Учёные до сих пор бьются над поиском самых эффективных способов по выработке тока — прогресс устремился от гальванических элементов к первым динамо-машинам, паровым, атомным, а теперь солнечным, ветряным и водородным электростанциям. В наше время самым массовым и удобным с...

Разработка и обновление сайтов под ключ В современном мире любой, хоть коммерческий, хоть некоммерческий проект, какой-либо продукт, услуга или организация требуют грамотного внедрения в виртуальное пространство. В век цифровых технологий и Интернета, без онлайн-доступа к информации про всё вышеперечисленное, успе...

Учимся писать Waves смарт-контракты на RIDE и RIDE4DAPPS. Часть 1 (Многопользовательский кошелек) Всем привет! Совсем недавно Waves Labs анонсировал конкурс для разработчиков приуроченный к релизу в тестовую сеть расширения языка смарт-контрактов RIDE для децентрализованных приложений Ride4Dapps! Мы выбрали кейс DAO, так как Ventuary планирует заниматься разработкой dAp...

До 8 ядер и частота до 5,0 ГГц. Представлены бюджетные серверные процессоры Intel Xeon E-2200 Компания Intel сегодня представила линейку бюджетных серверных процессоров Xeon E-2200 – они пришли на смену моделям серии Xeon E-2100. Новинки – и тут никаких сюрпризов – базируются на микроархитектуре Coffee Lake Refresh и выполнены по нормам техпроц...

Fluid Framework изменит традиционный документ Office Прощайте, Word, Excel и прочие, добро пожаловать, совместную работу с документами в Интернете. Microsoft Fluid Framework может стать будущим Office – будущим, в котором границы между приложениями рухнут, а совместная работа превратится в рутинную процедуру. Звуч...

[Перевод] Руководство по разработке, основанной на компонентах Модульность является одним из ключевых принципов разработки программного обеспечения с 1960-х годов. Применение этого принципа приносит в программирование много полезного. Модульность способствует эффективному использованию принципа разделения ответственностей, что ведёт к у...

[Перевод] Учебный курс по React, часть 12: практикум, третий этап работы над TODO-приложением В сегодняшней части перевода курса по React мы предлагаем вам выполнить практическое задание по формированию наборов компонентов средствами JavaScript и продолжить работу над TODO-приложением. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: ф...

[Перевод] Как сделать презентацию продукта, которая будет вовлекать клиента? Сегодня делимся с вами рекомендациями Люка Геттинга (Luke Goetting) — признанного эксперта по созданию бизнес-презентаций, директора агентства Puffingston Presentations. Но начнем мы со слов Джил Конрат (Jill Konrath), эксперта по комплексным стратегиям продаж. Она описывае...

Сессия по решению проблем Способ, который позволяет устранить проблему за 6 шагов С 2013 года мы используем в своей работе концепцию бережливого производства (lean). С ее помощью повышаем качество сервиса, устраняем потери и стараемся предвосхитить ожидания наших клиентов. В арсенале у нас порядка ...

13 правил эффективного общения в групповых чатах Групповые чаты — модный и эффективный инструмент для организации мероприятий, тематических обсуждений. Многие предпочитают чаты традиционным группам, так как часто ответ может прийти моментально, а о каждом новом сообщении возможно получать уведомление. Будучи админом и уча...

[Перевод] Создаем на C++ выразительные умные указатели для удаленной памяти Привет, Хабр! Сегодня мы публикуем перевод интересного исследования о работе с памятью и указателями в C++. Материал немного академический, но явно будет небезынтересен читателям книг Галовица и Уильямса. Следите за рекламой! Читать дальше →

Банк JPMorgan Chase использует видеоигры для подбора персонала Стажеры, которые хотят получить работу в банке JPMorgan, должны играть в видеоигры. Такая пилотная программа была разработана стартапом Pymetrics — она использует искусственный интеллект для оценки кандидатов по различным показателям, включая внимание, память и склонно...

[Перевод] 12 английских слов, которые часто пишут и произносят неправильно В английском языке полно довольно непростых слов, которые не так-то легко правильно произнести и написать. Мне на глаза попался пост, в котором собраны 12 таких слов, в которых многие делают ошибки, и даны рекомендации о том, как их избежать. Я подготовила перевод этого ма...

Подборка рабочих примеров обработки данных Привет, читатель. По стопам моего первого поста подборки датасетов для машинного обучения — сделаю подборку относительно свежих датасетов с рабочими примерами по обработке данных. Ведь ни для кого не секрет, что обучение на хороших примерах проходит эффективнее и быстрее. П...

Apple полностью переработает 4 приложения под macOS к релизу Catalina Проект Catalyst, предполагающий унификацию приложений для Mac и iPad, должен существенно облегчить жизнь как разработчикам, так и рядовым пользователям. Однако, прежде чем это станет реальностью, Apple предстояло проделать большую работу по созданию специального инструмента...

[Перевод] Топ-17 плагинов для Android Studio Существуют сотни плагинов для Android Studio, и их число растёт с каждым днём. Это в основном происходит по двум причинам. Во-первых, Android Studio — это официальная интегрированная среда разработки для создания Android-приложений. Во-вторых — Intellij IDEA, платформа, на ...

Совет для роботов №42: улыбайся и люди к тебе потянутся Мир вокруг нас постоянно и непрерывно меняется, хотим мы того или нет. И большую роль в этом играют технологии, развитие и распространение которых с каждым годом становится все активнее и активнее. Мы уже не считаем автомобиль редкостью, а мобильную связь магией. Технологии...

Найдено неожиданное средство от алкоголизма Учёные обнаружили, что экстази, — наркотик, запрещённый в России, — эффективен в борьбе с алкогольной зависимостью. Более того, он эффективнее других современных средств.

[Из песочницы] Как взломать завод: системы радиоуправления как слабое звено современного производства Компания Trend Micro выпустила исследование, в котором рассмотрела уязвимости системы дистанционного радиоуправления промышленного оборудования и то, насколько просто злоумышленники могут их использовать для атак на промышленные объекты Недавно мы (специалисты Trend Micro...

Принципы работы протокола BGP Сегодня мы рассмотрим протокол BGP. Не будем долго говорить зачем он и почему он используется как единственный протокол. Довольно много информации есть на этот счет, например тут. Итак, что такое BGP? BGP — это протокол динамической маршрутизации, являющийся единственным EG...

Эффективное управление подключениями SignalR Здравствуй, Хабрахабр. В настоящий момент я работаю над созданием движка чата в основе которого лежит библиотека SignalR. Помимо увлекательного процесса погружения в мир real-time приложений пришлось столкнуться и с рядом вызовов технического характера. Об одном из них я и х...

DSC и напильник: часть 1. Настройка DSC Pull Server для работы с базой данных SQL PowerShell Desired State Configuration (DSC) сильно упрощает работу по развертыванию и конфигурированию операционной системы, ролей сервера и приложений, когда у вас сотни серверов. Но при использовании DSC on-premises, т.е. не в MS Azure, возникает пара нюансов. Они осо...

Выявлен самый эффективный продукт для поддержки иммунитета По словам диетологов, именно квашеная капуста признана самым эффективным продуктом для поддержки иммунной системы с осени на зиму.

[Перевод] Веб-компоненты: 9 проектов, о которых стоит знать в 2019 году Автор материала, перевод которого мы сегодня публикуем, полагает, что если вы собираетесь использовать при проектировании интерфейсов своих приложений веб-компоненты и подыскиваете подходящую библиотеку, независимую от UI-фреймворков, вам стоит взглянуть на те проекты, о кот...

Искусственный интеллект обыграл человека в покер, что дальше? Искусственный интеллект вновь победил человека. В этот раз ИИ одержал верх в покер. И в этом, кажется, нет ничего удивительного, ведь в этой игре искусственный разум оказывался первым и раньше. Однако сейчас все иначе: машина победила сразу пятерых игроков в «Техасский...

«Слушай с пользой!»: инструменты и рекомендации по сбору обратной связи для НКО Как НКО понять, что ее программы действительно помогают людям? Один из самых надежных способов – спросить у них самих. Найти подходящие для этого инструменты и узнать рекомендации по сбору обратной связи от благополучателей можно на портале «Слушай с пользой!». Как НКО испо...

[Из песочницы] Liqubase и Maven Введение Liquibase представляет из себя систему управления версиями базы данных, в основном это касается структуры и в меньшей степени содержимого базы. При этом описание базы с одной стороны достаточно абстрактно и позволяет использовать на нижнем уровне различные СУБД, и с...

[Перевод] Учебный курс по React, часть 19: методы жизненного цикла компонентов В сегодняшней части перевода учебного курса по React вашему вниманию будет представлен обзор методов жизненного цикла компонентов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структу...

Как мы закрываем уязвимости в ОС Astra Linux Special Edition Операционных систем без уязвимостей не бывает — вопрос лишь в том, как эффективно разработчики их выявляют и закрывают. Наша ОС Astra Linux Special Edition здесь не исключение: мы постоянно проверяем и тестируем код на ошибки, нарушения логики, прочие баги и оперативно их ус...

Эволюция кластерного взаимодействия. Как мы внедряли ActiveMQ и Hazelcast В течение последних 7 лет я вместе с командой занимаюсь поддержкой и развитием ядра продукта RealtimeBoard: клиент-серверным и кластерным взаимодействием, работой с базой данных. У нас Java с разными библиотеками на борту. Запускается всё вне контейнера, через Maven-плагин....

Nasa анонсирует новый проект по поиску инопланетной жизни Специалисты NASA смогли придумать новый проект по поиску инопланетной жизни, объединив технологии телескопа TESS и Breakthrough Listen Согласно сообщению livescience.com, астрономы, занимающиеся программой Transiting Exoplanet Survey Satellite (TESS), уже в ближайшее время с...

Время высокой точности: как работать с долями секунды в MySQL и PHP Однажды я поймал себя на мысли, что при работе со временем в базах данных почти всегда использую время с точностью до секунды просто потому, что я к этому привык и что именно такой вариант описан в документации и огромном количестве примеров. Однако сейчас такой точности до...

Корпорация Hitachi объявила о слиянии компаний Hitachi Vantara Corporation и Hitachi Consulting Corporation Цель интеграции – стимулировать глобальное распространение решений Hitachi на базе платформы Lumada и расширить возможности цифровых технологий для партнеров и заказчиков. С января 2020 года эти организации будут работать под брендом Hitachi Vantara. Благодаря слиянию двух к...

[Из песочницы] Функциональные компоненты с React Hooks. Чем они лучше? Относительно недавно вышла версия React.js 16.8, с которой нам стали доступны хуки. Концепция хуков позволяет писать полноценные функциональные компоненты, используя все возможности React, и позволяет делать это во многом более удобно, чем мы это делали с помощью классов. М...

[Перевод] Postgres в ретроспективе Предлагаем вашему вниманию перевод статьи Джозефа Хеллерштейна «Looking Back at Postgres», опубликованной в соответствии с международной лицензией Creative Commons «С указанием авторства» версии 4.0 (CC-BY 4.0). Авторы оставляют за собой право распространять эту работу на ли...

Как недорого и эффективно подготовить свой автомобиль к весне объяснил эксперт По словам специалиста, есть несколько рекомендаций, следуя которым подготовка будет правильной и, что немаловажно, экономной. Очевидным советом эксперт считает рекомендацию по возможности отказаться от посещения СТО именно весной, поскольку по окончании зимы спектр необходи...

Новая операционная система HarmonyOS Компания HUAWEI представила первую мобильную OC с распределенной архитектурой –HarmonyOS.  Применение распределённой архитектуры позволяет HarmonyOS обеспечивать общую коммуникационную платформу, управлениераспределёнными данными, распределенное планирование зад...

Build 2019: Microsoft представила платформу Fluid Framework В рамках конференции Build 2019 Microsoft представила новую платформу Fluid Framework, которая позволит разработчикам создавать быстрые и гибкие распределённые веб-приложения. Компания намерена сломать барьеры традиционных документов, создав идеальную среды для совместной р...

Быстрый способ добавить уведомления в Android-приложение Перевели для вас статью Брендона Вивера о работе с уведомлениями в Android OS. Программист объясняет, как быстро добавить этот функционал в свое приложение. Статья, в первую очередь, будет полезна начинающим Android-разработчикам. Уведомления — один из самых легких и бы...

[Перевод] Big O Примечание. Сокращенный перевод, скорее пересказ своими словами. UPD: как отметили в комментариях, примеры не идеальны. Автор не ищет лучшее решение задачи, его цель объяснить сложность алгоритмов «на пальцах». Big O нотация нужна для описания сложности алгоритмов. Для этог...

[Перевод] Нейронаука: когда лучше всего работает наш мозг и как технологии могут ему помочь Вы полностью сосредоточены. Вы потеряли счет времени. Ничего другого в мире не существует. Вы живете в данный момент. Хотя это похоже на описание медитации, точно так же можно определить состояние потока — ощущение того, что вы настолько сильно вовлечены в работу, что пол...

Виртуальный Рабочий стол Windows теперь в открытом доступе На конференции Ignite 2018 в прошлом году Microsoft анонсировала Windows Virtual Desktop. Он был доступен в ограниченном частном предварительном доступе, и сегодня компания объявила публичный предварительный доступ. Сервис предлагает многопользовательский интерфейс, оптимизи...

Как отключить Т9 на Android Функция исправления ошибок в текстовых сообщениях на современных смартфонах (автокоррекция или, как ее называют в народе, Т9) весьма странная вещь. Призванная упростить жизнь, эта опция порой лезет туда, куда не просят, исправляя то, что не требуется и оставляя настоящие ош...

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

Chaos Constructions 2019 is Coming… Chaos Constructions 2019 24-25 августа, традиционно в последние выходные лета, в Санкт-Петербурге пройдет компьютерный фестиваль Chaos Constructions 2019. На конференции в рамках фестиваля вашему вниманию будут представлены более 60 докладов на разные тематики. Безопасно...

Движок отчетов в Satellite 6.5: Что это и зачем Red Hat Satellite – это решение для управления системой, упрощающее развертывание, масштабирование и управление инфраструктурой Red Hat в физических, виртуальных и облачных средах. Satellite позволяет пользователям настраивать и обновлять системы для обеспечения их эффективн...

Тяжёлое бремя времени. Доклад Яндекса о типичных ошибках в работе со временем В коде самых разных проектов нередко приходится оперировать временем — например, чтобы завязать логику работы приложения на текущее время у пользователя. Старший разработчик интерфейсов Виктор Хомяков описал типичные ошибки, которые встречались ему в проектах на языках Java,...

Продвижение от IPM Group- гарантированный вывод в Топ и не только Когда человек заказывает продвижение сайта, он надеется оперативно попасть в ТОП выдачи поисковых систем. Как правило, это получается только в том случае если за работу взялась опытная компания специалистов. Одной из таких можно назвать ipm-group.org и здесь раскрутка сайта ...

[Перевод] HTTP-заголовки для ответственного разработчика Сегодня быть онлайн — это привычное состояние для многих людей. Все мы покупаем, общаемся, читаем статьи, ищем информацию на разные темы. Сеть соединяет нас со всем миром, но прежде всего, она соединяет людей. Я сам пользуюсь интернетом уже 20 лет, и мои отношения с ним изм...

Функциональный Swift — это просто В статьях о функциональном программировании много пишут о том, как ФП подход улучшает разработку: код становится легко писать, читать, разбивать на потоки и тестировать, построить плохую архитектуру невозможно, а волосы становятся мягкими и шелковистыми. Недостаток один — в...

[Из песочницы] Структуры данных в Java. Полезные методы вспомогательных классов Привет, habr! Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с ...

Пример фейковой флешки на 32 GB Сегодня поступила в работу довольно любопытная флеш-карта – USB PEN-drive ADATA 32 GB. Устройство примечательно тем, что является практически новым, куплено буквально несколько дней назад, и после записи на него данных перестало работать. В системе флешка определяется как Ge...

[Перевод] Заложники COBOL и математика. Часть 1 Посмотрим правде в глаза: никто не любит дробные числа — даже компьютеры. Когда речь заходит о языке программирования COBOL — первый вопрос, который всплывает у всех в голове, всегда выглядит так: «Почему человечество всё ещё использует этот язык во множестве жизненно важны...

Как сэкономить на психотерапевте используя test-driven development У вас когда-нибудь было такое состояние? Хочу показать вам, как TDD может улучшить качество кода на конкретном примере. Потому что всё то, что я встречал при изучении вопроса, было довольно-таки теоретическим. Так получилось, что мне довелось написать два практически иден...

Цифровая лирика: мегаподборка песен и клипов о программировании и программистах Широко распространено мнение, что музыкальные способности и талант к программированию взаимосвязаны. Многие профессиональные музыканты питают склонность к точным наукам. Например, Борис Гребенщиков окончил факультет прикладной математики СПбГУ, а гитарист Radiohead Джонни Гр...

[Из песочницы] Три неочевидных примера использования шаблонизаторов в backend-е С одной стороны, предмет действительно был квадратным. C другой стороны он был круглым. Но с третьей стороны, с которой должен быть треугольник, предмет вышел кривой и косой. — Алешенька идет на совещанку? — в дверь просунулась Леночкина заинтересованная физиономия. — Алеш...

Telegram как корпоративный стандарт Эффективная коммуникация в команде — как хорошие дороги в стране: без них только на трехколесных телегах за три месяца из Москвы в Питер, а не сильную экономику строить. И, если в команде нет удобных коммуникационных инструментов, работать такая команда будет трудно и неэффе...

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

[recovery mode] Расширения Google Chrome для программиста Работа программиста настолько сложна и разнообразна, что в ней просто не обойтись без помощи различных инструментов. Подготовил для вас список полезных расширений для Google Chrome, которые облегчат вашу жизнь и сэкономят время. 1. Code Cola Плагин, который предлагает ши...

Готов ли Китай к строительству базы на Луне? Мир по-прежнему отмечает историческую высадку китайского космического аппарата «Чанъэ-4» на обратной стороне Луны, случившуюся 3 января. В прошлом месяце Поднебесная также объявила о своих дальнейших планах по освоению спутника Земли. В их рамках ожидается отправка трех мис...

Поймай меня, если сможешь Ты – эффективный менеджер. Я – программист. Ты умудрился стать моим начальником. Я занимаюсь автоматизацией нашего сраного завода. Ты делаешь вид, что руководишь этим процессом. Я был на твоем собеседовании. Не на основном, а на кроссе. Я слышал, как ты рассказывал, что сам...

Может ли мозг решать задачи во время сна? Человечески мозг перерабатывает информацию даже во время сна Наверняка каждый человек хотя бы раз в жизни слышал о том, что прослушивая во сне аудиокнигу, можно запомнить содержащуюся в ней информацию. Особенно идея «обучения во сне» нравится школьникам, которые надеются выу...

Дайджест управления продуктом за октябрь Привет, Хабр! Я экспериментирую с форматом, поэтому решил написать этот дайджест. Не так важно кто ты, самое важное — твой интерес к digital и желание узнать чуть больше про управление продуктом. Буду писать много про это, но не только. Основные новости будут из разных про...

Полный привод в матрицах 4×4 Само умножение нехитрое, элементы строк умножаются на столбцы поэлементно и складываются. Как корректно умножать можно посмотреть здесь Языковая часть написана на Delphi, а для оптимизации код выполнен с применением встроенного 64-х битного ассемблера. Рассматриваются 4 прак...

[Перевод] Учебный курс по React, часть 24: второе занятие по работе с формами Сегодня мы продолжим разговор об использовании форм в React. В прошлый раз мы рассматривали особенности взаимодействия компонентов и текстовых полей. Здесь же мы обсудим работу с другими элементами форм. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX →...

IPMI ― обзор технологии Чтобы удаленно управлять состоянием серверной платформы, системные администраторы и инженеры пользуются технологией IPMI, которая значительно упрощает им жизнь. Теперь не надо каждый раз бежать к серверу, чтобы нажать на кнопку перезагрузки ― своевременно реагировать на кри...

Google научила браузер Chrome не «жрать» память так интенсивно Компания Google разрабатывает новую функцию блокировки рекламы для фирменного браузера Chrome. Она нацелена на особо «тяжёлую» рекламу, которая задействует слишком много системных ресурсов.  Браузер Chrome хорошо известен как тот ещё «пожиратель&...

Профессиональная фото- и видеосъемка Популярность фото- и видеосъемки постоянно растет, появляются новые тренды, а мастерски созданные видеоролики, нравятся миллионам зрителей и позволяют создавать эффективные видео компании, которые впоследствии конвертируют клиентов. Кроме того, профессиональная видеосъемка и...

[Перевод] Простые и длинные задачи лучше отсеивают кандидатов, чем короткие и сложные tl;dr: Вопросы и задачи на собеседованиях по программированию кажутся излишне сложными. Иногда так и есть, что добавляет стресса. Это не единственный довод против них. Наши данные показывают, что более сложные задачи на самом деле хуже предсказывают конечный результат, чем б...

Как мы мониторили Black Hat Europe 2018 Полгода назад я уже писал на Хабре заметку, где делился нашим опытом мониторинга различных конференций по ИТ и ИБ, в которых Cisco приглашают для обеспечения работы SOC и NOC (Black Hat, Mobile World Congress, RSAC и т.п.). Сегодня я бы хотел поделиться опытом участия в рабо...

Какие смартфоны агрессивнее других убивают фоновые приложения. И как с этим бороться У производителей не такой большой выбор эффективных способов продления времени автономной работы устройств, а самый сомнительный из них — убийство приложений, работающих в фоновом режиме.

[Перевод] Проект «Прометей»: поиск пожаров с помощью ИИ Перевод Project Prometheus — An AI-powered fire finding solution Мы с коллегами работаем в проекте Prometheus («Прометей») — это решение для раннего обнаружения пожаров, в котором объединены ИИ, компьютерное зрение, автоматические дроны и сервисы прогноза погоды. Этот ком...

5 признаков того, что вам пора обновить Android Сложно спорить с тем, что обновлять ПО своего смартфона нужно регулярно. Какой бы замечательной не была операционная система, нечистые на руку пользователи будут находить в ней различные «дыры» и уязвимости, а новые функции значительно упростят вашу жизнь. Более т...

Уровни изолированности транзакций для самых маленьких Сегодня хотел бы довести крайне интересный, но часто покрытый тайнами для обычных смертных программистов раздел базы данных (БД) — уровни изолированности транзакций. Как показывает практика, многие люди, связанные с IT, в частности с работой с БД, слабо понимают зачем нужн...

WavesKit — PHP фреймворк для работы с блокчейном Waves Мне нравится PHP за скорость разработки и отличную переносимость. Это очень хорошо, когда в кармане всегда имеется готовый к решению задач инструмент. Было довольно обидно, когда при знакомстве с отечественным блокчейном Waves Platform в его арсенале не оказалось готового SD...

Оценивание пространственной ориентации, или Как не бояться фильтров Махони и Маджвика О чём речь Появление на Хабре поста о фильтре Маджвика было по-своему символическим событием. Видимо, всеобщее увлечение дронами возродило интерес к задаче оценивания ориентации тела по инерциальным измерениям. При этом традиционные методы, основанные на фильтре Калмана, пер...

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

Общие принципы работы QEMU-KVM Мое текущее понимание: 1) KVM KVM (Kernel-based Virtual Machine) – гипервизор (VMM – Virtual Machine Manager), работающий в виде модуля на ОС Linux. Гипервизор нужен для того, чтобы запускать некий софт в несуществующей (виртуальной) среде и при этом, скрывать от этого с...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)