Социальные сети Рунета
Пятница, 19 апреля 2024

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

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

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

[Перевод] Пишем API для React компонентов, часть 6: создаем связь между компонентами Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

Удалённое управление эмулятором Fceux с помощью Python В статье я опишу, как сделать эмулятор NES управляемым удалённо, и сервер для удалённой отправки команд на него. Зачем это нужно? Некоторые эмуляторы различных игровых консолей, в том числе и Fceux, позволяют писать и запускать пользовательские скрипты на Lua. Но Lua – пл...

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

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

Что такое музыкальное программирование — кто и почему им занимается, устраивая настоящие live-сессии Ранее мы говорили об инструменте OpenMusic. Он позволяет писать музыку, используя объектно-ориентированный подход. Сегодня речь пойдет о людях, которые создают композиции с помощью специализированных языков программирования. И зачастую делают это «в прямом эфире». Читать д...

О новых стандартах C++ Сегодня у меня довольно короткий пост. Я бы его и не писал, наверное, но на Хабре в комментах довольно часто можно встретить мнение, что плюсы становятся хуже, комитет делает непонятно что непонятно зачем, и вообще верните мне мой 2007-й. А тут такой наглядный пример вдруг п...

Москва, 18 апреля — QIWI SERVER PARTY 4.0 18 апреля, в четверг, мы снова собираем митап QIWI SERVER PARTY. На митапе подробно обсудим не только технические вопросы, но и поговорим о том, нужны ли хорошим программистам soft skills, на каких ошибках мы научились, обучая стажеров, и нужен ли сотруднику ментор, или дос...

Зачем вам учить Go Источник картинки Go — относительно молодой, но популярный язык программирования. По данным опроса Stack Overflow, именно Golang получил третье место в рейтинге языков программирования, которые хотели бы освоить разработчики. В этой статье мы попробуем разобраться в причина...

[recovery mode] Data as a Service: что это такое, технические сложности и как их обойти с помощью резидентных прокси Data as a Service (DaaS) – относительно новая модель дистрибуции данных, которая подразумевает, что информация сбором, управлением и хранением нужной информации компании и пользователи занимаются не самостоятельно, а делегируют эту задачу специализированным провайдерам. ...

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

[Из песочницы] Изучая go: пишем p2p мессенджер со сквозным шифрованием Yet another P2P Messenger Читать отзывы и документацию о языке не достаточно, чтобы научиться на нем писать более менее полезные приложения. Обязательно для закрепления нужно создать что-то интересное, чтобы наработки можно было бы использовать в других своих задачах. Стать...

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

[Перевод] Трагедия Common Lisp: почему популярные языки раздуваются в сложности Адаптировано из обсуждения 2015 года. Здесь Common Lisp служит лишь одним из многих наглядных примеров Будущее JavaScript? Я с 2007 года работаю в комитете по стандартам JavaScript (TC39). Мы ценим простоту языка, но со временем утратили бдительность. Сложность стала не...

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

[Из песочницы] Как использовать группы в Facebook для продвижения: создаем паутину Facebook меняет ленту. На официальной конференции F8 30 апреля и 1 мая первые лица компании анонсировали нововведения. В числе прочего фокус на формирование личного пространства. Чувствовать свою принадлежность легче, когда вы находитесь в небольших сообществах и среди бли...

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

Распределенно ДА или распределенно НЕТ? Интервью для тех, кто по полгода не может найти себе разработчика В предверии тимлид-завтрака «Удаленная команда. Начало» мы поговорили с техническим директором компании wemake.services – Никитой Соболевым (sobolevn). Несмотря на то, что поиск разработчика, тем более опытного — страшный сон тимлида или менеджера проекта, немногие пока реша...

Управление семисегментным дисплеем с помощью ПЛИС Привет, Хабр! Хочу внести свою посильную лепту в продвижение ПЛИС. В этой статье я постараюсь объяснить, как на языке VHDL описать устройство, управляющее семисегментным дисплеем. Но перед тем как начать, хочу кратко рассказать о том как я пришел к ПЛИС и почему я выбрал язы...

C++ Enterprise Edition. Возможно ли? C++ Enterprise Edition Что такое "enterprise edition" Удивительно, но за все время моей работы в IT, я ниразу не слышал, чтобы кто-то говорил "enterprise edition" относительно языка программирования, кроме как для Java. Но ведь приложения для корпоративного сегмента люди пи...

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

Нехватка гелия может замедлить развитие квантовых компьютеров — обсуждаем ситуацию Рассказываем о предпосылках и приводим мнения экспертов индустрии. / фото IBM Research CC BY-ND Зачем нужен гелий в квантовых компьютерах Прежде чем перейти к рассказу о ситуации с нехваткой гелия, поговорим о том, зачем вообще квантовым компьютерам нужен гелий. Квантовые...

Картинг в СССР: как увлечение американских лётчиков стало массовым DIY-хобби в Советском Союзе [Disclaimer] Прежде чем начать рассказ об истории картинга, в двух словах объясним, почему она заинтересовала нас с alinatestova. Мы делаем контент для компаний (в основном IT) и любим брать в работу сложные темы: от IaaS-хостинга до биоценозсберегающих технологий. Получило...

Как возникают «умные города» По данным ООН, на 2018 год 55,3 % населения Земли живут в городах. К 2030 году 60 % людей по всему миру будут жить в городах с населением как минимум в 0,5 млн человек. Рост в 5 % за 12 лет — это свидетельство продолжающегося процесса урбанизации. Поэтому сейчас важно понять...

End2End-подход в задачах Automatic Speech Recognition Что такое End2End-распознавание речи, и зачем же оно нужно? В чем его отличие от классического подхода? И почему для обучения хорошей модели на основе End2End нам потребуется огромное количество данных — в нашем сегодняшнем посте. Классический подход к распознаванию речи Пр...

Не очередной язык программирования В последнее время на рынке появилось огромное количество новых языков программирования: Go, Swift, Rust, Dart, Julia, Kotlin, Hack, Bosque – и это только из числа тех, которые на слуху. Ценность того, что эти языки привносят в мир программирования, тяжело переоценить, но,...

Язык программирования Ü. Введение, мотивация к созданию, цели Введение С 2016-го года (с перерывами) я разрабатываю собственный язык программирования. Название данного языка — «Ü». Почему Ü? Потому, что хотелось однобуквенного названия, а все буквы из набора A-Z уже заняты. Данная статья имеет задачу ознакомить публику с данным языко...

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

Секция Backend на DUMP Казань: архитектура облачных приложений, общительные микросервисы, DDD и не только Что делать, если секция Backend на конференции одна, а языков программирования несколько? Получается, либо каждому по докладу, и тогда что делать все остальное время? Либо больше внимания одному-двум языкам, а все остальные не в удел. Кажется, мы нашли выход. В Backend на DU...

«Автоматизация инфраструктуры. Зачем мы это делаем?» (Денис Яковлев) Предлагаю ознакомиться с расшифровкой доклада Дениса Яковлева "Автоматизация инфраструктуры. Зачем мы это делаем?" Сам доклад 2016 года. Доклад специально расшифровал для тех, которые создают виртуальные машины руками. Доклад о том, как мы в компании 2ГИС автоматизировали ра...

[Перевод] Python становится самым популярным языком программирования в мире Еще летом на The economist вышла статья о том, что Python все активнее завоевывает рынок. Но завирусилась она только сейчас. Вероятно, так произошло из-за того, что она очень неоднозначная. Ведь несмотря на такой заголовок, автор заявляет, что Python, теоретически, может пов...

TDDx2, BDD, DDD, FDD, MDD и PDD, или все, что вы хотите узнать о Driven Development Просматривая статьи по проектированию ПО, я постоянно встречал тучу невиданных сокращений и вскользь упоминаемых практик разработки. TDD — ну, это все знают, сначала пишем тесты, а потом остальной код. BDD — что-то знакомое, вроде как, тоже тесты, но особенные. TDD — снов...

[Из песочницы] Почему мы пишем бизнес-логику на Lua Привет, Хабр. В этом посте мы хотим рассказать о том, как и почему мы в IPONWEB используем язык программирования с красивым названием Lua. Lua — скриптовый встраиваемый язык программирования со свободно распространяемым интерпретатором и открытыми исходными текстами на C. О...

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

Игрушка ГАЗ-66 на пульте управления. Часть 2 В этой части поговорим о программной составляющей, как оживлялась машинка. Какая ОС использовались, какой язык был выбран, с какими проблемами сталкивался. Читать дальше →

[Перевод] Сравнение BDD фреймворков Python: плюсы и минусы Всем привет. Уже в этом месяце в ОТУС стартует курс "Python QA Engineer". В преддверии старта данного курса делимся с вами переводом интересного материала. Почти все основные языки программирования имеют фреймворки для BDD тестирования, и Python не исключение. И по факту, у...

[Перевод] Профилирование и трейсинг с perf Учимся дебажить с perf — целых 18 страниц про основные подкоманды, фичи и устройство инструмента. Джулия рекомендует; “Я даже использовала его несколько раз для профилирования Ruby программ!” Уровень сложности — для суперпродвинутого администратора. Когда нужно отыскать пр...

this и ScopeChain в EcmaScript Привет, Хабр! В предыдущей статье мы рассматривали общую теории ООП в применении к EcmaScript и популярное заблуждение начинающих разработчиков относительно отличия ООП в JS и классических языках. Сегодня мы поговорим о двух других не менее важных концепциях EcmaScript, а...

[Перевод] Зачем нужны дженерики? Эта статья о том, что будет означать добавление дженериков в Go, и почему я считаю, что нам это следует сделать. Также я коснусь возможного изменения архитектуры языка ради добавления дженериков. Go вышел 10 ноября 2009-го. Меньше чем через сутки появился первый комментари...

Как развивается умение общаться (с самого-самого начала) и что с ним делают игры на сторителлинг Одна из самых распространенных тем запросов, с которыми приходят к детским специалистам, это речь. Самая очевидная проблема — это когда ребенок не говорит. Вот ему год, а он молчит. Вот ему уже три, а он все равно молчит. А вот уже пять… Тут понятно, что что-то пошло не так....

Продуктовая разработка на Go: история одного проекта Всем привет! Меня зовут Максим Рындин, я тимлид двух команд в Gett – Billing и Infrastructure. Хочу рассказать про продуктовую веб-разработку, которую мы в Gett ведем преимущественно на языке Go. Я расскажу, как в 2015-2017 годах мы переходили на этот язык, почему вообще е...

Loli — новый высокопроизводительный язык В этой статье мы поговорим о новом интерпретируемом языке Loli, рассмотрим синтаксис и сравним с языками C и Python. Читать дальше →

Знакомимся с языком Swift на примере игры Snake Всем привет! В преддверии запуска курса «iOS-разработчик. Базовый курс» мы организовали очередной открытый урок. Этот вебинар рассчитан на людей, которые имеют опыт разработки на любых языках и платформах, однако желают ещё изучить язык Swift и освоить разработку под iOS. ...

Обучение локализации в Вашингтонском университете В этой статье Sub Lead Localization Manager компании Plarium Krasnodar Эльвира Шарипова рассказывает о том, как она проходила онлайн-обучение по программе Localization: Customizing Software for the World. Зачем матерому локализатору становиться студентом? Какие сложности ожи...

ScalaConf 2019 — проповедник Джон, Святой Грааль и «Профессор Hаskell» 26 ноября в Инфопространстве пройдет ScalaConf 2019 — профессиональная конференция для Scala-разработчиков. Возможно, первая в России. Накануне события мы попросили Вадима Челышова (dos65), руководителя ПК ScalaConf 2019, рассказать о докладах и концепции конференции. Вот...

Skills, Rules and Knowledge для IT-шника и человека В прошлый раз мы затронули такие проблемы образования как схоластический подход к обучению, а также немного поговорили о порочной практике тренинга навыков в ущерб получению знаний. Теперь настало время обсудить эти две фундаментальные категории более подробно и понять, в ...

История дизайна уровней Duke Nukem (с эскизами Левелорда) В преддверии 22-летия Duke Nukem вчера мы писали об истории игры. Сегодня поговорим о дизайне уровней официальных релизов основной серии игр Duke Nukem, не спин-офф и тем более не сторонних модификаций. По тексту тут и там разбросаны цитаты из нашего интервью с легендарным...

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

Проблемы пакетной обработки запросов и их решения (часть 1) Практически все современные программные продукты состоят из нескольких сервисов. Часто большое время отклика межсервисных каналов становится источником проблем с производительностью. Стандартное решение такого рода проблем — это упаковка нескольких межсервисных запросов в од...

End2End-подход к пониманию разговорной речи Существует несколько подходов к понимаю машиной разговорной речи: классический трехкомпонентный подход (включает компонент распознавания речи, компонент понимания естественного языка и компонент, отвечающий за некую бизнес-логику) и End2End-подход, который предполагает четыр...

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

Как мы поженили две банковские CRM-системы Всем привет! Я – Николай Аксенов, начальник отдела поддержки и развития CRM-систем «Росбанк Дом» (ипотечный филиал Росбанка). Исторически так сложилось, что у нас в ипотечном банке «ДельтаКредит» (летом мы присоединились к Росбанку и теперь называемся «Росбанк Дом») было дв...

Не очередной язык программирования. Часть 3: Физика Третья и заключительная часть серии статей о языке lsFusion (ссылки на первую и вторую части) В ней речь пойдет о физической модели: всем том, что не связано с функционалом системы, а связано с ее разработкой и оптимизацией производительности, когда данных становится слиш...

Kafka и микросервисы: обзор Всем привет. В этой статье я расскажу, почему мы в Авито девять месяцев назад выбрали Kafka, и что она из себя представляет. Поделюсь одним из кейсов использования — брокер сообщений. И напоследок поговорим о том, какие плюсы мы получили от применения подхода Kafka as a Ser...

Что такое логическое программирование и зачем оно нам нужно У того, кто в детстве не писал на Прологе — нет сердца, а у того, кто пишет на нём сегодня — нет мозгов. (оригинал) Если вас всегда терзали мучительные сомнения — что за фигня это Логическое Программирование (ЛП) и вообще зачем оно нужно? То это статья для вас. Можно по-раз...

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

Открытый вебинар «Разработка высоконагруженных систем на PHP» Добрый вечер! В преддверии старта курса «Backend-разработчик на PHP» мы традиционно провели открытый урок. На нём поговорили о высоконагруженных системах, масштабировании, архитектуре. Детально рассмотрели HighLoad, а также основные подходы и тактики при разработке высоконаг...

Как выучить иностранный язык Я расскажу о том, как изучать иностранный язык и буду это делать на примере личного опыта изучения английского языка. Английский я начал учить в 36 лет, а уже сейчас у меня свободный английский язык (как письменный, так и устный), подтверждённый официальными сертификатами. Ч...

ок.tech Data Толк #3: мини-интервью спикеров Проект ок.tech Data Толк родился как дискуссионная площадка для специалистов, занимающихся обработкой и аналитикой больших данных. Каждый раз мы подчеркиваем, что основная задача наших митапов – это не доклады, хотя они тоже очень важны, а открытая дискуссия аудитории со с...

Какой серверный язык выбрать…мобильному разработчику Вы скажете, какое вообще дело мобильному разработчику до того, на чем написан бэкенд. Главное, чтобы API туда был удобный, понятный, гибкий. А нам так не кажется. Мы в AppsConf думаем, что всем нам необходимо иногда выходить за пределы мобильной разработки и прокачивать шля...

Седьмая смерть от вейпа в США: начато уголовное расследование Американское Управление по контролю за продуктами и лекарствами (FDA) запустило расследование массовой гибели людей от неизвестной болезни, связанной с вейпами. Официально открыто уголовное дело, так как только на прошлой неделе количество заболевших выросло на 50 человек, п...

[Перевод] Проблема, которую вы решаете, важнее, чем код, который вы пишете Программисты, кажется, забыли реальную цель программного обеспечения — это решать реальные проблемы. 50 лет назад, в 1968 году, была организована рабочая конференция по программной инженерии, которая была организованна при поддержке «Научного Комитета НАТО». В то время лю...

[Из песочницы] Игрушка ГАЗ-66 на пульте управления. Часть 1 Несколько последних лет хотелось заполучить игрушку на пульте управления и обязательно с видео. Но не купить готовую, а сделать самому. И в итоге заказал себе вот такую игрушку, с простенькой системой управления, но большим потенциалом для модернизации. На все работы от ста...

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

Как распознать картинки и тексты на телефоне с помощью ML Kit Два года назад Сундар Пичаи, глава Google, рассказал о том, что компания из mobile-first становится AI-first и фокусируется на машинном обучении. Год спустя вышел Machine Learning Kit — набор инструментов, с которым можно эффективно использовать ML на iOS и Android. Об ML ...

Julia. С чего начать проект?… Очень часто, при решении задач анализа и подготовки данных, пишут одноразовые скрипты, поддержка и развитие которых не предусматривается вообще. Такой подход имеет право на существование, особенно в студенческой среде. Однако, когда появляется более одного человека, работаю...

Человеческое сознание. Перенести нельзя скопировать? Предыдущая статья на эту тему вызвала к жизни бурное обсуждение в количестве более четырехсот комментариев, среди которых, как водится, не было ни одного умного (шутка). В принципе, это и неудивительно. Такая же ситуация обстоит, например, с лингвистикой. Как говаривал ген...

Мини-интервью Олега Анастасьева: отказоустойчивость в Apache Cassandra Одноклассники – самый крупный пользователь Apache Cassandra в Рунете и один из крупнейших в мире. Мы начали использовать Cassandra в 2010 для хранения оценок фото, а сейчас под управлением Cassandra находятся петабайты данных на тысячах нод, более того, мы даже разработали...

Надежное программирование в разрезе языков. Часть 2 — Претенденты Первая часть с функциональными требованиями тут Заявленные как языки программирования с прицелом на надежность. В алфавитном порядке — Active Oberon, Ada, BetterC, IEC 61131-3 ST, Safe-C. Читать дальше →

C/C++ из Python Про то как вызывать Python из C написал в прошлой статье, теперь поговорим как делать наоборот и вызывать C/C++ из Python. Раз начал писать об этом, то раскроем всю тему до конца. Тем более, что ни чего сложного здесь нет тоже. Читать дальше →

[Перевод] Зачем ЯОП? Зачем Racket? Это продолжение статьи «Зачем Racket? Зачем Lisp?», которую я написал примерно через год после того, как открыл для себя Racket. Будучи новичком, я не мог понять дифирамбов, которые со всех сторон сыпались в адрес Lisp. Я не знал, что и думать. Как понимать, что Lisp в конце...

Математика любви По материалам статьи Julien Clinton Sprott. Dynamical models of love. Nonlinear Dynamics Psychology and Life Sciences, August 2004. Я алгеброй гармонию поверил… Теория мой друг суха, но древо жизни вечно зеленеет… Кто только не бился об эту «проблему»…. Ее разбирали в дре...

Делаем контроллер для умного дома Делаем контроллер для умного дома и не только. В предыдущей статье я описывал разработку системы в целом. В этой я опишу разработку контроллера, который отвечает за опрос датчиков и модулей ввода-вывода. «Зачем изобретать велосипед?» — спросите вы. Во-первых, это интересно,...

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

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

[Из песочницы] Сергей Голубев: «Самое лучшее, что можно сделать для OSM сейчас — взять дамп планеты, удалить его и начать всё заново» Сергей Голубев — натуралист, опытный осмер и автор блога «Город Шахты». Его размышления об OpenStreetMap всегда неожиданны, а потому вдвойне интересны. Он умеет найти необычный ракурс и на привычное посмотреть под другим углом. Зачем OSM нужны катастрофы, почему у него не су...

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

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

Honor 20 Pro слили в сеть На просторах интернета появилась информация о новом смартфоне Honor 20 Pro, который вроде как в ближайшее время должны официально анонсировать. Если верить слухам, у новинки будет процессор Kirin 980, который разработала и произвела компания Huawei, плюс будет сразу четыре к...

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

[Из песочницы] Что нужно для разработки игр и кем реально является разработчик игр Большинство людей (нормальных), которые планируют заниматься программированием (как хобби или основной профессией) обычно задаются вопросами: «Что такое программирование?», «Зачем мне нужно программирование?», «Какой язык я буду учить?», «Что я получу в итоге?». Таким был и...

Интернет разрознен больше, чем когда-либо: куда «приходят» более миллиона новых пользователей ежедневно? Часть 1 Сегодня Интернет-трафик совсем другой, нежели десятилетие назад. Более миллиона человек становятся новыми пользователями сети ежедневно, а общее количество уже насчитывает миллиарды человек. Кто они, эти люди? Что они делают в сети? Как распределён Интернет-трафик и каковы п...

Управление конфликтами в команде – эквилибристика или жизненная необходимость? Эпиграф: Встретились как-то в лесу Ёжик и Медвежонок. — Здравствуй, Ёжик! — Здравствуй, Медвежонок! Так, слово за слово, шутка за шуткой, и получил Ёжик от Медвежонка по морде … Под катом рассуждения нашего тимлида, а также директора по развитию продукта RAS — Игоря Марна...

Опровергаем четыре стереотипа о языке программирования Rust Язык программирования Rust, созданный и поддерживаемый корпорацией Mozilla, позволяет обычным программистам писать одновременно и безопасные и быстрые системы: от калькуляторов до высоконагруженных серверов. За своё относительно короткое время существования данный язык уже ...

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

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

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

В эпоху недоверия: главные лекции с неформальной конференции «Баркемп» Как благотворительным организациям стать устойчивее? Зачем активистам создавать игры на правовые темы? Как устроено горизонтальное доверие, и что делать с усилением контроля Интернета? На эти и другие вопросы ответили специалисты на неформальной конференции для гражданских ...

Как КиноПоиск делает своё медиа Это — подкаст с контент-мейкерами и руководителями в сфере контент-маркетинга. Гость 15-го выпуска — Лиза Сурганова, главный редактор КиноПоиска и ведущая подкаста «В предыдущих сериях», рассказывает о развитии собственного медиа крупнейшего кинопортала. послушать можно в ...

[Перевод] Встраиваемые функции в Go Go позволяет писать на ассемблере. Но авторы языка написали такую стандартную библиотеку, что бы этого делать не пришлось. Есть способы писать переносимый и быстрый код одновремено. Как? Добро пожаловат под cut. Читать дальше →

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

Игровая агрессия, или как кооператив превращается в кровавую баню и что делать, чтобы он этого не делал В прошлый раз мы остановились на том феномене, что игра, которая изначально задумывалась как кооператив (например, D&D или многопользовательская песочница типа Space Station 13), почему-то может использоваться игроками совершенно по другому назначению, становясь простр...

[Из песочницы] Мифы про удалённых сотрудников, которые мы разрушили сами Привет, Хабр. Я редактор в компании Ratio, мы делаем веб-разработку на заказ и с начала 2018 года все наши сотрудники работают удалённо. От Таллина до Комсомольска-на-Амуре, семь часовых поясов. Наши разработчики всегда трудились из дома, но также был офис в Москве, в кот...

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

Facebook Developer Circle: Moscow | Launch Event 10 сентября присоединяйтесь к первой встрече сообщества Facebook Developer Circle: Moscow! На встрече, которая пройдет в нашем офисе, расскажем подробно о сообществе и поговорим про интересные технологии. Среди спикеров: Вики-Мария Гиббонс (Facebook, EN) расскажет про F...

devleads — поговорим о профессиональном выгорании Привет! В рамках проекта devleas мы с ребятами решили сделать подкаст для всех неравнодушных к менеджменту в IT-сфере — тимлидов, руководителей разработки и им подобных. Кто мы: Я, Илья Царев, руководитель мобильной разработки Альфа-Банка. Илья Кузнецов, imJustik, iOS-ти...

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

[Из песочницы] Как основать производственный кооператив. Руководство для  фрилансера в ИТ-сфере (перевод) Привет, Хабр! Представляю вашему вниманию перевод статьи "A Technology Freelancer's Guide to Starting a Worker Cooperative " от Tech Co-op Network (North American Technology Worker Cooperatives). Примечание переводчика Для многих «кооператив» это что-то про стро...

Внедрение Airflow для управления Spark-джобами в ivi: надежды и костыли Задача деплоя моделей машинного обучения в продакшн — это всегда боль и страдания, потому что очень некомфортно вылезать из уютного jupyter notebook в мир мониторинга и отказоустойчивости. Мы уже писали про первую итерацию рефакторинга рекомендательной системы онлайн-киноте...

Как мы учились рисовать тексты на Canvas Мы разрабатываем платформу для визуальной коллаборации. Для отображения контента мы используем Canvas: на нём рисуется всё, в том числе тексты. Готового решения для отображения текстов на Canvas один в один как в html не существует. За несколько лет работы с отрисовкой текст...

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

Английский vs. Эсперанто: за кем будущее? За последние 50 лет позиции английского языка на международной арене усилились до невиданного ранее уровня. На сегодня в мире примерно 378 миллионов людей говорят на английском в качестве родного и еще от 470 миллионов до 1 миллиарда указывают его как второй язык. Что приме...

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

Немного технической лирики о C++ Tools от JetBrains, и при чем тут единороги Начну не с моего типичного “Привет, Хабр! У нас тут очередной крутой релиз”, а с “Привет, меня зовут Настя, я ПММ в JetBrains и я отвечаю за наши инструменты для C++”. Или нет, попробую еще раз, вот так: “Привет, пишет вам C++ разработчик с 8-летним стажем, который 5 лет наз...

65-миллионная тонна угля добыта в Хакасии компанией Михаила Гуцериева В Хакасии на разрезе Степной добыта юбилейная тонна каменного угля. Разрез принадлежит компании «Русский Уголь», входящей в САФМАР Михаила Гуцериева, одну из крупнейших промышленно-финансовых групп в России. Как пишет «МК», разрез действует с 1993 года, и недавно выдал ...

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

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

Мультимодельные СУБД — основа современных информационных систем? Современные информационные системы достаточно сложны. Не в последнюю очередь их сложность обусловлена сложностью обрабатываемых в них данных. Сложность же данных зачастую заключается в многообразии используемых моделей данных. Так, например, когда данные становятся «большими...

[Из песочницы] Bowers&Wilkins PX. Запоздалый НеОбзор На дворе 2019 год. В мире портативного беспроводного аудио царит тотальный стабилизец. Хорошо звучащие Bluetooth наушники умеют делать считанные компании. А итоговый список моделей не дотягивает и до десятка. Сегодня поговорим как раз о такой модели. Прошлогодний флагман Bow...

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

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

[Перевод] Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

Представляем Vepp — новую панель управления сервером и сайтом от ISPsystem Vepp — это наша новая панель для управления сервером и сайтом. Сначала мы хотели просто обновить интерфейс ISPmanager 5, но на этапе проектирования поняли: интерфейсом не обойтись, нужно менять подход к задачам пользователя. Фактически это означало, что надо делать новый пр...

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

SObjectizer-5.6.0: режем по живому, чтобы расти дальше Третьего дня стала доступна новая версия SObjectizer-а: 5.6.0. Ее главная особенность — это отказ от совместимости с предыдущей стабильной веткой 5.5, поступательно развивавшейся на протяжении четырех с половиной лет. Основные принципы работы SObjectizer-5 остались прежними...

[Перевод] Зачем использовать python -m pip И снова здравствуйте. В преддверии старта нового потока по курсу «Machine Learning», хотим поделиться переводом статьи, которая имеет довольно косвенное отношение к ML, но наверняка будет полезна подписчикам нашего блога. Мариатта — разработчик из Канады, спросила в Тви...

Что такое DevOps Определение DevOps очень сложное, поэтому приходится каждый раз запускать дискуссию об этом заново. Только на Хабре тысяча публикаций на эту тему. Но если вы это читаете, то наверняка знаете, что такое DevOps. Потому что я — нет. Привет, меня зовут Александр Титов (@osminog)...

Психология Звукового Зрения. Светлана Лебедева рассказала, как учат людей новому способу восприятия «Темнота тоже бывает красивой – когда в ней прячется свет» (с) Сергей Лукьяненко «Мальчик и Тьма» Выучить незнакомый язык под силу каждому, будь то иностранный, жестовый или какой-нибудь язык программирования. Кто-то будет осваивать его несколько месяцев, кому-то потребует...

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

Полное интервью с деканом факультета Python в GeekBrains — как и для чего учить язык начинающим Вчера мы опубликовали первый выпуск в цикле «Кем работать в ИТ». Для него я поговорил с двумя бывшими студентами и деканом факультета Python в GeekBrains. Когда я «смонтировал» рассказы в одну историю, стало жалко, что многое осталось лежать в черновиках. Поэтому сегодня ...

With love from Stepik: образовательная платформа Hyperskill Я хочу поговорить с вами о том, почему мы чаще чиним сантехнику, чем пишем про неё диссертации, о разных подходах к обучению программированию и о том, как мы пробуем применить один из них в нашем новом продукте Hyperskill. Если вам не по душе длинные вступления, то переходи...

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

[recovery mode] Почему мои финансы зависят от Билайна? Сегодня с утра творится то, о чем так долго говорили большевики что можно было предвидеть: у Билайна случилась проблема с доставкой (части) СМС, и, внезапно, для клиентов Билайна авторизации через SMS поломалась. Мы все знаем, как неприятно, когда большая система перестае...

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

Как выбрать СХД, не выстрелив себе в ногу Введение Пришла пора покупать СХД. Какую взять, кого слушать? Вендор А рассказывает про вендора B, а еще есть интегратор C, который рассказывает обратное и советует вендора D. В такой ситуации и у опытного архитектора по системам хранения голова пойдет кругом, особенно со в...

Ровные зубы, C++ и математика — как они связаны? Разговор с Align Иногда мне кажется, что чем больше я смотрю на ИТ- индустрию, тем примитивнее становится в голове общая картина. Как будто ИТ — это либо серьезный rocket science, либо очередной сервис, который «позволяет сделать *что-нибудь-еще* всего в один клик». А за пределами этого пр...

Автоматизация: как работать с обновлениями Привет, Хабр! Я довольно давно и много занимаюсь автоматизацией тестирования. И не понаслышке знаю, какую боль иногда доставляют новые версии чего угодно. Обновили XCode, вышла новая Selenium, придумали новый браузер (особое спасибо Microsoft за Edge и его драйвер), зачем-т...

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

Знакомство с Python для камрадов переросших «язык A vs. язык B» и другие предрассудки Для всех хабравчан, у которых возникло ощущение дежа-вю: Написать этот пост меня побудили статья "Введение в Python" и комментарии к ней. К сожалению, качество этого "введения" кхм… не будем о грустном. Но ещё грустнее было наблюдать склоки в комментариях, из разряда "C++ бы...

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

[recovery mode] Популярные вопросы разработчика о тестировании Эта статья — не теоретическое руководство по написанию тестов и не how-to по использованию инструментария в определенном стеке, а ряд популярных вопросов, иногда даже у многих не сформировавшихся, на которые я постараюсь дать ответы. Источником этих вопросов служат коллеги, ...

[Из песочницы] Extension в Dart (Flutter) В недавном релизе языка Dart 2.6 в языке появилась новая функция, static extension или статические методы расширения, который позволяет вам добавить новые методы к существующим типам. Зачем вообще нужны extension? Как их использовать и на что они годятся? Введение Начнём ...

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

[Перевод] Пишем API для React компонентов, часть 5: просто используйте композицию Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

L4 Firewall должен быть в 10 раз дешевле L7 Firewall при одной и той же скорости трафика Мало кто из современных сетевых специалистов изучает как же на самом деле работает межсетевой экран. Это приводит к странным ситуациями. Часто сталкиваюсь в тендере с тем, что заказчик не понимает разницы между межсетевыми экранами разных типов. Очень часто человек считает...

[Перевод] Подключение MySQL после ошибки 1040: слишком много соединений И снова ERROR 1040… Техподдержка получает много жалоб на эту печально известную ошибку: ERROR 1040: Too many connections — слишком много соединений. Проблема очевидна: приложение или пользователи создают больше соединений, чем допускает сервер, то есть текущее число соединен...

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

[Из песочницы] Система контроля библиотеки на Flask-Potion, Часть 0: готовим всё, что понадобится Введение В своей работе я уже некоторое время использую Flask-Potion — фреймворк, основными достоинствами которого являются: весьма удобная интеграция с SQLAlchemy моделями, автогенерация crud-эндпоинтов, наличие клиента potion-client (весьма удобного, если пишешь API сервис...

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

Зачем писать свой React Data Grid в 2019 Привет, Хабр! Я участвую в разработке ECM системы. И в небольшом цикле статей хочу поделится нашим опытом и историей разработки своего React Data Grid (далее просто грид), а именно: почему мы отказались от готовых компонент с какими проблемами и задачами мы столкнули при ра...

Если у Вас нет Питона, но есть Керас-модель и Джава Всем привет! В построении ML-моделей Python сегодня занимает лидирующее положение и пользуется широкой популярностью сообщества Data Science специалистов [1]. Также, как и большинство разработчиков, Python привлекает нас своей простотой и лаконичным синтаксисом. Мы использу...

Надежное программирование в разрезе языков — нубообзор. Часть 1 В очередной раз провозившись два дня на написание и отладку всего четырехсот строк кода системной библиотеки, возникла мысль — “как бы хорошо, если бы программы писались менее болезненным способом”. И в первую очередь, поскольку отладка занимает гораздо больше времени, чем ...

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

[Перевод] Как в 1995 году писали игры для Sega Saturn Это документ, написанный мной в 1995 году, когда я работал над первой игрой студии Neversoft: Skeleton Warriors. Это была первая игра, в которой я не использовал язык ассемблера 68K. Фото сделано примерно в то время. Комплект разработчика (dev kit) («Small Box» и ICE) стоит...

ObjectRepository — .NET in-memory repository pattern для ваших домашних проектов Зачем хранить все данные в памяти? Для хранения данных сайта или бекэнда первым желанием большинства здравомыслящих людей выберет SQL базу данных.  Но иногда в голову приходит мысль что модель данных не подходит для SQL: например, при построении поиска или социального графа ...

ок.tech: Frontend Meetup #2: мини-интервью спикеров Фронтенд — одно из самых быстроразвивающихся направлений разработки, вспомните разработку интерфейсов 3-х годичной давности и сравните её с тем, что происходит сейчас и сразу станет понятно — изменилось очень многое, если не совершенно все. С молниеносной скоростью устарев...

[Из песочницы] Как и зачем я писал парсер для сайта Tradingview. Автоматизация торговли своими руками Проблема: На текущий момент наиболее удобным и полноценным программным обеспечением (далее ПО) для автоматизации торговли на российском биржевом рынке является небезызвестный ТСЛАБ. Несмотря на несомненные плюсы в виде удобного визуального редактора для написания торговых ск...

Netramesh – легковесное service mesh решение В процессе перехода от монолитного приложения к микросервисной архитектуре мы сталкиваемся с новыми проблемами. В монолитном приложении обычно достаточно просто определить, в какой части системы произошла ошибка. Скорее всего, проблема в коде самого монолита, либо в базе дан...

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

[Перевод] Новый курс по Python от Microsoft [на английском] Вероятно, самое большое препятствие при изучении любого нового языка программирования — просто знать, с чего начать. Что важно? Что нужно знать, чтобы стать профи? Трудно исследовать документы, когда даже нет уверенности, что читаешь то, что нужно. Возможно, вы присматривае...

XEN и будущее automotive: как опенсорс-гипервизор становится конкурентом коммерческим автомобильным решениям Это история в двух частях — о новом витке развития automotive. В первой Алекс Агизим, CTO Automotive & Embedded Systems в EPAM, расскажет о виртуализации в автомобильном компьютере. А также как и почему опенсорсный гипервизор XEN может стать полноценным конкурентом комме...

«Не давите»: Зеленский выступил в защиту русского языка 21 марта шоу-мен заявил, государственный язык — украинский и только, однако он гарантирует свободное использование родного языка всем этническим меньшинствам Украины. Во все времена, в преддверии украинских выборов президента, политики начинают активно спекулировать «языков...

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

Конференция Lua in Moscow 2019 В первое воскресенье марта в офисе Mail.ru Group пройдёт третья международная конференция Lua in Moscow 2019. Вас ждут выступления автора языка Роберто Иерусалимского и лучших зарубежных и отечественных экспертов по Lua и LuaJIT. Lua — уникальный язык программирования, ко...

CMake и C++ — братья навек В процессе разработки я люблю менять компиляторы, режимы сборки, версии зависимостей, производить статический анализ, замерять производительность, собирать покрытие, генерировать документацию и т.д. И очень люблю CMake, потому что он позволяет мне делать всё то, что я хочу....

[Перевод] Каскадная инвалидация кэша. Часть 2 В первой части перевода материала, посвящённого каскадной инвалидации кэша, мы обсудили сущность проблемы и рассмотрели один из вариантов её решения, который заключается в использовании карт импорта. Его плюс — лёгкость реализации. А минус — слабая поддержка браузерами. Сего...

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

FFI: пишем на Rust в PHP-программе В PHP 7.4 появится FFI, т.е. можно подключать библиотеки на языке C (или, например, Rust) напрямую, без необходимости писать целый extension и разбираться в его многочисленных нюансах. Давайте попробуем написать код на Rust, и используем его PHP-программе Читать дальше →

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

Нагрузочное тестирование веб-проекта — без купюр Друзья, добрый день! Продолжаем серию публикаций «без купюр» о проектах, связанных с разработкой, часто с приставкой «веб». Поговорим сегодня о нагрузочном тестировании. Проблема в том, что часто ни клиент, ни руководитель проекта не понимают, зачем оно нужно, какие риски о...

Apple планирует выпустить приложения нового поколения для Windows Apple планирует заняться разработкой ПО нового поколения под Windows Этим летом Apple сделала то, чего от неё ждали уже много лет – она отказалась от iTunes. Само собой, прекратила существование только утилита, тогда как онлайн-магазин с музыкой и фильмами, а также её ключев...

#видео | Робот Cheetah научился самостоятельно вставать и делать сальто назад Инженеры Массачусетского технологического института отчитались о своём новом достижении в робототехнике. Их четырёхногий робот Cheetah, созданный по образу и подобию настоящего гепарда, научился самостоятельно вставать и…делать сальто назад! Со стороны это выглядит просто н...

Неопределённая параметризация как универсальный метод построения архитектуры приложения на C++ и Java за минимальн. цену C++ — язык запутанный, и существенным его недостатком является сложность создания изолированных блоков кода. В типовом проекте всё зависит от всего. Эта статья показывает, как писать высокоизолированный код, который минимально зависит от конкретных библиотек (включая стандар...

5G в России: зачем нужно, сколько стоит и когда появится? Коротко о главном Сотовая связь пятого поколения пока еще где-то там, на горизонте О мобильных сетях пятого поколения начали говорить еще тогда, когда только стартовало внедрение 4G. Тем не менее, развитие 5G сетей идет не слишком активными темпами, что в России, что на Западе. Причина — бо...

[Перевод] JavaScript не нужно ничем заменять — другие языки тоже столкнутся с теми же проблемами «Существует только два вида языков: те, на которые жалуются и те, которыми никто не пользуется», — Бьёрн Страуструп, создатель C++ Очень часто слышатся заявления о том, что JavaScript нужно заменить каким-то другим языком. Причиной всегда становится то, что у JavaScript нак...

Ультимативное сравнение embedded платформ для AI Нейронные сеточки захватывают мир. Они считают посетителей, контролируют качество, ведут статистику и оценивают безопасность. Куча стартапов, использование в промышленности. Замечательные фреймворки. Что PyTorch, что второй TensorFlow. Всё становиться удобнее и удобнее, про...

[Перевод] Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенЭтот пост — перевод первой статьи ...

Как мы разрабатываем персональные товарные рекомендации Наши клиенты-магазины хотят делать крутой маркетинг. Чтобы люди больше покупали, они регулярно шлют им email-рассылки. И каждый раз думают: “Что же написать в письме?”. Можно писать просто: “Покупайте у нас почаще!”, но это не очень-то работает. Идея получше — вставлять в п...

Зачем Mozilla, Coil и Creative Commons выделяют для open source проектов 100 млн долларов Расскажем, как компании планируют разделить сумму гранта, и поговорим о других ситуациях, когда open source разработчики получили существенную финансовую и материальную поддержку. Читать дальше →

Product Fest — конференция по управлению IT-продуктами, на которую вы захотите пойти Управление продуктом — состоявшаяся дисциплина. На продакт-менеджеров большой спрос, а практических знаний хватает не у всех, поэтому 9 декабря мы проведем профессиональную продуктовую конференцию Product Fest. К её организации и программе мы применяем правило: «Сделать таку...

Иван aka BANO.notIT: “Если OSM начнет себя рекламировать и продвигать, в него придут новые люди с новыми идеями” Иван — студент-программист из Москвы, который присоединился к сообществу RU-OSM буквально несколько месяцев назад. Потому его мнение об OSM, как человека молодого и со стороны, интересно вдвойне. Почему обязательно нужно установить JOSM, зачем отмечать точку по продаже шаурм...

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

21 августа трансляция Zabbix Moscow Meetup #5 Привет! Меня зовут Илья Аблеев, я работаю в команде мониторинга Badoo. 21 августа приглашаю на традиционную, пятую, встречу сообщества специалистов по Zabbix в нашем офисе! Поговорим о вечной боли — хранилищах исторических данных. Многие сталкивались с проблемами произво...

[Из песочницы] Архитектура компьютерных систем 1 часть. Логические вентили Логические элементы Доброго времени суток, я начинаю серию статей по написанию виртуальной машины на языке Golang. Я выбрал этот язык так как он прост для чтения и имеет в стандартной библиотеке уже необходимые функции, которые пригодятся в дальнейшем. Эта статья не несёт в...

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

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

Жёлтое — Вакуум — Облако Последние несколько лет я, по непонятной причине, стараюсь подтолкнуть людей к расширению профессионального кругозора. Я убежден, что в современном мире невозможно занять достойное место, занимаясь узкоспециализированной деятельностью – только узкоспециализированной деятельн...

[Из песочницы] Навигация в кроссплатформенных приложениях: почему NavController победил angular/router в Ionic 4 Всем привет! Меня зовут Никита Жигамовский, программист в KitApp и я хочу рассказать о своем опыте построения навигации в Ionic 4: проблеме, с которой столкнулся, и ее решении. Я занимаюсь разработкой кросс-платформенных решений для мобильных приложений с 2018 года. Рань...

[Из песочницы] Создание сторис для Instagram из PHP Вступление В последнее время люди более охотно смотрят в социальных сетяx видео, нежели просматривают фотографии. Сторис в инстаграм набирает в 3-4 раза больше просмотров, чем просто выложенная фотография. Ну и конечно же, не перестаём забывать, что социальные сети это не т...

Управление договоренностями Давайте поговорим про управление договоренностями. Почему это вдруг? Да потому что, мы на TeamLead Conf любим обсуждать боли и проблемы, но и не забываем про решения. Наверняка у всех бывают проблемы, связанные с договоренностями по работе. «Договоренности не выполняются»,...

[Из песочницы] Рефакторинга много не бывает Привет, Хабр! Представляю вашему вниманию перевод статьи "Refactoring — oops, I’ve been doing it backwards" автора Джастина Фуллера (Justin Fuller). Я очень завишу от рефакторинга, и не боюсь признать это, но есть только одна проблема: я всегда делал это задом на...

[Перевод] Конференция DEFCON 25. Гарри Каспаров. «Последняя битва мозга». Часть 2 Конференция DEFCON 25. Гарри Каспаров. «Последняя битва мозга». Часть 1 Я думаю, что проблема не в том, что машины заменят человека на его рабочем месте, в том числе и в интеллектуальной сфере деятельности, и не в том, что компьютеры будто бы ополчились против людей с высши...

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

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

Митап по PHP в Иванове Привет, Хабр! Мы рады сообщить, что уже в эту субботу в офисе компании Инвольта состоится митап на тему: “PHP: Неправильный путь. Почему важно знать инструменты Native PHP сегодня. Личный опыт разработчика Rambler.” Как уже понятно из темы, на митапе мы будем говорить про ...

[Из песочницы] Как я стал PMP и как это лучше не делать Я давно осознал, что делиться опытом — это полезно. Но только недавно я понял, что им можно делиться не только со знакомыми и близкими, но и со всеми. Поэтому, я хочу рассказать, как я шел к сертификации, почему я это делал и чем это закончилось. Читать дальше →

Наталья Козловская: “Какая разница кто рисует OpenStreetMap: мужчины или женщины?” Наталья Козловская — помимо того, что является одним из лидеров велодвижения в Тольятти и организатором клуба «ВелоТольятти», также любит в свободное время порисовать дорожки и тропинки в OpenStreetMap. Конечно же, кроме традиционных вопросов об OSM, мы поговорили с ней о т...

Джон Альфонсо Ромеро — человек, который создал Doom и Quake На прошедшем IT-фестивале Tech Train мы встретились с легендарным Джоном Ромеро, который приложил руку к дизайну и разработке культовых Wolfenstein 3D, Doom и Quake. Мы поговорили о том, нужны ли игровым разработчикам софт-скиллы, на какие рабочие инструменты стоит обратить ...

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

LuaVela: реализация Lua 5.1, основанная на LuaJIT 2.0 Некоторое время назад мы анонсировали публичный релиз и открыли под лицензией MIT исходный код LuaVela – реализации Lua 5.1, основанной на LuaJIT 2.0. Мы начали работать над ним в 2015 году, и к началу 2017 года его использовали в более чем 95% проектов компании. Сейчас хоче...

[Перевод] Тестирование инфраструктуры как код с помощью Pulumi. Часть 1 Добрый день, друзья. В преддверии старта нового потока по курсу «DevOps практики и инструменты» делимся с вами новым переводом. Поехали. Использование Pulumi и языков программирования общего назначения для инфраструктурного кода (Infrastructure as Code) дает много преимущ...

Как я расширение для Atom и VS Code создавал: личный опыт и исходники Перевели для вас статью Филипа Корейа о том, как он разрабатывал расширения для редакторов Atom и VS Code. Назвать проекты сложными нельзя, но в этом их преимущество: сходу можно понять, что необходимо делать для создания собственного расширения. Когда был впервые предс...

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

Как мы пишем микросервисы и почему не делаем этого быстро Истории по распиливанию монолита часто похожи одна на другую. Был у команды здоровенный неповоротливый монолит, решили его распилить на россыпь правильных и шустреньких микросервисов, все стало круто. Отличаются истории лишь степенью ужаса “до”, радости “после” и рядом втор...

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

Зачем преподавать, если разрабатывать выгоднее. Разговор с GeekBrains Наверное, люди моего поколения помнят, как родители им в детстве говорили: «иди учиться на юриста, экономиста, менеджера или в иняз — тогда будут работа и деньги». Это был жуткий культ отказа от технических профессий. Родители видели, что произошло с ними — советскими техн...

Управляем непрерывностью бизнеса с ClearView Прочитав заголовок, многие наверняка подумали, что этот материал не для них. Но не торопитесь закрывать страницу! Вспомните знаменитое отключение электроэнергии в Москве, которое случилось больше 10 лет назад из-за аварии на подстанции в Чагино. Одного директора крупного и...

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

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

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

Тик-так: время умных часов ушло, но теперь ими притворяются браслеты Давайте поговорим об умных часах. Я писал несколько топиков об умных часах на Хабре (раз и два), затем рынок немного умер, а сейчас он находится таком интересном положении — благодаря способности фитнес-браслетов притворятся полноценными часами — что хочется снова пообщаться...

Can I haz? Рассматриваем ФП-паттерн Has Привет, Хабр. Сегодня мы рассмотрим такой ФП-паттерн, как Has-класс. Это довольно любопытная штука по нескольким причинам: во-первых, мы лишний раз убедимся, что паттерны в ФП таки есть. Во-вторых, оказывается, что реализацию этого паттерна можно поручить машине, что вылилос...

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

Анонс FunTech QA-automation meetup Всем привет! Приглашаем QA-инженеров на наш первый митап по тестированию, посвящённый автоматизации. Программа «Автотесты, объединяющие подходы, платформы и сердца», Михаил Чирков, ivi.ru Преимущества и недостатки кроссплатформенных автотестов (в нашем случае речь о плат...

Сытые философы или конкурентное программирование на .NET Давайте посмотрим как устроено конкурентное и параллельное программирование в .Net, на примере проблемы обедающих философов. План такой, от синхронизации потоков/процессов, до модели акторов (в следующих частях). Статья может быть полезна для первого знакомства или для того...

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

Рынок компьютеров в 2019 году упадет Хотя глобальные поставки персональных компьютеров во втором квартале выросли, неочевидные макроэкономические проблемы создают неопределенную ситуацию на рынке до конца года.

Почему не заводится машина и что с этим делать Глобальных причин всего три: проблемы с подачей топлива, сжатием или воспламенением смеси.

[Из песочницы] Изучаем STM8S Медленный старт. Часть 0 МК семейства STM8S относительно STM8L/32 имеет меньший арсенал периферии, но позволяет без лишних усложнений разобраться с основами и получить необходимые навыки для работы с его старшими братьями. 0. На кого ориентирован материал, зачем и почему При написании данной стать...

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

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

Пишем свой язык программирования, часть 1: пишем языковую ВМ Введение Доброго времени суток всем хабрачитателям! Итак, пожалуй стоит сказать, что целью моей работы, на основе которой будет написан ряд статеек было пройти весь путь создания полнофункционального ЯП самому с 0 и затем поделиться своими знаниями, наработками и опытом с и...

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

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

Блокировки контента: ситуация на мировой арене Рассказываем о странах с самым «закрытым» интернетом, и обсуждаем причины блокировок соц/ сетей и мессенджеров в них. Также поговорим о последних законопроектах в этой области. Читать дальше →

Бро vs. не бро В этой статье предлагаю совершить экскурс в социобиологию и поговорить о эволюционных истоках альтруизма, родственном отборе и агрессии. Мы коротко (но со ссылками) рассмотрим результаты социологических исследований и исследований с нейровизуализацией, в которых показано, ка...

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

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

Как планировать на год. Кейс IT-компании 120 человек и две практики для небольших команд Хабр, привет! Меня зовут Антон, я руководитель YouGile (система управления проектами). Самое полезное, что я делаю в компании — это общаюсь с клиентами на тему того, как вести проекты и как связывать отделы в системе управления. Тема сколько-нибудь долгосрочного планирован...

Преимущества анализа приложений 7 уровня в межсетевых экранах. Часть 2. Безопасность Новое поколение межсетевых экранов удобнее и безопаснее, благодаря новой архитектуре движка и новой идеологии управления сетевыми потоками. Почему появилась эта статья? Неоднократно приходил к коллегам-безопасникам, которые пользуются межсетевым экраном нового поколения и ...

[Перевод] Погружение в Move — язык программирования блокчейна Libra от Facebook Далее мы рассмотрим в деталях основные характеристики языка Move и в чем его ключевые различия с другим, уже популярным языком для смарт-контрактов — Solidity (на платформе Ethereum). Материал основан на изучении доступного он-лайн 26-страничного whitepaper-а. Введение Move...

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

[Перевод] Язык программирования Swift на Raspberry Pi Raspberry PI 3 Model B+ В этом мануале мы разберем основы использования Swift на Raspberry Pi. Raspberry Pi — небольшой и недорогой одноплатный компьютер, потенциал которого ограничен лишь его вычислительными ресурсами. Он хорошо известен техногикам и любителям DIY. Это о...

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

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

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

Как внедрить аналитику и не сломать приложение? Привет! Меня зовут Соснин Илья. Я работаю в Lamoda Android разработчиком. Крашу кнопочки, прогаю списочки и, к сожалению, пишу аналитику… Lamoda — это Data Driven Company, в которой все решения принимаются на основе поведения пользователей. Сначала мы наблюдаем и только пот...

Статический анализ улучшит кодовую базу сложных C++ проектов Постепенно и незаметно складывается ситуация, когда сложность серьёзных C++ проектов становится запредельной. К сожалению, теперь C++ программист не может полагаться только на свои силы. Читать дальше →

Ученые хотят заново заморозить Арктику В последнее время из-за таяния ледников Арктики довольно сильно повышается уровень мирового океана. Но подъем уровня воды грозит не только затоплениями суши прибрежных регионов. Так как таящий лед, грубо говоря, «разбавляет» морскую воду, теплые течения становятся холоднее....

[Перевод] Почему вам стоит использовать язык Ада для программирования вашей системы Язык программирования Ада родился в середине 1970-х, когда министерство обороны США и министерство обороны Британии решили заменить сотни специализированных языков программирования для встроенных вычислительных систем, всё чаще использовавшихся в военных проектах. Язык Ада...

Градиентный спуск по косточкам В интернете есть много статей с описанием алгоритма градиентного спуска. Здесь будет еще одна. 8 июля 1958 года The New York Times писала: «Психолог показывает эмбрион компьютера, разработанного, чтобы читать и становиться мудрее. Разработанный ВМФ… стоивший 2 миллиона долла...

Blameless environment: никто не должен писать качественный код На РИТ++ Никита Соболев (sobolevn) выступил, как он сам назвал это, с проповедью на тему качества кода и процессов в компании. Особо впечатлительных просим налить себе ромашкового чаю, но отойти от экранов не предлагаем. Вы можете не соглашаться ни с одним из тезисов, настаи...

Software Defined Radio — как это работает? Часть 2 Привет, Хабр. В первой части были описаны основные виды SDR-устройств и кратко были приведены их характеристики. Во второй части я расскажу подробнее о плюсах и минусах SDR, также будет рассмотрен пример доступа к приемнику из языка Python. Продолжение под катом (осторож...

Шутки и отсылки из «Симпсонов» на английском, которые нужно объяснять Сегодня поговорим о мультиках. А конкретно — о самом длинном мультсериале в истории человечества — «Симпсонах». Авторы сериала не стесняются затрагивать самые злободневные и спорные темы вроде религии, политкорректности, однополых браков, феминизма. Собственно, это одна ...

Kubernetes захватит мир. Когда и как? В преддверии DevOpsConf Виталий Хабаров взял интервью у Дмитрия Столярова (distol), технического директора и соучредителя компании «Флант». Виталий расспросил Дмитрия про то, чем занимается «Флант», про Kubernetes, развитие экосистемы, поддержку. Обсудили, зачем нужен Kubern...

[Из песочницы] Три Больших Лжи о JavaScript Привет, Хабр! Представляю вашему вниманию мой перевод статьи "The Three Big Lies About JavaScript" автора Richard Kenneth. Данная статья была написана в мае 2016 года, однако ее актуальность, на мой взгляд, не исчезла. Я начинающий программист, поэтому возможны оши...

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

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

[Из песочницы] Начинаем FPGA на Python Технология FPGA (ПЛИС) в настоящее время обретает большую популярность. Растёт количество сфер применения: помимо обработки цифровых сигналов, FPGA используются для ускорения машинного обучения, в blockchain технологиях, обработке видео и в IoT. Данная технология имеет од...

Американские телекомы поборются с телефонным спамом В США набирает обороты технология аутентификации абонентов — протокол SHAKEN/STIR. Поговорим о принципах его работы и потенциальных сложностях внедрения. Читать дальше →

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

Монолит для сотен версий клиентов: как мы пишем и поддерживаем тесты Всем привет! Я бэкенд-разработчик в серверной команде Badoo. На прошлогодней конференции HighLoad я выступал с докладом, текстовым вариантом которого и хочу поделиться с вами. Этот пост будет наиболее полезен тем, кто самостоятельно пишет тесты для бэкенда и испытывает пр...

Вуайеризм тестировщика: как правильно подглядывать за людьми и зачем это нужно Насколько UX — зона ответственности тестировщиков? Ранее Антонина Хисаметдинова на конференции по тестированию Heisenbug рассказывала о правильном отображении ошибок, и расшифровка того доклада собрала на Хабре множество просмотров. А в декабре на Heisenbug 2018 Moscow она п...

Почему бизнесу нужен хороший код В сфере разработки программного обеспечения, нередко встречаются тезисы наподобие «Nobody cares about your code» (перевод — «Твой код никого не интересует»), «Код всего лишь инструмент» и ситуации полного непонимания со стороны бизнеса, почему это мы должны выделять время и ...

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

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

Компьютер Raspberry Pi встроили в клавиатуру для него На прошлой неделе Raspberry Pi Foundation выпустила первую официальную мышь и клавиатуру (с USB-концентратором) для Raspberry Pi. Продажи клавиатуры только начались, но умельцам потребовалось всего два дня, чтобы произвести логичный моддинг, сделав моноблок с компьютером в...

Никита Дубко о конференциях, синдроме самозванца и подготовке докладов  Никита Дубко — разработчик интерфейсов в компании Яндекс. Помимо работы в Яндексе, Никита участвует в организации англоязычной конференции CSS-Minsk-JS и митапов MinskCSS и MinskJS. На FrontendConf на РИТ++ 2019 Никита выступал с докладом «Алиса, пойдем во фронтенд». В нём о...

Почему только прокачка кодинга не сделает из тебя лучшего разработчика Techlead Skyeng Кирилл Роговой выступает на конференциях с докладом, в котором рассказывает о навыках, развивать которые стоит каждому хорошему разработчику, чтобы стать лучшим. Я попросил его поделиться этой историей с читателями Хабры, передаю Кириллу слово. Миф про хорош...

Custom instruments: когда signpost недостаточно Instruments для Xcode компании Apple — это инструменты для анализа производительности iOS-приложения. Их используют для сбора и отображения данных, которые необходимы в отладке кода. В прошлом году Apple презентовала Custom Instruments. Это возможность расширить стандартный ...

Закон «О связи» и уязвимость в мессенджерах Интересная произошла ситуация у меня. Купил симку Yota, залогинился с этим номером в WhatsApp и сразу оказался в трёх незнакомых группах. Предыдущей переписки не было видно, потому сначала подумал, что спам и тупо удалился со всех трёх. Спустя некоторое время мне написал ч...

Картонный движок для электротехнической настольной игры. Как мы приближали его к реальности Летом 2018 года я уже писал о том, как мы создавали настольную электротехническую игру "Не закороти Цепь!", которая тогда готовилась к изданию. В настоящий момент работа над игрой завершена, она успешно собирает средства на издание на площадке CrowdRepublic, но мы решили рас...

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

Run, Gopher, run! — о чем поговорим на GolangConf Мы обещали 5-6 причин перейти на Go, так и получилось! На GolangConf — конференции полностью посвященной Go — 7 октября будет 5 докладов с пометкой «Переход на Go» для тех, кто только собирается или начинает использовать этот язык в своих проектах. Но это только начало. С п...

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

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

[Перевод] Автоматизация Android. Супер простое руководство по созданию первого Espresso-теста Здравствуйте, друзья. В преддверии старта курса «Mobile QA Engineer», хотим поделиться с вами переводом интересного материала. Что такое Espresso? Нет, это не напиток, который вы пьете каждый день, чтобы взбодриться. Espresso — это тестовый фреймворк с открытым исходным к...

JMAP — открытый протокол заменит IMAP при обмене электронными письмами В начале месяца на Hacker News активно обсуждался протокол JMAP, разрабатываемый под руководством IETF. Мы решили поговорить о том, зачем он понадобился и как устроен. Читать дальше →

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

Почему никогда не поздно начать изучение Java (или других ЯП) Автор статьи: Джон Селавски (John Selawsky). Любви все возрасты покорны. Многие соглашаются с этим выражением, однако мы убеждаем себя, что уже поздно учиться или менять профессию. Почему бы нам не использовать этот подход ко всему, что мы бы хотели достичь, особенно когд...

Делаем UITableView. Для начинающих Новогодние праздники прошли, а мое стремление писать полезные и не очень статьи — нет! Сегодня поговорим о UITableView, работе с UITableViewDataSource и переиспользовании ячеек. Затронем как установить рут контроллер без сториборда, ошибки при работе с таблицей, лейаут и бол...

[Из песочницы] Скрещиваем ужа с ежом: OpenJDK-11 + GraalVM Привет, Хабр! В свете не самых давних новостей про политику Oracle относительно лицензирования джавы всё острее встаёт вопрос ухода от оракловых версий в сторону OpenJDK. Оданко в OracleLabs уже давно делают весьма крутую штуку под названием GraalVM, который представляет из ...

Пишем собственный CLI для React Если вы делаете Ctrl+C каждый раз при создании нового компонента в реакте, то эта статья точно для вас! У реакта нет своего CLI, и понятно почему. Не существует определенных правил, как именно должна выглядеть структура компонента, есть только общие рекомендации в документа...

20 продакт-менеджеров и самая многомерно-матричная структура из всех. Разговор со Skyeng Последнее время продуктовая команда «Хабра» стала активно посещать конференции. И мы заметили одну интересную вещь — почти на каждой конференции есть спикеры от Skyeng, и почти всегда их доклады оказываются самыми интересными. Оказалось, у этого две причины. Первая — внут...

[Из песочницы] Three.js — делаем controls для космосима или планетария Разрабатывая свой проект на тему космоса, столкнулся с тем что в three.js почему-то нет готового и удобного инструмента управления камерой, подходящего под такие задачи. Конечно я допускаю что просто плохо искал… Но, довольно продолжительный поиск результатов не дал. OrbitC...

Семинар «Управление уязвимостями: стандарты, реальность, инструменты», 4 июля, Москва Всем привет! 4 июля мы проведем небольшой Vulnerability Management Day. Поговорим о том, какие стандарты и best practice существуют и как это все ложится (или нет ;)) на реальную жизнь. Мы пригласили экспертов по различным продуктам и соответственно со своим подходом к у...

[Перевод] «Алгебраические эффекты» человеческим языком Комментарий от переводчика: Это перевод замечательной статьи Дэна Абрамова (Dan Abramov), являющегося контрибутором React. Его примеры написаны для JS, но будут одинаково понятны разработчикам на любом языке. Идея общая для всех. Вы слышали об алгебраических эффектах? Мои п...

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

[Из песочницы] Fish Redux — новая Redux библиотека для Flutter В конце 2018 года Google, не без помощи Open-Source сообщества, сделал большой подарок для мобильных разработчиков, выпустив первую стабильную версию кросс-платформенного фреймворка для мобильной разработки Flutter. Однако, при разработке крупных приложений, немного больших,...

[recovery mode] Почему сотрудники возвращаются? Истории уходивших и вернувшихся Если достаточно долго проработать в одной компании — например, восемь лет (как я, хаха) — неизбежно возникнет желание сходить посмотреть, что же находится по ту сторону привычных стен. Бывает, сядешь на офисной кухне, нальешь чаю и начнешь размышлять о том, что где-то, нав...

Делаем облачный сервис для управления расходными материалами (Angular + Firebase) Проблема — беспорядок Был четверг. Конец июля. Миша не спеша шел по теплой улице в офис из ближайшего кафе где только что пообедал. Позвонил мобильный. Звонила Света — девушка из первой линии технической поддержки. Читать дальше →

Security Week 11: RSA 2019 и светлое будущее На прошлой неделе состоялась двадцать восьмая по счету конференция RSA, и если в 2018 году это крупнейшее в отрасли бизнес-мероприятие отметилось некоторыми затруднениями в поиске новых смыслов, в этот раз опять все хорошо. Открывающая презентация президента RSA Рохита Гая б...

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

«Первый месяц три здоровых мужика боялись включать турбину» — как Алексей Стаценко строит джетпак с нуля В октябре мы поговорили с Алексеем Стаценко (MagisterLudi) о том, как он загорелся идеей построить джетпак, зачем основал JetHackers, а главное — для чего нужен реактивный ранец. Бытовые вопросы тоже в стороне не оставили: сколько это стоит, опасно ли, почему турбины не ра...

«Будущее наступило?»: В России роботы-трамваи поработят человечество — ДепТранс Беспилотные трамваи в России будут заставлять работать человека, сидящего в кабине. Один из отвечающих за технологии в Департаменте транспорта Москвы (ДепТранс) поделился технологией, которая будут распространена в ближайшем будущем по всей России. Напомним, что трамваи по ...

Яндекс.Плюс и Яндекс.Станция доступны в Беларуси Компания Яндекс представила в Беларуси два новых продукта: единую подписку на свои сервисы Яндекс.Плюс и умную колонку Яндекс.Станция. Станция позволяет управлять сервисами с помощью голоса, смотреть кино и слушать музыку в хорошем качестве, а Плюс даёт человеку дополнительн...

Самый мягкий и пушистый путь в Machine Learning и Deep Neural Networks Современное машинное обучение позволяет делать невероятные вещи. Нейросети работают на пользу общества: находят преступников, распознают угрозы, помогают диагностировать болезни и принимать сложные решения. Алгоритмы могут переплюнуть человека и в творчестве: они рисуют карт...

Что не так с GraphQL В последнее время GraphQL набирает всё большую популярность. Изящный синтаксис запросов, типизация и подписки. Кажется: "вот оно — мы нашли идеальный язык обмена данными!"... Я разрабатываю с использованием этого языка уже больше года, и скажу вам: всё далеко не так гладко. ...

Английский язык в Wall Street English – общайся легко! Многие люди, знающие английский язык на «достаточном уровне», не решаются идти на курсы для его совершенствования. При этом они сталкиваются с тем, что навыки без развития ухудшаются, накапливаются и становятся «автоматическими» ошибки, которые никто не исправляет, стоит жёс...

PHP Russia 2019: свой «стадион» для языка первой лиги На нашем рынке нет конференции, которая была бы посвящена PHP. А это все равно что футбольный клуб первой лиги без своего стадиона. Ведь в России PHP на втором месте по числу вакансий для программистов (позади 1C, но впереди Java). У него разветвленная экосистема и гигантска...

Adobe видит в ARM архитектуру «всевластия» и даже мечтает о собственном процессоре Некоторое время назад Adobe провела домашнюю конференцию, на которой главный технолог компании Абхай Параснис (Abhay Parasnis) где намёками, а где открыто обрисовал пути для дальнейшего развития компании. Начнём с конца. По твёрдому убеждению Абхая, когда-нибудь мы войдём в ...

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

Книга «Как устроен JavaScript» Большинство языков программирования выросли из древней парадигмы, порожденной еще во времена Фортрана. Гуру JavaScript Дуглас Крокфорд выкорчевывает эти засохшие корни, позволяя нам задуматься над будущим программирования, перейдя на новый уровень понимания требований к Сле...

Проверка эффективности работы SOC Сегодня мы поговорим о Security Operations Center (SOC) со стороны людей, которые не создают и настраивают его, а проверяют, как это сделали другие. Под проверку попадает эффективность работы SOC, построенного для вашей компании самостоятельно или кем-то со стороны. Проверка...

Наши руки не для скуки: восстановление кластера Rook в K8s Мы уже рассказывали, как/почему нам нравится Rook: в заметной мере он упрощает работу с хранилищами в кластерах Kubernetes. Однако с этой простотой приходят и определённые сложности. Надеемся, новый материал поможет лучше разбираться в таких сложностях ещё до того, как они...

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

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

Соревнование ML-систем на лингвистическом материале. Как мы учились заполнять пропуски Каждый год в Москве проходит конференция "Диалог", в которой участвуют лингвисты и специалисты по анализу данных. Они обсуждают, что такое естественный язык, как научить машину его понимать и обрабатывать. В рамках конференции традиционно проводятся соревнования (дорожки) Di...

Как вырастить Евангелиста для вашей компании Как все начиналось Я Community Manager в компании Plesk. Десять лет назад, после шести лет работы в службе технической поддержки, меня пригласили в отдел R&D заняться построением сообщества пользователей Plesk. Последние 10 лет я занимался созданием и развитием сообщес...

iКасса или как мы приручили «цифрового кассира» Эволюция технологий не всегда заметна обычным потребителям: кто там зарелизил 125-е обновление и почему оно лучше 124-го, понятно далеко не всем. Но когда ты заходишь вечером в обычную «Пятёрочку» за хлебом, а перед тобой вместо знакомой Гали оказывается «цифровой кассир», п...

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

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

Обзор WPS Office. Новый шикарный офис Довольно часто я слышу от пользователей вокруг, что им не нравится привычный офис от компании Microsoft — он не очень удобен, если работаешь с разными видами контента и иногда коряво отображает то, что вы хотите в приложении открыть. К сожалению, найти действительно достойну...

Как делать рингтоны (мелодии) на iPhone при помощи iTunes Наверняка и вам неоднократно приходилось доставать iPhone для ответа на входящий вызов, а потом оказывалось, что звонок адресован не вам, а находящемуся рядом человеку. Всему виной стандартные рингтоны iPhone. Популярность смартфонов Apple только продолжает расти, и таких си...

Команда Firefox выпустила для своих пользователей менеджер паролей Lockbox Вчера, 26 марта, команда разработчиков браузера Firefox представила новый продукт под названием Firefox Lockbox — менеджер паролей для мобильный устройств. Согласно странице FAQ проекта, сейчас доступна только версия для iOS, но «в ближайшее время появится и вариант для ус...

[Перевод] Крохотные образы Docker, которые верили в себя* [отсылка к американской детской сказке "Маленький паровозик, который верил в себя " ("The Little Engine That Could") — прим. пер.]* Как автомагически создавать крохотные docker-образы для своих нужд Необычная одержимость Последние пару месяцев я был одержим навязчивой идеей...

Что необходимо знать о GDPR в 2019 Сегодня поговорим о “великом и ужасном” GDPR (General Data Protection Regulation) или Общем регламенте по защите персональных данных. Не смотря на то, что закон был принят еще в мае 2018 года, многие компании до сих пор не выполняют всех его требований. Мы встретились с н...

Управление M5Stack через BLE Интро Уже сравнительно давно микроконтроллер ESP32 стал неким стандартом для множества DIY проектов. И действительно, возможность работы с Wi-Fi, Bluetooth, встроенная энергонезависимая память, а так же большое число выводов позволяют сделать массу интересных проектов. В эт...

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

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

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

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

Блокировки в PostgreSQL: 3. Блокировки других объектов Мы уже поговорили о некоторых блокировках на уровне объектов (в частности — о блокировках отношений), а также о блокировках на уровне строк, их связи с блокировками объектов и об очереди ожидания, не всегда честной. Сегодня у нас сборная солянка. Начнем с взаимоблокировок (...

СКУД моего ЖК — безопасность на двух болтах Спешу предупредить читателей: Данная статья написана только для ознакомления, и ни в коем случае не призывает к любым противоправным действием. Автор не несет ответственности за любые неправомерные действия совершенные людьми с использованием информации из данной статьи. Пр...

Как из бумажной безопасности сделать практическую, или зачем нам соблюдение 152-ФЗ и PCI DSS в одном облаке Наша IaaS-платформа Cloud-152 одновременно сертифицирована по требованиям PCI DSS и имеет аттестат соответствия 152-ФЗ по УЗ-2 (без актуальных угроз 1-го и 2-го типа). Эта же платформа входит еще и в область действия нашей системы управления информационной безопасностью (СУИ...

Редактор в UX: тру стори, риал лайф Привет, это Наташа, лид-редактор в UX Яндекс.Денег. Я пишу этот текст, потому что больше не могу молчать о своей работе. Раньше про нас думали, что мы копирайтеры. Пишем получше, чем менеджеры. Умеем проверять грамотность. Редактируем, чтобы стало понятнее. Убираем лишние ...

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

Завершающий курс специализации по Python от Mail.ru Group Python — простой и гибкий язык, применяемый во многих областях современной разработки. На нём создают веб-приложения, пишут игры, анализируют данные и выполняют многие другие задачи. Mail.ru Group запустила на платформе Coursera специализацию «Программирование на Python», ...

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

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

Moscow Node.js Meetup 10: Архитектура Node.js-приложений, Hot Reload в Node.js и секретный доклад Друзья, это становится доброй традицией. Мы не встречались почти 11 месяцев – прошлая наша встреча была накануне Нового года и у самого Кремля. А в этом году Node.js исполнилось 10 лет, а это значит время провести юбилейный 10-й митап Msocow Node.js Meetup! В то время, как ...

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

Почему важно время от времени обновлять процессор? На примере Intel Core i5-8500 Сегодня, наверное, чаще всего меняют железо те, кто активно играет на своём ПК в игры. Эти люди хорошо представляют, зачем им новая видеокарта или более высокочастотная оперативная память или игровая материнская плата, и тем более свежий процессор. Читать полную статью ...

Запуск спутников OneWeb отложили из-за проблем с «Союзом» В середине января этого года «Роскосмос» анонсировал запуск спутников компании OneWeb при помощи ракет-носителей «Союз». Ранее партнеры заключили договор на сумму около миллиарда рублей — основная масса спутников OneWeb должна была отправиться на орбиту при помощи российских...

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

[Перевод] Как Yahoo убила Flickr и потеряла интернет Веб-стартапы состоят из двух компонентов: людей и кода. Люди делают код, а код делает людей богатыми. Код – он как поэма: ему приходится удовлетворять определённым структурным требованиям, однако на основе этой структуры может появиться искусство. Однако код – это искусств...

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

Российские студенты стали победителями на международном чемпионате по подводной робототехнике За победу боролись 35 команд из Индии, Индонезии, Японии, Шри-Ланки, Гонконга и Макао, Таиланда, Тайваня, Малайзии, Кении, Турции и России. Лишь 16 из них удалось пройти отборочный квалификационный этап и выступить в финале соревнований.Как сообщают в пресс-службе ДВФУ, в ко...

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

[Из песочницы] Назад в будущее с WebAssembly Привет, Хабр! Представляю вашему вниманию перевод статьи «Back To The Future With WebAssembly» автора Attila Vágó. Данный пост является переводом статьи, в которой рассказывается о свойствах WebAssemly и Emscripten. Оригинал статьи на английском языке. Автор статьи Аттила ...

Стратегическое партнерство: почему ServiceNow объединяются с крупным облачным провайдером Microsoft заключили партнерское соглашение с компанией ServiceNow, внедрением решений которой занимаемся мы в «ИТ Гильдии». Поговорим о возможных целях сделки. Читать дальше →

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

Optlib. Реализация генетического алгоритма оптимизации на Rust В этой статье описывается библиотека optlib, предназначенная для решения задач глобальной оптимизации на языке Rust. На момент написания этой статьи в этой библиотеке реализован генетический алгоритм нахождения глобального минимума функции. Библиотека optlib не привязана к к...

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

Обзор Tap Tycoon. Кликай и зарабатывай Довольно часто разработчики мобильных игр делают свои новинки в жанре кликеров, ведь это самый доступный для студии жанр. Вам не нужно думать над сложной механикой, над красивым дизайном уровней, над какими-то сложными элементами геймплея. Просто делаете более-менее понятный...

Deno: время Node.JS уходит? Прошло примерно 18 месяцев с внутреннего релиза Deno, вышел preview release, появилось несколько статей на Хабре, и Райан ездит по конференциям и рассказывает о нём. Однако я нигде так и не видел сколько-нибудь вдумчивого разбора этого проекта — почему-то все ограничиваются...

Блеск и нищета переводной литературы — Лучше вообще не читать, чем такое. Часто ли вы читаете техническую литературу? Именно литературу, а не мануалы на хабре или багрепорты на гитхабе? А когда читаете, на каком языке предпочитаете это делать (если есть возможность выбирать, конечно)? Какую версию предпочтёт...

[Перевод] Кодогенерация в Dart. Часть 2. Аннотации, source_gen и build_runner В первой части мы выяснили зачем нужна кодогенерация и перечислили необходимые инструменты для кодогенерации в Dart. Во второй части мы узнаем как создавать и использовать аннотации в Dart, а также как использовать source_gen и build_runner, чтобы для запуска кодогенерации. ...

Основы шаблонов С++: шаблоны функций Дисклаймер: статья была начата еще в феврале, но, по зависящим от меня причинам, закончена не была. Тема очень обширна, поэтому публикуется в урезаном виде. Что не поместилось, будет рассмотренно позже. Невозможно разбираться в современном С++, не зная, что такое шаблоны п...

Большое интервью с Клиффом Кликом — отцом JIT-компиляции в Java Клифф Клик — CTO компании Cratus (IoT сенсоры для улучшения процессов), основатель и сооснователь нескольких стартапов (включая Rocket Realtime School, Neurensic и H2O.ai) с несколькими успешными экзитами. Клифф написал свой первый компилятор в 15 лет (Pascal для TRS Z-80)! ...

Компания Михаила Гуцериева «Русский Уголь» добыла 65 миллионов тонн топлива Как пишет «МК», в Хакасии добыта 65-миллионная тонна каменного угля на разрезе Степной. Он входит в федеральный холдинг «Русский уголь» (САФМАР Михаила Гуцериева), компания владеет активами в Красноярском крае, Амурской области и Республике Хакасия (шесть угольных разрезов, ...

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

Учебный «Цех»: все что нужно знать взрослым про образование Онлайн-курсы не заменят полностью университеты. В этом уверена руководитель нового медиа об образовании для взрослых «Цех», которое будет запущено в сентябре 2019 года. Еще совсем недавно в России не было ресурсов, которые бы говорили с читателями на эту тему простым и поня...

[Перевод] Практический пример создания собственного View-компонента Мне нравится Dribbble. Там есть много крутых и вдохновляющих дизайн-проектов. Но если вы разработчик, то часто чувство прекрасного быстро сменяется на отчаяние, когда вы начинаете думать о том, как реализовать этот крутой дизайн. В этой статье я покажу вам пример такого диз...

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

Цены российского черного рынка на пробив персональных данных (плюс ответ на ответ Тинькофф Банка) В конце прошлого года я делал обзор цен черного рынка на российские персональные данные, и вот пришло время его обновить и дополнить. Заодно посмотрим изменение цен и предложений на этом «рынке», а также реакцию «Тинькофф Банка» на вот это вот все. Поехали... Читать дальше...

Робота научили играть в дженгу. Почему это важно Робототехника не стоит на месте — чтобы в этом убедиться, достаточно посмотреть хотя бы один из роликов Boston Dynamics. Но роботов учат не только ходить, поднимать тяжести и драться: ученые из Массачусетского технологического института, например, создали робота, кото...

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

[Перевод] Стартап, который использовал ИИ, чтобы разработать лекарство за 21 день И снова здравствуйте. В преддверии запуска курса «Нейронные сети на Python», хотим поделиться с вами переводом интересной статьи о вкладе ИИ в развитие медицины. Компания Insilico Medicine из Гонконга опубликовала исследование, показывающее, что их система глубокого обуче...

Сложности применения технологий OCR в DLP-системах, или Как мы OCR готовим Решение задачи распознавания изображений (OCR) сопряжено с различными сложностями. То картинку не получается распознать из-за нестандартной цветовой схемы или из-за искажений. То заказчик хочет распознавать все изображения без каких-либо ограничений, а это далеко не всегда в...

[Перевод] Мысли о современном C++ и игровой разработке Новый год для игровых разработчиков начался с волны критики, обрушившейся в адрес комитета по стандартизации C++ после публикации Араса Пранкевичуса «Жалобы по поводу современного C++». Возник серьезный вопрос: действительно ли комитет стандартов потерял связь с реальностью,...

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

Интерактивная игра на XSLT Когда-то давным-давно придумали люди язык XML и увидели, что это хорошо. И стали использовать его везде, где можно, и даже там, где не следует. Форматы хранения и передачи данных, конфиги, веб-сервисы, базы данных… Казалось, оглянись вокруг — XML, XML повсюду. Время прошло...

«Алиса, пойдём во фронтенд!» Голосовые помощники — не далёкое будущее, а реальная действительность. Alexa, Siri, Google Now, Алиса встроены в «умные» колонки, часы и телефоны. Они постепенно меняют наш способ взаимодействия с приложениями и устройствами. Через ассистента можно узнать прогноз погоды, куп...

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

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

Подкаст «Кто бы говорил», выпуск 18: привычки, которые сделают вас миллиардером Алексей, Ира и Родион обсуждают, зачем взрослые люди отправляют эмодзи, почему читают фантастику и слушаются родителей.

Зачем нужен собственный удостоверяющий центр Примеры 1) промежуточного УЦ в открытой иерархии доверия и 2) частной иерархии, которая изолирована от открытой иерархии, со своим собственным корневым УЦ Инфраструктура открытых ключей (PKI) традиционно имеет иерархическую структуру. В ней удостоверяющие центры (УЦ) связа...

Практический опыт обновления MySQL 5.7 до версии 8.0 Недавно мы обновили свои сервера с MySQL 5.7 на 8.0. Оставим за рамками этой статьи зачем и какие новые плюшки появились в MySQL 8.0, а вместо этого расскажем о том, с какими сложностями мы столкнулись в процессе обновления. Читать дальше →

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

Обектно ориентированное програмирование в графических языках Объектно-ориентированное программирование (ООП) – концепция, которая призвана облегчить разработку сложных систем, за счет введения новых понятий, более приближенных к реальному миру, чем функциональные и процедурные языки программирования. Как пишет википедия, «Обычный чело...

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

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

[Перевод] Python 3.8: Что нового и как этим пользоваться? Следующий перевод подготовлен специально для «питонистов», которым интересно наверняка интересно почитать о новых функциях Python 3.8. В преддверии запуска нового потока по курсу «Разработчик Python» мы не смогли пройти мимо этой темы. В этой статье мы поговорим про новые ф...

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

[Перевод] PowerShell в роли инструмента для пентеста: скрипты и примеры от Varonis Хакеры любят использовать PowerShell для запуска «fileless malware» — бестелесных вредоносных программ, которые не являются традиционными бинарными файлами с компилированным вредоносным кодом, и по этой причине подчас не могут быть обнаружены антивирусными решениями. Powe...

PVS-Studio для Java В седьмой версии статического анализатора PVS-Studio мы добавили поддержку языка Java. Пришло время немного рассказать, как мы начинали делать поддержку языка Java, что у нас получилось и какие дальнейшие планы. И, конечно, в статье будут приведены первые испытания анализат...

Как поговорить с микроконтроллером из JS Зачем нужен микроконтроллер? Например, чтобы устроить дома пивоварню. Если своего пивного заводика мало, то можно и что-то масштабнее: построить квест-комнату, оформить презентацию, интерактивный фонтан, который рисует картину каплями, или выставочный стенд для большой компа...

Прототипирование в VR: 5 способов проверить гипотезу В преддверии запуска нового курса «Проектирование VR-интерфейсов» мы расспросили авторов курса — специалистов компании Modum Lab Дениса Тамбовцева и Игоря Зюзина о важности прототипирования при создании VR-проектов. Эксперты рассказали, какие VR-технологии применяют в b2c и ...

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

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

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

Как мы делаем автоматизацию большой legacy сети Привет. У нас 15 260+ объектов и 38 000 сетевых устройств, которые нужно настраивать, обновлять и проверять их работоспособность. Обслуживать такой парк оборудования довольно сложно и требует много времени, сил и людей. Поэтому нам потребовалось автоматизировать работу с сет...

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

Ремонт металлических дверей своими руками: преимущества и недостатки Каждый из нас мечтает о том, чтобы жильё было надёжно защищено от проникновения в него посторонних лиц. Установка железных входных дверей является отличным способом защитить своё жильё. В некоторых ситуациях потребуется осуществить ремонт металлических дверей. Как же поступ...

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

Мотивация. Сделай сам Есть такая полезная задача — разработка систем мотивации. Я долго наблюдал за несчастными HR, которые создавали системы KPI, материальную и нематериальную мотивацию, силились поднять корпоративный дух. Мои наблюдения всегда показывали одно и то же — HR в этой работе чего-то ...

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

[Перевод] Собственный сервер Commento с Docker Compose Примечание: это перевод моего поста (англ.), описывающий реализацию сервера комментариев, используемую на том же сайте, где находится оригинал. TL;DR-версия: я разработал конфигурацию Commento-сервера, которая легко и просто развёртывается в полуавтоматическом режиме. Скопир...

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

[Из песочницы] Умный принтер. Улучшая Octoprint Разрабатывая открытый проект 4-х экструдерного принтера Z-Bolt, мы столкнулись с проблемой выбора экрана для управления принтером. Из имеющихся экранов лишь решение от Duet Wifi умеет управлять более чем 2-мя экструдерами. Решение, мягко говоря, не бюджетное, да и интерфейс ...

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

«Никто не говорит другим, что им нужно делать»: Nicolò Ribaudo о разработке Babel и многом другом Nicolò Ribaudo — один из ключевых разработчиков Babel, приглашённый эксперт TC39 и при этом ещё и студент-математик. Nicolò выступит завтра на HolyJS 2019 Moscow. И в преддверии этого участники программного комитета HolyJS Евгений Кот (bunopus) и Дмитрий Махнёв (DmitryMak...

Зачем мы проводили хакатон для тестировщиков Эта статья будет интересна тем, кто так же как и мы столкнулся с проблемой подбора подходящего специалиста в области тестирования. Как ни странно, но с увеличением количества ИТ-компаний в нашей республике увеличивается только число достойных программистов, но не тестировщи...

Android Camera2 API от чайника, часть 2, пишем видео Продолжаем разбираться с CAMERA2 API Android. В предыдущей статье мы осваивали работу камеры, чтобы делать фоточки, используя новое API. Теперь же займёмся съемкой видео. Вообще изначально, главной моей целью был стрим по сети живого видео с камеры Android при помощи Med...

Множественные эксперименты: теория и практика В современном мире сложно представить развитие продукта без A/B-тестирования. Чтобы успешно запустить продукт или новую функциональность — надо грамотно спроектировать A/B, рассчитать и интерпретировать его результаты. Иногда нам требуется тестирование более чем для двух гру...

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

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

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

Amazon запускает доставку дронами. Как это будет работать Вчера Amazon впервые представила собственный дрон для доставки – на своей первой конференции Re:Mars в Лас-Вегасе. Это на самом деле уникальное устройство, доверху напичканное сенсорами и алгоритмами. К тому же, это дрон-трансформер. Он умеет лететь вертикально, как вертол...

10 причин сделать свой скилл для голосового помощника Количество голосовых приложений для Алисы, Google Ассистента, Маруси и иже с ними стремительно растёт. Кто и зачем разрабатывает навыки, скилы, экшены? Кто-то делает это на заказ, кто-то — в надежде на донат пользователей или премию Алисы. На чём держится энтузиазм остальны...

Ваш идеальный тестировщик Время от времени нам нужно найти тестировщика. Рамки поиска могут быть разными: срочно или нет, несколько или один, с определенными скиллами или просто адекватный джуниор. Вопросы сводятся к одному — как понять, что перед нами нужный человек? Здесь поможет очерк из психолог...

Делаем ретро-игру из 80-х или как готовить макеты для лазерной резки Хабр, привет! Так получилось, что меня давно просили сделать старую настольную игру из СССР — «Сражение». Вот пришло время выполнять обещание, заодно решила показать как создавать макеты для лазерной резки и что получается в итоге. Большой сложности в этом нет, но есть неко...

[Перевод] HTML — это и есть веб Что нынче с HTML во фронтенде? В последнее время я разговаривал со многими разработчиками. Похоже, что некоторые даже не разбираются в HTML. В смысле, кое-что они понимают. Они понимают, что такое div и что такое span, и когда всё выглядит хорошо и работает по щелчку, им это...

[Перевод] C# является языком низкого уровня? Я большой поклонник всего, что делает Фабьен Санглард, мне нравится его блог, и я прочитал обе его книги от корки до корки (о них рассказывали в недавнем подкасте Hansleminutes). Недавно Фабьен написал отличный пост, где расшифровал крошечный рейтрейсер, деобфусцировав код ...

6 февраля, Москва, DI Telegraph — Большая QIWI Кухня о дизайне продуктов В среду, 6 февраля, мы собираем всех желающих, дабы поговорить о дизайне продуктов. В программе — выступления спикеров из Сбербанка, CreativePeople, Useful и Looi. Кроме этого, мы проведем воркшоп, на котором научимся определять метрики для дизайн-задач и вообще устанавл...

Сидорин: KnowledgeConf — это про то, как сохранить знания при средней продолжительности работы на одном месте в 2-3 года В современном мире продукты выпускаются все быстрее, а люди задерживаются в компании в среднем всего на пару лет. О том, как эти факторы влияют на участие сотрудников в процессе обмена знаниями, мы поговорили с одним из ключевых спикеров KnowledgeConf Алексеем Сидориным, рук...

CRM ++ Есть такое мнение, что всё многофункциональное — слабое. И правда, это утверждение выглядит логично: чем больше взаимосвязанных и взаимозависимых узлов, тем выше вероятность того, что с выходом из строя одного из них потеряет свои достоинства и всё устройство. Мы все неоднок...

[Перевод] Заложники COBOL и математика. Часть 2 Сегодня публикуем вторую часть перевода материала о математике, о COBOL, и о том, почему этот язык всё ещё жив. → Первая часть Читать дальше →

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

[Из песочницы] Построение сервис-ориентированной архитектуры на Rails + Kafka Привет, Хабр! Представляю вашему вниманию пост, который является текстовой адаптацией выступления Stella Cotton на RailsConf 2018 и переводом статьи «Building a Service-oriented Architecture with Rails and Kafka» автора Stella Cotton. В последнее время отчетливо виден перех...

1С в Elastic Compute Service Alibaba Cloud. Сокровища Алибабы Если ты умеешь что-то делать хорошо, всегда найдется азиат, который сможет лучше (один из самых популярных интернет мемов). Aliexpress уже стал именем нарицательным в всем мире. Но Alibaba Group это не только интернет-молл, но и сервис облачных вычислений №1 в Китае. Интере...

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

[Перевод] Пишем HTTP/1.1 & HTTP/2 клиент и сервер на Golang Golang — отличный язык программирования с широким спектром возможностей. В этой статье показано, как на Go можно написать клиент и сервер для протоколов HTTP/1.1 и HTTP/2. Читать дальше →

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

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

[recovery mode] Реверс-инжиниринг протокола обмена в оборудовании EOS Сразу скажу, заголовок, возможно, несколько громковат. Мне реально потребовалось выдернуть из протокола всего одну команду для управления диммером. О том, как это было сделано и что получилось в итоге, читайте дальше в статье. Читать дальше →

Автоматизация заготовки постеров онлайн-кинотеатра Сегодня поговорим о том, как мы автоматизировали заготовку обложек фильмов/коллекций и другого контента в Okko, а также о том, какие проблемы решает автоматизация в целом и какие перспективы это перед нами открывает. Читать дальше →

Математические основы Auto Layout Многие разработчики считают, что Auto Layout — это тормозная и проблемная штука, и крайне сложно заниматься его отладкой. И хорошо, если этот вывод сделан на основе собственного опыта, а то бывает и просто «я слышал, не буду даже и пытаться с ним подружиться». Но возможно, ...

Виды контекста в JavaScript И снова здраствуйте! Мы уже писали о том, что в конце сентября в OTUS стартует новый поток курса «Fullstack разработчик JavaScript». В преддверии начала занятий продолжаем делиться с вами авторскими статьями, подготовленными специально для студентов курса. Сегодня разберем в...

[Перевод] Делать хорошо, делая плохо: написание «злого» кода с помощью Go, часть 1 Вредные советы для Go-программиста После десятилетий программирования на Java, последние несколько лет я в основном работал на Go. Работать с Go — здорово, прежде всего потому, что за кодом очень легко следовать. Java упростила модель программирования C ++, удалив множеств...

Михаил Ларионов, Circles.is: о карьере в Facebook, предпринимательстве, создании сообществ и продуктовом мышлении Я поговорил с Михаилом Ларионовым, который сделал фантастическую карьеру от разработчика инди-игр в России до руководителя разработки платформы Facebook Messenger в Калифорнии. Теперь Миша делает свои продукты про то, что ему по душе — например, про развитие сообществ. Это ...

Гонки на инвалидных колясках: российский пилот стал призером на чемпионате Cybathlon в Токио 5 мая прошло соревнование, в котором приняли участие ведущие мировые производители и инженерные команды, создающие новейшие технические решения и средства реабилитации для людей с инвалидностью. Российская компания «Катэрвил» стала призером чемпионата. Соревнование пилото...

[Перевод] Как стать хорошим менеджером? 4 способа восполнить пробел в навыках управления Перевод статьи подготовлен специально для студентов курса «Team Lead 2.0». Как стать хорошим менеджером и восполнить пробелы в навыках управления бизнесом? На сегодняшний день многие недооценивают необходимость грамотного менеджмента в бизнесе. Менеджмент – это сложно. Н...

Компания Amazon Web Services поддержала проект Rust Компания Amazon Web Services проспонсирует проект Rust, который занимается развитием одноименного языка программирования. Инженеры смогут бесплатно использовать ресурсы облачной платформы, чтобы поставлять компоненты компилятора, создавать загрузочные контейнеры и автоматизи...

Ivideon Counter 3D: кому, как и зачем считать посетителей Подсчёт посетителей начался, вероятно, с появления первых магазинов. Требовал ответа главный вопрос, возникавший у владельца магазина после старта продаж: сколько из пришедших людей удалось превратить в покупателей? Со временем к этой задаче добавились и другие сложные воп...

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

Программирование в России введут с начальной школы Одно из заданий детского курса программирования на Code.org. Справа — программа на языке Blockly Согласно предложению Министерством просвещения РФ, в курс математики для младших школьников включат основы создания кодов и языков программирования, пишут «Известия». Это преду...

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

[Перевод] Первое знакомство с AssemblyScript Поддержка технологии WebAssembly (Wasm) появилась в браузерах относительно недавно. Но эта технология вполне может серьёзно расширить возможности веба, сделав его платформой, способной поддерживать такие приложения, которые обычно воспринимаются как настольные. Освоение Web...

[Из песочницы] Wolfram Function Repository: открытый доступ к платформе для расширений языка Wolfram Привет, Хабр! Представляю вашему вниманию перевод поста Стивена Вольфрама "The Wolfram Function Repository: Launching an Open Platform for Extending the Wolfram Language". Предпосылки состоятельности языка Wolfram Сегодня мы стоим на пороге великих свершений вмест...

Какими Microsoft видела компьютеры 2019 года в 2009 году В 2009 году компания Microsoft решила поделиться своим видением компьютерного будущего. Она представляла такие элементы, как сотрудничество при помощи больших экранов, голосовые ассистенты, умные мобильные устройства и интернета вещей, мгновенный перевод с языка на язык и пе...

[Из песочницы] Сложности корзины интернет-сервиса Интернет сервисы для бронирования услуг путешественнику становятся все изощреннее. Один из последних трендов — это единая корзина. Смысл корзины (единой / мульти, читатель может добавить определения исходя из своих предпочтений) простой — создать возможность, для путешестве...

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

Зачем мы болеем за спортивное программирование На протяжении восьми лет Naumen активно занимается образовательными программами, в частности, поддерживает олимпиады по спортивному программированию. Сегодня расскажем, как изменилось АСМ-движение и почему оно нам интересно. Отметим сразу, что мы не будем писать про спортив...

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

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

Ряженка не тащит: почему AMD всегда сливает Intel? Несмотря на все усилия красных догнать и перегнать синих по части процессоров, глобальная рыночная ситуация говорит только об одном - потребителей не проведешь и их выбор за Intel.

Резервное копирование windows серверов в AWS Имеем windows сервер в AWS и задача настроить резервное копирование. Можно использовать снапшоты, но тогда возникнет проблема с целостностью данных. Ещё хочется хранить недельные и месячные снапшоты, а lifecycle в снапшотах этого не предлагает. Новый сервисе AWS Backup тоже ...

[Из песочницы] Пишем простую нейронную сеть с использованием математики и Numpy Зачем очередная статья про то, как писать нейронные сети с нуля? Увы, я не смог найти статьи, где были бы описаны теория и код с нуля до полностью работающей модели. Сразу предупреждаю, что тут будет много математики. Я предполагаю, что читатель знаком с основами линейной а...

[Из песочницы] О том, как из C# перешел в Elixir/Phoenix Как-то раз пришлось мне менять работу. До этого я работал только с языками типа Python, C++, C# и ещё парочкой подобных. А теперь пришлось начать работать с функциональным языком. Первые впечатления были «да что за фигня?». Однако у меня получилось достаточно быстро адаптиро...

ThingJS v1.0-alpha Последние два года я разрабатывал собственную IoT платформу и сегодня готов показать ее альфа версию. Вместе с партнером мы создаем и поддерживаем IoT устройства. Мы разобрали не один сарай с граблями в процессе этой деятельности. ThingJS родилась не столько из желания, ско...

ок.tech: QATOK 11 декабря в петербургском офисе Одноклассников состоится ок.tech: QATOK – мероприятие, посвященное обеспечение качества в ИТ проектах и всему, что с этим связанно. Вместе с коллегами из OK, Mail.ru и Qameta Software поговорим про замеры производительности в Android-прилож...

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

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

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

Medium Weekly Digest (12 – 19 Jul 2019) Если мы хотим выстоять против этой разрушительной тенденции правительства по установлению криптографии вне закона, одна из мер, которой мы можем воспользоваться, — это применять криптографию столько, сколько сможем, пока её применение ещё легально. — Ф. Циммерман Дорогие уч...

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

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

Прямой эфир: как обуздать iOS-разработку в больших командах Всем привет! Меня зовут Женя Суворов, я руководитель команды мобильной архитектуры в Авито. 4 апреля на нашем ютуб-канале и в социальных сетях мы проведем прямой эфир и обсудим, как в iOS-разработке удержать качество продукта на высоком уровне даже при сильном масштабировани...

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

Laravel: разбираем основные понятия. Часть третья: «Заключительная» Считанные дни остаются до старта нового курса от OTUS — «Framework Laravel». В преддверии старта курса делимся заключительной частью авторской публикации о основных понятиях в Laravel. Важно: данная серия публикаций не имеет отношения к образовательной программе курса и явля...

Отправка статистики из DataFrame в BigQuery на примере статистики Яндекс Директ В этой статье расскажу о том, как я свел статистику по всему контексту в одном месте с помощью BigQuery и Data Studio У меня появилась необходимость визуализировать данные по всем источникам трафика. Для данной задачи я использую Data Studio. Google Ads туда подтягивается ...

Проверяем исходный код Roslyn Время от времени мы возвращаемся к проектам, которые уже проверяли ранее с помощью PVS-Studio и писали про это статьи. Делать это интересно по двум причинам. Во-первых, чтобы понять, насколько лучше стал наш анализатор. Во-вторых, чтобы отследить, обратили ли авторы проекта...

Символьный калькулятор на C# Понадобилась мне как-то библиотека на c#, которая умеет делать символьные вычисления (время от времени дополняю возможностями одну математическую программу). Всякие исходники в сети найти можно и на разных языках, но вот что-то попроще и попонятнее найти не удавалось. Обрати...

В Долине МГУ может быть создан центр по хранению всех получаемых в РФ научных данных Об этом в ходе заседания попечительского совета МГУ сообщил президент Российской академия наук (РАН) Александр Сергеев, пишет ТАСС .В среду президент России Владимир Путин в преддверии Дня российского студенчества, отмечаемого 25 января, проводит заседание попечительского со...

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

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

«Почему надо фейлиться быстро»: Стив Коттон из Bungie о креативном процессе в компании Сегодня стало известно о разделении Activision и Bungie — а у нас на руках как раз оказался материал с подборкой принципов креативного директора Bungie Стивена Коттона в разработке, отложенный до лучших времен, а перевести решили как раз сейчас. За этот материал отдельное сп...

RIGF 2019: эволюция интернета, новые технологии и роль женщин в IT 8 апреля 2019 года в Москве откроется 10-й юбилейный российский форум по управлению интернетом (RIGF 2019). В программе форума – выступления российских и мировых интернет-гуру, обсуждение самых актуальных вопросов развития интернета, встречи с государственными деятелями, п...

Книга «Swift. Основы разработки приложений под iOS, iPadOS и macOS. 5-е изд. дополненное и переработанное» Привет, Хаброжители! Язык Swift молод, он растет, развивается и изменяется, хотя основные подходы к программированию и разработке уже сформировались. В новом, пятом издании книги была полностью переработана первая часть книги, что делает знакомство с языком Swift более комф...

[Из песочницы] Хэш таблицы в Go. Детали реализации Порассуждаем об имплементации map в языке без дженериков, рассмотрим что такое хэш таблица, как она устроена в Go, какие есть плюсы и минусы данной реализации и на что стоит обратить внимание при использовании данной структуры. Детали под катом. Читать дальше →

Сотовый оператор «МегаФон» принудительно подключил абонентам платную услугу за 649 рублей в день Увы, но чем дальше в будущее, тем более жадными становятся сотовые операторы в России, которые делают все возможное для своего собственного обогащения. В последнее время неприятно удивляет телекоммуникационная компания «МегаФон», которая всеми доступными средствами и Сообще...

Linux вместо Windows: Huawei переводит свои ноутбуки на альтернативную ОС Санкции США в отношении Huawei делают невозможным применение китайской компанией американских технологий, как аппаратных, так и программных. Пока фирма еще использует в своих ноутбуках ОС Windows, но уже заявлен переход на собственную HarmonyOS в ближайшие несколько лет...

Екатеринбург, 19 ноября — Atlassian User Group MeetUp Привет! В этот раз митап по Atlassian будет немного расширенным — кроме наших коллег из Альфа-Банка на нём выступят ещё и эксперты из Toolstrek, ребята с этого года стали платиновым партнёром Atlassian в России. Участие бесплатное, главное — зарегистрироваться заранее. В ...

Medium Weekly Digest #4 (2 – 9 Aug 2019) Цензура рассматривает мир как семантическую систему, в которой информация — единственная реальность, и то, о чём не написано, того и не существует. — Михаил Геллер Данный дайджест призван повысить интерес Сообщества к проблеме приватности, которая в свете последних событий ...

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

[Из песочницы] Arduino и Processing. Как управлять микроконтроллером по COM порту. Двустороннее общение Всем привет! В интернете бытует заблуждение, что для управления компьютером при помощи самодельной электроники нужны только специальные платы, которые могут распознаваться как USB HID устройства. А касаемо Arduino все только и говорят о Arduino Leanardo. Такие популярные биб...

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

Блокировки в PostgreSQL: 4. Блокировки в памяти Напомню, что мы уже поговорили о блокировках отношений, о блокировках на уровне строк, о блокировках других объектов (включая предикатные), и о взаимосвязи разных типов блокировок. Сегодня я заканчиваю этот цикл статьей про блокировки в оперативной памяти. Мы поговорим о сп...

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

Core UX Features & MVP при создании продукта Я уже 12 лет создаю различные веб-сервисы и мобильные приложения. И миллион раз я советовал людям делать MVP. Но я чувствую, что нужно быть очень осторожным с этим советом, нужно допускать множество оговорок, когда даешь этот совет и объяснять, что же такое "M" и "V" в этой ...

Habr Weekly #10 / Суперсервисы и электронный паспорт, смартфоны и россияне, «шпионские гаджеты», жизнь без спутников В юбилейном выпуске подкаста поговорили о том, что государство становится ближе к гражданам, и о том, что нам стало трудно представить свою жизнь без технологий. Читать дальше →

Intersoft Lab: 20 лет на волне эффективности Компании Intersoft Lab, лидеру банковского сегмента российского рынка хранилищ данных и систем управления корпоративной эффективностью (Corporate Performance Management/СРМ), исполняется 20 лет. В свой день рожденья Intersoft Lab анализирует, как развивалась к...

Власти США снова нервничают из-за Facebook Представителю Facebook предстоит выступить в американском Сенате с рассказом о том, зачем соцсети потребовалась собственная криптовалюта

Как автоматизировать управление ИТ-инфраструктурой — обсуждаем три тренда Сегодня мы решили поговорить об инструментах, которые используют ИТ-компании и IaaS-провайдеры для автоматизации работы с сетями и инженерными системами. Читать дальше →

Математика для Data Science. Новый курс от OTUS Всем привет, сегодня хотим поговорить о запуске нового курса «Математика для Data Science», а точнее целой серии курсов, подробнее об этом в нашей публикации. Не все, учась в школе, понимают, как в жизни им пригодится математика. Самый распространенный ответ – считать ден...

Блокчейн здесь только для пиара и хайпа? Недавно компания «Ренессанс Страхование» опубликовала статью, в которой рассказала о программном продукте для страхования грузоперевозок. Этот продукт мы разработали на основе платформы Hyperledger Fabric. Вокруг статьи развернулись дискуссии между криптоскептиками и крипт...

Habr Weekly #15 / О силе хорошей истории (и немного о жареной курочке) Антон Поляков (antonpolyakov) рассказал о своей поездке на винзавод «Коктебель» и разложил по полкам его историю, которая местами основана на маркетинговых уловках. А мы по мотивам поста обсудили, почему люди верят передачам про Ленина-гриба, Мавроди в девяностых и 2010-х и...

Зачем хранить данные на орбите Стартап Cloud Constellation получил инвестиции в размере 100 млн долларов на постройку космического облачного хранилища данных — SpaceBelt. Рассказываем, как это будет работать, и разбираемся в плюсах и минусах комических дата-центров. Читать дальше →

[Из песочницы] Разработка многозадачной микроядерной ОС — Планировщик После того, как вы прочитали базовые шаги по написанию Hello World ядра из цикла имеющихся на Хабре статей, самое время приступить к серьезной разработке самых базовых инструментов: аллокатора кучи и планировщика. Честно говоря я долго думал стоит ли начинать писать статьи ...

Как мы строим систему обработки, хранения и анализа данных в СИБУРе В начале 2018 года у нас активно пошел процесс цифровизации производства и процессов в компании. В секторе нефтехимии это не просто модный тренд, а новый эволюционный шаг в сторону повышения эффективности и конкурентоспособности. Учитывая специфику бизнеса, который и без вся...

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

В Индонезии задумались над спасением столицы от затопления Как сообщает Associated Press, проблемы индонезийской столицы стали следствием двух дополняющих друг друга тенденций. Уровень мирового океана в последние годы повышается в результате глобального потепления. Этот процесс идет с нарастающей скоростью и открывает перед нами дов...

[Перевод] Дорогой Agile, мне надоело притворяться «Agile мёртв». Люди всё время так говорят. Но обязательно добавляют: «Мы просто шутим». Они типа имели в виду, что это у тебя такие неправильные и глупые практики, что это для тебя Agile мёртв. Но «настоящий» Agile не мёртв. Просто все его делают неправильно. Так что я пон...

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

Опыт перевода большого проекта с Flow на TypeScript JavaScript – это один из языков с динамической типизацией. Такие языки удобны для быстрой разработки приложений, но когда несколько команд берутся за разработку одного большого проекта, лучше с самого начала выбрать один из инструментов для проверки типов. Можно начать р...

[Перевод] Современная игра для NES, написанная на Lisp-подобном языке What Remains — это повествовательная игра-адвенчура для 8-битной видеоигровой консоли NES, выпущенная в марте 2019 года как бесплатный ROM, запускаемый в эмуляторе. Она создавалась небольшой командой Iodine Dynamics на протяжении двух лет с перерывами. В настоящий момент игр...

Принцип Брета Виктора: «Творцам нужна мгновенная связь с тем, что они создают» Это одно из лучших выступлений, которое я встречал. Хоть про эту презентацию уже писали на Хабре и переводили 6 лет назад, я решил её красиво оформить и ещё раз обратить на неё внимание. Она того стоит. Брет Виктор: Я просто хочу рассказать вам о том, как прожить свою жиз...

Почему программист — не самая перспективная профессия Юноше, обдумывающему житье, Решающему — делать жизнь с кого, Cкажу, не задумываясь — делай ее C товарища… Склифосовского ! Привет, Хабр! Следуя завету древних “хочешь разобраться в вопросе — напиши об этом статью”, я решил разобраться в вопросе — а какие собственно спец...

Нехватка процессоров Intel: теперь и для хромбуков О затянувшихся глобальных сложностях с поставками ЦП Intel в востребованных рынком объёмах CRN/RE писал совсем недавно. Боб Суон (Bob Swan), нынешний …

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

Перевод и интерпретация рекламы с английского языка на русский Реклама — двигатель торговли. И ее значение за последние 10 лет выросло просто астрономически. По сути никакой товар или услуга не может рассчитывать на нормальные продажи, если его активно не рекламируют. По данным агентства Dentsu Aegis Network, в 2019 году глобальный рын...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 32. Восстановление паролей, XMODEM/TFTPDNLD и активация лицензий Cisco Сегодня мы поговорим о восстановлении паролей роутеров и свитчей, обновлении, переустановке и восстановлении IOS и о системе лицензирования Cisco для операционной системы IOSv15. Это очень важные темы, касающиеся управления сетевыми устройствами. Как можно восстановить п...

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

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

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

Введение в программирование: простой 3Д шутер с нуля за выходные, часть 2 Продолжаем разговор про 3Д шутер за выходные. Если что, то напоминаю, что это вторая половина: Часть первая: отрисовка стен Часть вторая: населяем наш мир + оконный интерфейс Как я и говорил, я всеми силами поддерживаю желание в студентах делать что-то своими руками. В ча...

[Из песочницы] Почему при изучении одного языка не стоит оглядываться на другие Предположим, вас заинтересовало это странное слово. Куда вы обратитесь: в переводчик или в толковый словарь? Думаю, второй вариант предпочтительнее. Читать дальше →

Про отзывы по моим услугам Про меня пишут очень много отрицательных отзывов. При этом 80% этих отзывов я даже не знаю кто пишет. Я не  видел в глаза этих людей. Много отрицательных отзывов пишут, те кто просто меня ненавидит.   Но сегодня я приведу всего 2 конфликтных ситуации и вы их оцените. &n...

YIMP — Панель управления для Yii 2 на Bootstrap 4 Уверен, что у многих разработчиков, предпочитающих фреймворки готовым CMS, есть в запасе решение на Bootstrap или его аналогах, которое используется в для создания интерфейсов админок и прочих бэк-офисов. И у меня такое есть. Успешно работает много лет, но безнадежно устарел...

C++ против C# Всем известно, что нет ничего глупее споров «какой язык лучше». Например, лучше для чего? Разные языки успешны в разных нишах — и бессмысленно делать категоричные выводы, не учитывая это. Но что получится, если обратиться к опытным специалистам, которые сами всё это поним...

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

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

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

Инвентаризация от И до Я. Считаем ИТ-активы На этом скриншоте результат работы Quest KACE относительно компьютера бухгалтера одной из российских компаний. Выяснилось, что часть ПО установлена, но не используется. Здесь приведены цены, по которым это ПО закупалось. В вашем случае цена на ПО может отличаться, здесь ва...

Facebook назвал причину глобального сбоя в работе соцсети, WhatsApp и Instagram Вчера в работе Facebook произошёл глобальный сбой, который привёл к проблемам с загрузкой и отправкой фото и видео. Он также затронул пользователей WhatsApp и Instagram. Facebook сообщил о сбое в работе своих сервисов в 19:18 по Москве: Сегодня, около 3:00, проблема была уст...

Xiaomi Mi Band 5 – новый лучший в мире спортивный браслет, и вот почему Разного рода носимые гаджеты становятся все более интересными во всех отношениях, а связано это в первую очередь с развитием технологий. Такие позволяют делать подобного рода гаджеты все более востребованными во всех отношениях, что, в свою Сообщение Xiaomi Mi Band 5 – новы...

Swift under the hood: Generic implementation Generic code enables you to write flexible, reusable functions and types that can work with any type, subject to requirements that you define. You can write code that avoids duplication and expresses its intent in a clear, abstracted manner. — Swift docsКаждый, кто писал на ...

Зачем Senior разработчику учить студентов У нас в Veeam есть образовательный проект с лаконичным названием Veeam Academy. Посвящён он практике разработки на С#. Если не вдаваться в детали, то суть его такова: мы берём студентов-старшекурсников и за три месяца приводим их сугубо теоретические институтские знания в со...

[Из песочницы] Процессоры и маркетинг в компьютерных технологиях Проблема закона Мура. Закат эры микропроцессоров когда нет альтернатив. Журнал Electronics в 1965 году опубликовал широко известную сейчас статью об объединении компонентов интегральных систем, автором которой был Гордон Мур, в будущем основавший корпорацию Intel. В свое вр...

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

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

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

Трансформация Docker: продажа Docker Enterprise в Mirantis и новый CEO Вчера с компанией Docker Inc, стоящей за популярнейшим одноимённым решением для контейнеров, произошла череда преобразований. Можно смело сказать, что их уже определённое время ждали. Ведь с массовым распространением Docker, развитием других технологий для контейнеризации, а...

Получение статистики по всем клиентам из API Яндекс Директ в разрезе дней с помощью Python В работе часто использую короткую статистику в разрезе дней чтобы отслеживать отклонения трафика. Более подробно о написании запросов написал в статье « Получение рекламных кампаний Яндекс Директ с помощью API в DataFrame (Python)». В данной статье я в большей степени рас...

Мелкая питонячая радость #1: loguru Сегодня мы обсудим, зачем кому-то понадобилось писать замену стандартному питонячему логеру logging и как этой штукой пользоваться. Читать дальше →

Почему в США расследуют работу крупных IT-компаний Регуляторы ищут нарушения антимонопольного законодательства. Выясняем, какие у этой ситуации есть предпосылки, и какое мнение формируется в сообществе в ответ на происходящее. Читать дальше →

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