Социальные сети Рунета
Вторник, 22 сентября 2020

Решение нескольких задач от Amazon на примере JavaScript Доброго времени суток. Представляю вашему вниманию перевод статьи «Amazon Coding Interview Questions» автора Trung Anh Dang. В этой статье автор приводит несколько (три, если быть точнее) задач от Amazon (как он утверждает) и свои варианты решений. После ознакомления с ...

[Перевод] Руководство по Deno: примеры работы со средой выполнения TypeScript Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «The Deno Handbook: A TypeScript Runtime Tutorial with Code Examples» автора Flavio Copes. В этой статье мы научимся работать с Deno. Мы сравним его с Node.js и создадим с его помощью простой RES...

[Из песочницы] Изучаем мультикаст операторы RxJS Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding RxJS Multicast Operators» автора Netanel Basal. Широковещательные или мультикаст операторы нередко кажутся самой сложной темой при изучении RxJS. В этой статье я попробую все доступно объяснить. Мы рас...

[Перевод] 70 вопросов по JavaScript для подготовки к собеседованию Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Mark A «70 JavaScript Interview Questions». Надеюсь, эта статья будет полезна как начинающим разработчикам, так и бывалым (я хотел сказать, опытным). Первым для изучения, вторым для повторения. Лич...

[Перевод] Руководство по Express.js. Часть 2 Доброго времени суток, друзья! Представляю вашему вниманию перевод второй части Руководства по Express — веб-феймворку для Node.js автора Flavio Copes. Предполагается, что вы знакомы с Node.js. Если нет, то прошу сюда. Без дальнейших предисловий. Читать дальше →

[Перевод] Политика общего происхождения и CORS: визуальное руководство Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «CS Visualized: CORS» автора Lydia Hallie. Каждому разработчику приходилось сталкиваться с ошибкой Access to fetched has been blocked by CORS policy. Существует несколько способов быстрого решени...

14 самых популярных Node.js-библиотек в 2020 году Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «14 Most Useful NodeJS Libraries in 2020». В данной статье автор делится своими находками среди многочисленных пакетов Nodejs. Express Быстрый, гибкий, минималистичный, легкий в изучении фреймворк...

Что такое Deno и заменит ли он Node.js? Доброго времени суток. Представляю вашему вниманию перевод статьи «Deno vs. Node.js — Here are the most Important Differences» автора Louis Petrik. Является ли Deno новым Node.js? Или всего лишь хорошей альтернативой? В этой статье я постараюсь ответить на данные вопросы...

[Из песочницы] 10 лучших инструментов для автоматизации тестирования ПО Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Automated Software Testing Tools» автора Pratik Satasiya. Боб Иган, директор по исследованиям Sepharim Research, говорил о мобильной безопасности. Он выступил с заявлением на Enterprise Mobility Trends 2016: «...

[Перевод] Что JavaScript-разработчику следует знать о Curl Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «What JavaScript Developers Should Know About Curl» автора Valery Karpov. Curl — это популярный инструмент командной строки, часто используемый для отправки HTTP-запросов. Curl поддерживает большое...

Визуализация промисов и Async/Await Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «JavaScript Visualized: Promises & Async/Await» автора Lydia Hallie. Приходилось ли вам сталкиваться с JavaScript кодом, который… работает не так, как ожидается? Когда функции выполняются в про...

Понимание (всех) «модульных» форматов и инструментов JavaScript Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «Understanding (all) JavaScript module formats and tools» автора Dixin. При создании приложения часто возникает желание разделить код на части, логические или функциональные блоки (модули). Однако ...

[Перевод] Опциональная цепочка, объединение с null, и как они меняют наш подход к написанию кода Автор фото — Miguel Á. Padriñán. Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Sam Sedighian «Optional Chaining, Null Coalescing and How They Will Change the Way You Write Code». Опциональная цепочка, объединение с null, и как они меняют подхо...

Задачи по JavaScript от Microsoft Доброго времени суток, друзья! Представляю вашему вниманию три задания по JS, предложенные участникам Microsoft’s Online Assessment 2019. Microsoft’s Online Assessment — предварительный отбор кандидатов в разработчики. Тех, кто прошел предварительный отбор, приглашают на...

[Перевод] Что такое «this» и с чем его едят Автор фото — Sebastian Herrmann. Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Daniel James «What is 'this'? Why is that?». Что такое «this» и с чем его едят Когда я начинал изучать JavaScript, концепция this показалась мне крайне запутанной. ...

[Перевод] Рецепты по приготовлению оффлайн-приложений Доброго времени суток, друзья! Представляю вашему вниманию перевод замечательной статьи Джейка Арчибальда «Offline Cookbook», посвященной различным вариантам использования сервис-воркера (ServiceWorker API, далее по тексту — просто воркер) и интерфейса кэширования (Cache ...

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

[Перевод] Шпаргалка по регулярке Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «Regex Cheat Sheet» автора Emma Bostian. Регулярные выражения или «regex» используются для поиска совпадений в строке. Ищем совпадение по шаблону Используем метод .test() const testString = 'My t...

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

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

[Перевод] Работаем с двухмерной физикой в JavaScript Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Martin Heinz «Implementing 2D Physics in JavaScript». Давайте немного развлечемся, создавая двухмерные симуляции и визуализации в JS. Создание реалистичной анимации физических процессов может казать...

[Перевод] Forge of Empires из AS3 в Haxe. Постмортем В комментариях к переводу доклада с HaxeUp Sessions 2020 Hamburg — Зимний отчет о состоянии Haxe — был задан вопрос о том, зачем нужен Haxe. На него, конечно же, ответили там же, в комментариях. Предлагаемый вашему вниманию перевод еще одного доклада с прошедшего HaxeUp долж...

Продвинутая система авторизации действий с ресурсами в Laravel. Часть 3. Чтение/запись атрибутов, собственные модели Введение Здравствуйте, дорогие Хабровчане. Сегодня я представляю вашему вниманию заключающую часть цикла статей о продвинутой авторизации действий с ресурсами в Laravel. Чтобы лучше понимать о чем пойдет речь в этой статье — необходимо прочесть первую и вторую части. На э...

[Перевод] Руководство Google по стилю в C++. Часть 1 Часть 1. Вступление … Часть 8. Именование Часть 9. Комментарии … Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на...

[Из песочницы] Как разработать дизайн и код персонального веб-сайта Привет, Хабр! представляю вашему вниманию перевод статьи «How to Design and Code a Personal Website» автора Ryan Smith. Многие разработчики считают, что быть хорошим дизайнером — это врожденная способность, что творческий подход — это то, с чем вы сразу родились. На самом д...

[Из песочницы] Пишем простое веб-приложение используя Spring MVC, Spring Data JPA и Hibernate Привет, Хабр! Представляю Вашему вниманию перевод руководства «Spring MVC + Spring Data JPA + Hibernate — CRUD Example» автора Nam Ha Minh. В этом руководстве по Java Spring вы узнаете, как настроить Spring MVC приложение для работы с Spring Data JPA, разработав простое веб...

[Из песочницы] Искусственный интеллект и сложность человеческого мозга Доброго времени суток, Хабр. Представляю Вашему вниманию перевод статьи:«Artificial intelligence X human brain complexity» автора Andre Lisboa. Будут ли технологические достижения в области машинного обучения и искусственного интеллекта представлять серьезную угрозу для ра...

[Из песочницы] Академия плохого кода: переводы строк, пробелы и отступы Привет, Хабр! Представляю вашему вниманию перевод статьи «Dark code-style academy: line breaks, spacing, and indentation» автора zhikin2207 Привет, народ! Позвольте мне продолжить рассказ про нашу академию плохого кода. В этом посте мы раскроем другой путь замедления чте...

[Из песочницы] Как использовать несколько языков программирования и не сойти с ума Привет, Хабр! Представляю вашему вниманию перевод статьи «How to use multiple programming languages without losing your mind» автора Bart Copeland. Сопливое нытьё про FSF и Red HatКароч, тема такая: я им написал, а они не ответили. Ну ладно бы Массивсофт, который вообще ник...

Хранилище для Веба Доброго времени суток, друзья. Представляю вашему вниманию перевод статьи «Storage for the Web» автора Pete LePage. Существует несколько технологий для хранения данных в браузере. Какая из них лучше? Интернет-соединение может быть плохим или вовсе отсутствовать в опреде...

[Перевод] Transformer в картинках В прошлой статье мы рассматривали механизм внимания (attention) – чрезвычайно распространенный метод в современных моделях глубокого обучения, позволяющий улучшить показатели эффективности приложений нейронного машинного перевода. В данной статье мы рассмотрим Трансформер (T...

[Из песочницы] Создаем аудиовизуальный VR-опыт с применением A-Frame и Tone.js Привет, Хабр! Представляю вашему вниманию перевод статьи «Creating A VR Audio/Visual Experience On the Web With A-Frame and Tone.js» автора Sean Sullivan. A-Frame — это фреймворк для создания виртуальной реальности в вебе. Используя лишь ссылку, любой человек с VR-шлемом ...

[Из песочницы] Получение котировок акций при помощи Python Привет, Хабр! Представляю вашему вниманию перевод статьи «Historical Stock Price Data in Python» автора Ishan Shah. Статья о том, как получить ежедневные исторические данные по акциям, используя yfinance, и минутные данные, используя alpha vantage. Читать дальше →

[Перевод] 7 уроков, которые я усвоил за десять лет в разработке Представляем вам перевод статьи JS dev Ray, опубликованной на сайте medium.com. Автор рассказывает о важных вещах, которые он понял за свою карьеру разработчика приложений. По его мнению, эта информация может очень пригодиться начинающим специалистам. Читать дальше →

[Перевод] Элегантное асинхронное программирование с помощью «промисов» Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «Graceful asynchronous programming with Promises» с MDN. «Обещания» (промисы, promises) — сравнительно новая особенность JavaScript, которая позволяет откладывать выполнение действия до завершения вы...

[Из песочницы] Функциональные опции на стероидах Привет, Хабр! Представляю вашему вниманию перевод статьи Functional options on steroids от автора Márk Sági-Kazár. Функциональные опции — это парадигма в Go для чистых и расширяемых API. Она популяризирована Дейвом Чейни и Робом Пайком. Этот пост о практиках, которые появ...

[Из песочницы] Все, что вы должны знать о std::any Привет, Хабр! Представляем вашему вниманию перевод статьи «Everything You Need to Know About std::any from C++17» автора Bartlomiej Filipek. С помощью std::optional вы можете хранить один какой-то тип. С помощью std::variant вы можете хранить несколько типов в одном объек...

[Перевод] Простое объяснение делегирования событий Приветствую. Представляю вашему вниманию перевод статьи «A Simple Explanation of Event Delegation in JavaScript», опубликованной 14 июля 2020 года автором Dmitri Pavlutin В данной статье Дмитрий Павлутин объясняет, на чём основан один из базовых паттернов работы с DOM-событ...

[Перевод] Как получить размеры экрана, окна и веб-страницы в JavaScript Доброго времени суток, друзья! Представляю Вашему вниманию перевод небольшой заметки «How to Get the Screen, Window, and Web Page Sizes in JavaScript» автора Dmitri Pavlutin. Для определения ориентации окна браузера (ландшафтной или портретной) можно сравнить его ширину...

[Перевод] Как разобрать URL в JavaScript? Доброго времени суток, друзья! Представляю Вашему вниманию перевод заметки «How to Parse URL in JavaScript: hostname, pathname, query, hash» автора Dmitri Pavlutin. Унифицированный указатель ресурса или, сокращенно, URL — это ссылка на веб-ресурс (веб-страницу, изображ...

В какую сторону течёт вода? Пятничная статья про столкновение задачи из собеседования с реальным миром. Есть довольна известная задача — перед вами находится металлическая труба с текущей внутри водой. Как определить в какую сторону она течёт? Её всё ещё могут задать вам на собеседованиях. По многим...

[Перевод] Руководство по Node.js для начинающих. Часть 1 Доброго времени суток, друзья! Представляю Вашему вниманию перевод этого руководства по Node.js. Введение в Node.js Node.js — это открытая и кроссплатформенная среда выполнения JavaScript. Это отличное решение почти для любого проекта. Node.js запускает «движок» Java...

Ask me anything! Задай вопрос Android-команде Badoo Предлагаем продолжить добрую традицию Ask me anything на Хабре и поговорить про разработку Android-приложений. Сегодня и завтра Android-команда Badoo будет на связи и ответит на любые вопросы о разработке и тестировании приложений с многомиллионной аудиторией, даст советы на...

[Из песочницы] 5 фич JavaScript, без которых я не мог бы писать код (перевод) Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Kent Dodds «5 JavaScript Features I Couldn't Code Without». Это мой первый перевод, так что буду рад любым замечаниям. 5 фич JavaScript, без которых я не мог бы писать код Прежде чем мы начнем, по...

[Из песочницы] Что такое NFC и как он работает. Освежим основы? Здравствуйте, пользователи Хабра! Я представляю вашему вниманию перевод статьи «What is NFC and how does it work» под авторством Robert Triggs. Вроде, казалось бы, зачем автору оригинала писать на эту тему в 2019-м, а мне переводить на пороге 2020? Сегодня NFC обрело свою ре...

[Из песочницы] Использование Camunda для удобной оркестровки на основе REST и Workflow Engine (без Java) Привет, Хабр! Представляю вашему вниманию перевод статьи «Use Camunda as an easy-to-use REST-based orchestration and workflow engine (without touching Java)» автора Bernd Rücker. 07.07.2020 г., перевод статьи Bernd Rücker Я часто обсуждаю микросервисную архитектуру с люд...

[Из песочницы] Новая нейросеть поможет компьютерам кодировать самих себя Привет, Хабр! Представляю вашему вниманию перевод статьи «A new neural network could help computers code themselves» автора Will Douglas Heaven. Инструмент обнаруживает сходство между программами, чтобы помочь программистам писать более быстрое и эффективное программное о...

[Из песочницы] Сохраните в закладках эту статью, если вы новичок в Python (особенно если изучаете Python сами) Привет, Хабр! Представляю вашему вниманию перевод статьи "Bookmark this if you are new to Python (especially if you self-learn Python)" в двух частях (1, 2) c простыми, но полезными советами и трюками в Python. Если из-за скучной карантинной жизни вы решили погру...

[Перевод] Знакомимся с Web Animations API Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Charlie Gerard «Exploring the Web Animations API». Знакомимся с Web Animations API Веб API постоянно эволюционируют. Некоторые из них, такие как Console или Canvas, хорошо поддерживаются всеми брау...

[Перевод] Нововведения CSS – Июль 2020 (Gap, Aspect ratio, Masonry, Subgrid) Приветствую. Представляю вашему вниманию перевод статьи «CSS News July 2020», опубликованной 7 июля 2020 года автором Rachel Andrew В последнее время скорость внедрения новых возможностей технологий веб-разработки существенно увеличилась по сравнению с тем, как это было ран...

[Перевод] console.log не является частью JavaScript Доброго времени суток, друзья! Представляю вашему вниманию перевод заметки Nikhil John «console.log isn’t in the JavaScript language». Пожалуй, console.log является самой используемой командой в JS. Однако она не является частью JS. Не верите? А вы загляните в спецификацию...

[Перевод] 32 совета веб-разработчику, который хочет вырасти над собой в 2020 году Ушёл 2019 год. Для нас, для веб-разработчиков, это был год испытаний и возможностей. Вокруг много всего такого, что можно изучить, и такого, в чём можно попытаться достичь мастерства. Например — это JavaScript-инструменты для разработки сайтов, такие, как React, Vue, Angular...

[Из песочницы] Репетитор по программированию: почему вы должны стать им и как это сделать Доброго времени суток, Хабр. Представляю Вашему вниманию перевод статьи:«Coding Mentor: Why You Should Become One and How to Do It» автора Oleg Sklyarov (Олег Скляров). Привет! Меня зовут Олег Скляров, я работаю руководителем группы разработки мобильных устройств для дете...

[Из песочницы] Как использовать консоль JavaScript: выход за пределы console.log () Привет, Хабр! Представляю вашему вниманию перевод статьи «How to use the JavaScript console: going beyond console.log()» автора Yash Agrawal. Один из самых простых способов отладки чего-либо в JavaScript — вывод материала с помощью console.log. Но есть много других методов,...

Топ-3 HTML-элемента, которые мы забыли Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 3 HTML elements that we forgot» автора Stas Melnikov. Недавно я прочитал спецификации и понял, что мы используем ограниченный набор HTML-элементов. Поэтому хотел бы рассказать о трёх элементах, которые мы забыли,...

[Перевод] Прогнозирование временных рядов с помощью рекуррентных нейронных сетей Удалённый режим работы на фоне всеобщей самоизоляции может привести к весьма дурным последствиям. И эмоциональное выгорание – это ещё куда ни шло: там ведь и до крыши недалеко. В этой связи, как и многие, попробовал «успокоить» себя выделением времени на другие занятия – и н...

[Перевод] Python, pandas и решение трёх задач из мира Excel Excel — это чрезвычайно распространённый инструмент для анализа данных. С ним легко научиться работать, есть он практически на каждом компьютере, а тот, кто его освоил, может с его помощью решать довольно сложные задачи. Python часто считают инструментом, возможности которог...

[Из песочницы] Являются ли онлайн-сервисы транскрипции безопасными и конфиденциальными? Привет, Хабр! Представляю вашему вниманию перевод статьи «Are Online Transcription Services Safe and Private?» автора Matthew Hughes. Транскрипция когда-то была ручным, утомительным процессом. Врачи, журналисты и целая толпа профессионалов записывали свои записи и разговоры...

Изучаем VoIP-движок Mediastreamer2. Часть 2 Материал статьи взят с моего дзен-канала. Создаем тональный генератор В предыдущей статье мы выполнили установку библиотеки медиастримера, инструментов разработки и проверили их функционирование, собрав пробное приложение. Сегодня мы создадим приложение, которое сможет пропи...

Zabbix. Что делать, если принтер не делится информацией по SNMP? Доброго времени суток! КДПВ Данная статья – небольшой мануал, написанный в несколько художественной форме. В статье много картинок, заботливо упрятаных в спойлеры. Для кого написана эта статья? Для начинающих сисадминов, еще слабо знакомых с UNIX-системами, Zabbix’ом, но ...

Митап «Образование в IT: чему стоит поучиться у бизнеса» — разбираемся в программах и курсах и планируем карьеру IT-компании запускают собственные программы обучения — чем они отличаются от университетских, кому могут быть полезны, зачем нужны бизнесу и дают ли гарантии получить работу? Ответить на эти и другие вопросы помогут руководители образовательных проектов и IT-подразделений ...

[Из песочницы] SwiftUI по полочкам Каждый раз, когда в языке программирования появляется новый Фреймворк, рано или поздно, появляются люди, которые изучают язык именно с него. Вероятно так было и в IOS разработке во времена появления Swift: поначалу он рассматривался как дополнение к Objective-C — но я этого ...

[Перевод] 5 вопросов по SQL, которые часто задают дата-сайентистам на собеседованиях Хотя составление SQL-запросов — это не самое интересное в работе дата-сайентистов, хорошее понимание SQL чрезвычайно важно для того, кто хочет преуспеть в любом занятии, связанном с обработкой данных. Дело тут в том, что SQL — это не только SELECT, FROM и WHERE. Чем больше S...

[Из песочницы] Почему разработчики такие медленные: распространенные проблемы и их решения Привет, Хабр! Представляю вашему вниманию перевод статьи Why Development Teams are Slow: Common Software Jams and Solutions автора Эрика Эллиота. Если вы больше любите слушать, чем читать, то в аудио формате перевод доступен на Яндекс.Музыке и в Apple Podcasts Давайте ра...

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

[Из песочницы] Flutter. Асинхронность и параллельность Привет, Хабр! Представляю вашему вниманию перевод статьи "Futures — Isolates — Event Loop" автора Didier Boelens об асинхронности и многопоточности в Dart (и Flutter в частности). TLDR: В целом, статья ориентирована на новичков и не изобилует откровениями. Если вы ...

[Перевод] Как QA-команда GitLab использует GitLab Performance Tool Перевод статьи подготовлен в преддверии старта курса «DevOps практики и инструменты». Мы запустили ряд инициатив по улучшению производительности GitLab и нам нужен был новый инструмент для бенчмарков. Тестирование производительности — это сложный процесс, отличающийся от...

[Из песочницы] Различные способы передачи данных в компоненты Angular Привет, Хабр! Представляю вашему вниманию перевод статьи «Different Ways to Pass Inputs to a Component in Angular» автора Netanel Basal. В этой статье, мы разберём три разных способа передачи данных в компонент. В следующем примере мы будем использовать select как главный...

Что такое LLVM и зачем он нужен? Всем привет! Думаю, у многих сразу возник другой вопрос — а зачем вообще нужна ещё одна статья про LLVM, ведь на хабре их и так больше сотни? Моей задачей было написать "введение в тему" for the rest of us — профессиональных разработчиков, не планирующих создавать ...

[Перевод] Современные решения старых CSS-задач (1 часть): Удержание футера внизу страницы Приветствую. Представляю вашему вниманию перевод статьи «Keep the Footer at the Bottom: Flexbox vs. Grid», опубликованной 8 апреля 2020 года автором Stephanie Eckles Это первая статья из серии, посвящённой ознакомлению с современными способами решения CSS-проблем, с которы...

[Из песочницы] Погружение в Delta Lake: принудительное применение и эволюция схемы Привет, Хабр! Представляю вашему вниманию перевод статьи «Diving Into Delta Lake: Schema Enforcement & Evolution» авторов Burak Yavuz, Brenner Heintz and Denny Lee. Данные, как и наш опыт, постоянно накапливаются и развиваются. Чтобы не отставать, наши ментальные модели ми...

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

[Из песочницы] Пользовательские истории – это не требования Привет, Хабр! Представляю вашему вниманию перевод статьи «User stories are not requirements» автора Пер Лундхольм (Per Lundholm). Слоны – не жирафы, а пользовательские истории – это не требования. Они имеют и общие черты и общий контекст, однако это не ставит между ними зна...

[Перевод] Разворачиваем Jenkins как код Прим. перев.: это перевод статьи из инженерного блога компании Preply о том, как можно использовать конфигурацию как код для такого популярного CI/CD инструмента как Jenkins. В нашей компании, мы стараемся следовать практикам «Все как код», это касается не только инфраструк...

[Перевод] Эндрю Ын «Страсть к машинному обучению». Перевод глав 36-46 Три года прошло с момента публикации первых глав книги Эндрю Ына (Andrew Ng) «Machine Learning Yearning». Если вы подписаны на хаб «Машинное обучение», то нет никакой нужды представлять вам её автора и скорее всего саму книгу вы уже давно прочитали на языке первоисточника. П...

[Из песочницы] Docker Tips: Очистите свою машину от хлама Привет, Хабр! Представляю вашему вниманию перевод статьи "Docker Tips: Clean Up Your Local Machine" автора Luc Juggery. Сегодня мы поговорим о том, как Docker использует дисковое пространство хостовой машины, а также разберемся в том, как это пространство освободи...

Создаем прогрессивное веб-приложение на ReactJS и размещаем его в Netlify и PWA Store Доброго времени суток, друзья! Представляю Вашему вниманию перевод серии статей автора K G Prajwal, посвященных созданию Weather PWA на ReactJS, разворачиванию приложения в Netlify и его загрузке в PWA Store. React React — продукт Facebook. Это очень гибкая и эффективная J...

Вопрос про CAN FD Добрый день! Читаю с интересом ваши статьи и хотел бы задать вопрос, как компетентным людям в автомобильной отрасли — периодически сталкиваюсь с шиной CAN и в процессе изучения встречал информацию о перспективах перехода на CAN FD. Википедия говорит о переходе на FD больш...

«Если сайты будут работать лучше — это будет идеально»: интервью с разработчиком Playwright Андреем Лушниковым Совсем недавно вышла статья про новый инструмент Playwright, одним из авторов которого является Андрей Лушников. Нам выпала возможность пообщаться с Андреем и задать все вопросы, которые внимательные читатели написали в комментариях. Думаю, в этом лонгриде они смогут найти о...

SLS vs STARSHIP: Почему существуют обе программы? Everyday Astronaut 1 МАЯ 2020, TIM DODD, EVERYDAY ASTROUNAVT ВЕБ-ВЕРСИЯ: FLORIAN KORDINA И JOEY SCHWARTZ Пару слов от меня зачем и почему. Мне нравится американский космический журналист — Тим Додд. За его энтузиазм и дотошность при рассмотрении темы. Можно критически относиться к его оценкам...

[Из песочницы] Основы измерения повышенной температуры человека с помощью тепловизионной технологии Привет, Хабр! Представляю вашему вниманию перевод и адаптацию оригинальных технических статей по тематике применение телевизоров для температурного скрининга человека: «ELEVATED BODY TEMPERATURE (EBT) FUNDAMENTALS» и «BEST PRACTICES FOR EBT». Цель этой статьи — помочь читат...

Памятка по работе с Canvas API Доброго времени суток, друзья! Данная статья представляет собой небольшую подборку примеров работы с Canvas API, к которой удобно обращаться при необходимости вспомнить изученный материал. Это не руководство по работе с холстом, а лишь демонстрация некоторых из его основ...

Как мы мигрировали с Oracle JDK и Java Web Start на AdoptOpenJDK и OpenWebStart Доброго времени суток. В данной статье я расскажу о «модернизации» в компании, в которой я работаю, такого инструмента как Java Web Start, а точнее об его замене альтернативным opensource решением. Читать дальше →

Что такое Полный геном и зачем он нужен Атлас запустил новый продукт — Полный геном. Теперь мы можем исследовать не только отдельные точки в геноме, как в генетическом тесте, но и прочитать всю последовательность нуклеотидов генома. В этой статье рассказываем, что это и зачем это нужно. Внимание! Мы подарим Полны...

Зачем (не)нужны геттеры? Прошлая статья про сеттеры/геттеры как способ работы с сущностью (на примере Symfony в PHP) получила бурное обсуждение. В данной статье попробую выразить свои мысли отдельно по поводу геттеров: зачем и когда что-то получать, какую ответственность они решают и когда их уместн...

Нейросеть — обучение без учителя. Метод Policy Gradient Доброго времени суток, Хабр Настоящей статьей открываю цикл статей о том, как обучать нейронные сети без учителя. (Reinforcement Learning for Neuron Networks) В цикле планирую сделать три статьи по теории и реализации в коде трех алгоритмов обучения нейронных сетей без учи...

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

[Из песочницы] Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer. Angular — отличный фреймворк. Мы все его любим <3. Одна из вещей, которая делает Angular успешным и прекрасным в...

[Из песочницы] Топ 5 причин, почему мне нравятся пользовательские свойства CSS Привет, Хабр! Представляю вашему вниманию перевод статьи «My top 5 reasons why I like CSS custom properties», автора Stas Melnikov Спецификация пользовательских свойств CSS навсегда изменила мой взгляд на веб-разработку. Именно поэтому я хочу написать, почему мне нравятся п...

Руководство по Node.js для начинающих. Часть 4 Доброго времени суток, друзья! Продолжаю публиковать перевод этого руководства по Node.js. Другие части: Часть 1 Часть 2 Часть 3 Часть 4 Файл package-lock.json В пятой версии Node.js был представлен файл package-lock.json. Что это такое? Для чего он нужен, если есть ...

Руководство по Node.js для начинающих. Часть 2 Доброго времени суток, друзья! Продолжаю публиковать перевод этого руководства по Node.js. Другие части: Часть 1 Часть 2 Часть 3 Движок JavaScript V8 V8 — название движка JavaScript, поддерживаемого Google Chrome. Эта та штука, которая берет ваш JavaScript-код и выполня...

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

[Перевод] Эндрю Ын «Страсть к машинному обучению». Перевод глав 47-58 Это вторая статья с переводом отдельных глав книги Эндрю Ына «Страсть к машинному обучению». Перевод предыдущих глав вы можете почитать по ссылке. В этой статье речь пойдёт о сквозном (end-to-end) глубоком обучении, а так же автор книги поделится некоторыми способами анал...

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

Compositional Layout в iOS 13. Основы Добрый день, На практике iOS разработчик часто сталкивается с задачей показа большого количества информации в виде списка или в виде коллекции, как правило, для этого отлично подходят UITableView или UICollectionView. Также часто встречается задача реализации экрана, который...

Управление кластером Docker Swarm с помощью Swarmpit Доброго времени суток, %username%. Пора расчехлить блог после 6 лет простоя и попробовать опять что-то полезное принести сообществу. Я крайне удивлен, что на хабре до сих пор нет ни одной статьи про Swarmpit. Я конечно понимаю, что наверняка большинство изучая Docker оста...

[Из песочницы] ConfigureAwait: часто задаваемые вопросы Привет, Хабр! Представляю вашему вниманию перевод статьи «ConfigureAwait FAQ» автора Стивен Тауб. Async/await добавили в .NET более семи лет назад. Это решение оказало существенное влияние не только на экосистему .NET — оно также находит отражение во многих других языках...

[Перевод] Как Gatsby обошёл Next.js Автор статьи, перевод которой мы сегодня публикуем, работает программистом в компании Antler. Эта компания представляет собой глобальный генератор стартапов. В Antler несколько раз в году проходят демонстрационные дни, собирающие множество создателей стартапов и инвесторов с...

[Из песочницы] Null safety в Dart Привет, Хабр! Представляю вашему вниманию перевод статьи «Announcing sound null safety» автора Filip Hracek с моими комментариями: Null safety — безопасная работа с пустыми ссылками. Далее по тексту для краткости и по причине устойчивости термина будет использоваться англий...

[Из песочницы] 5 причин, по которым моушн дизайн помогает вам общаться с людьми Привет, Хабр! Представляю вашему вниманию перевод статьи «5 Reasons Motion Graphics Help You Connect With People» автора Katy French. Оригинал статьи: Katy French | Перевод статьи сделал моушн дизайнер Игорь Царёв Мы большие поклонники моушн дизайна. Это не потому, что о...

[Из песочницы] Письмо начинающему изучать Data Science Я бы хотел получить такое письмо три года назад, когда только начинал изучать Data Science (DS). Чтобы там были необходимые ссылки на полезные материалы. Статья не претендует на полноту охвата необъятной области DS. Однако для начинающего специалиста будет полезна. Читать д...

[Из песочницы] Многопоточность. Модель внутренней памяти Java простыми словами Привет, Хабр! Представляю вашему вниманию перевод статьи «Java Memory Model» автора Jakob Jenkov. Прохожу обучение по Java и понадобилось изучить статью Java Memory Model. Перевёл её для лучшего понимания, ну а чтоб добро не пропадало решил поделиться с сообществом. Думаю...

Новая библиотека для уменьшения размерности данных ITMO_FS — зачем она нужна и как устроена Студенты и сотрудники лаборатории Машинного обучения Университета ИТМО разработали библиотеку для Python, которая решает ключевую задачу машинного обучения. Расскажем, почему появился этот инструмент и что он умеет. Читать дальше →

[Перевод] Как сохранить здоровье глаз: руководство для программистов Перед вами перевод статьи Shafi Rizvi, опубликованной на сайте medium.com. Автор дает 7 советов, как защитить глаза от воздействия компьютерного экрана. Фото с ресурса Unsplash. Автор: Daniil Kuželev Читать дальше →

[Перевод] Как устроен процесс создания docker-контейнера (от docker run до runc) Перевод статьи подготовлен в преддверии старта курса «Инфраструктурная платформа на основе Kubernetes». За последние несколько месяцев я потратил немало личного времени на изучение работы Linux-контейнеров. В частности, что конкретно делает docker run. В этой статье я соб...

Какие навыки нужны для создания iOS-приложения? Доклад Яндекса Мобильному разработчику нужно обладать понятным набором навыков. Рассказывать о них нужно в контексте конкретных задач, которые возникают по ходу создания и публикации приложения. Артур Антонов работает iOS-разработчиком в отделе машинного перевода Яндекса. В своём докладе д...

[Из песочницы] 6 советов для успешного Code Review Привет, Хабр! Представляю Вашему вниманию перевод статьи «6 Tips To A Successful Code Review». Сode review во все времена являлся основополагающей практикой, отвечающей за создание чистого и поддерживаемого кода. Частенько разработчики пренебрегают и недооценивают code revie...

[Перевод] Несколько полезных советов как практиковаться в Python Привет, Хабр! Сегодня я предлагаю Вам перевод статьи Duomly, посвящённой изучению и практике программирования на языке Python. Введение Изучение Python не сильно отличается от изучения других языков программирования. Один путь для становления профессионалом в Python (или в д...

[Перевод] Service Mesh: что нужно знать каждому Software Engineer о самой хайповой технологии Прим. перев.: Service mesh — явление, которое ещё не имеет устойчивого перевода на русский язык (более 2 лет назад мы предлагали вариант «сетка для сервисов», а чуть позже некоторые коллеги стали активно продвигать сочетание «сервисное сито»). Постоянные разговоры об этой те...

План начинающего тестера: от “Войти в IT” до “Я — Инженер!” Всем привет! Меня зовут Валентин и я работаю инженером по тестированию в компании Exness. Очень часто слышу вопрос о том, насколько сейчас возможно стать тестировщиком программного обеспечения. В этой статье я постараюсь ответить на данный вопрос. Читать дальше →

[Из песочницы] [В закладки] Перевод Google JavaScript Style Guide Добрый день, товарищи разработчики! Пару месяцев назад начал осваивать специализацию Fullstack-разработчика и, спустя какое-то время, как любой приличный разработчик, стал искать руководства по стилю для JavaScript. В результате, это привело… к переводу одного из них, о чем...

[Из песочницы] Взламывая ASOS Привет, Хабр! Представляю вашему вниманию перевод статьи «Breaking Into ASOS» автора Michal Necasek. Люблю старое железо, и мне хочется поделиться с вами любопытной историей изучения однго жёсткого диска из музея. Музей OS/2 недавно приобрел жесткий диск Quantum Bigfoot TS...

[Перевод] Руководство по возможностям Java версий 8-14 Здесь есть все, что вам нужно знать о различных версиях и функциях Java. Java 8, Java 11, Java 13, Java 14 — какая разница? Вы можете использовать это руководство, чтобы получить практическую информацию о том, как найти и установить последнюю версию Java, понять различия ме...

[Из песочницы] Кластер из двух узлов – дьявол в деталях Привет, Хабр! Представляю вашему вниманию перевод статьи «Two Nodes — The Devil is in the Details» автора Andrew Beekhof. Многие люди предпочитают кластеры состоящие из двух узлов, потому что они кажутся концептуально более простыми, кроме того еще и на 33% более дешевыми ч...

[Перевод] Выбираем лучший бэкенд-фреймворк 2021 года Недавно мы опубликовали статью, автор которой размышлял о том, какой язык программирования, JavaScript, Python или Go, лучше всего подойдёт для бэкенд-разработки в 2021 году. Сегодня мы представляем вашему вниманию перевод ещё одного материала того же автора. Здесь он пытает...

[Перевод] Нововведения JavaScript ES2020 с простыми примерами Представляем вам перевод статьи из блога Carlos Caballero на сайте Medium.com. Ранее мы публиковали материал этого автора о функциях ES10, появившихся в 2019 году. Читать дальше →

[Из песочницы] 9 ключевых алгоритмов машинного обучения простым языком Привет, Хабр! Представляю вашему вниманию перевод статьи «9 Key Machine Learning Algorithms Explained in Plain English» автора Nick McCullum. Машинное обучение (МО) уже меняет мир. Google использует МО предлагая и показывая ответы на поисковые запросы пользователей. Netflix...

Панель корреляции на QtQML/Quick Всем привет! Я — тимлид команды по разработке десктопных приложений в компании Роджии Европа. Мы разрабатываем программные решения для нефтегазовой отрасли. Так получилось, что в нашем флагманском продукте StarSteer нет панели корреляции — классического инструмента проводчик...

[Из песочницы] Микросервисы — комбинаторный взрыв версий Привет, Хабр! Представляю вашему вниманию авторский перевод статьи Microservices – Combinatorial Explosion of Versions. Во времена когда мир IT постепенно переходит на микросервисы и инструменты вроде Kubernetes, все более заметной становится лишь одна проблема. Эта проблем...

[Перевод] Аутентификация и чтение секретов в HashiCorp's Vault через GitLab CI Доброго времени суток, читатель! 22 апреля в GitLab выпустили релиз 12.10 и сообщили о том, что теперь CI-процесс может авторизовываться в Hashicorp's Vault через JSON Web Token (JWT), и для авторизации нет необходимости хранить токен для доступа к нужным policy в переменных...

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

100 теоретических вопросов по JavaScript Доброго времени суток, друзья! Представляю вашему вниманию список из первых 100 вопросов по основам JavaScript из этого репозитория с краткими ответами и ссылками на «Современный учебник по JavaScript» Ильи Кантора (JSR) и MDN. Также в конце имеются ссылки на статьи для п...

[Перевод] Архитектурный шаблон MVI в Kotlin Multipaltform, часть 1 Около года назад я заинтересовался новой технологией Kotlin Multiplatform. Она позволяет писать общий код и компилировать его под разные платформы, имея при этом доступ к их API. С тех пор я активно экспериментирую в этой области и продвигаю этот инструмент в нашей компани...

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

[Перевод] Расширяемые расширения в JavaScript Привет, Хабр! Обращаем ваше внимание на долгожданную допечатку книги "Выразительный JavaScript", которая только-только пришла из типографии. Тем, кто еще не знаком с творчеством автора книги (при всей энциклопедичности она понравится и начинающим разработчикам) ...

[Перевод] «Давайте использовать Kubernetes!»: как получить 8 проблем Это перевод вводной статьи об использовании Kubernetes: «Let’s use Kubernetes!» Now you have 8 problems Если вы используете Docker, то следующим логичным шагом будет Kubernetes, известный как K8s. Именно так вы обеспечиваете эксплуатацию своих продуктов, верно? Ну, возможн...

[Из песочницы] Антипаттерны работы с базами данных Привет, Хабр! Представляю вашему вниманию перевод статьи «Database: Anti-Patterns» автора Sergey Kozlov. Если вы храните данные, это критически важная часть вашего приложения. Можно легко и быстро задеплоить исправление бага на новом сайте знакомств, чтобы фермер Джо из сев...

[Перевод] Используем PowerShell для работы с REST API Многие из вас наверняка работают с разнообразными инфраструктурами, используя REST API. А поскольку все более широкие слои населения для автоматизации рутинных задач осваивают PowerShell, то почему бы и не начать применять его для работы с REST API? Сегодня вашему вниманию ...

[Перевод] Мои любимые трюки в JavaScript Приветствую. Представляю вашему вниманию перевод статьи «My Favorite JavaScript Tips and Tricks», опубликованной 28 июля 2020 года автором Tapas Adhikary Большинство языков программирования являются достаточно открытыми, чтобы предоставить разработчикам возможность делать о...

[Из песочницы] Web2Text: глубокое структурированное извлечение содержимого web-страницы Привет, Хабр! Представляю вашему вниманию перевод статьи "Web2Text: Deep Structured Boilerplate Removal" коллектива авторов Thijs Vogels, Octavian-Eugen Ganea и Carsten Eickhof. Веб-страницы являются ценным источником информации для многих задач обработки естествен...

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

[Перевод] Formidable, Busboy, Multer или Multiparty? Выбор npm-пакета для обработки файлов, выгружаемых на сервер Существует немало npm-пакетов, предназначенных для разбора и обработки multipart/form-data-запросов на Node.js-сервере. Каждый из них спроектирован по-особенному. Некоторые предназначены для использования с Express.js, другие рассчитаны на автономное применение. Некоторые хр...

[Из песочницы] Unit тесты для RxSwift кода Привет, Хабр! Представляю вашему вниманию перевод статьи "Testing Your RxSwift Code" автора Shai Mishali с сайта raywenderlich.com. Написание реактивных приложений с помощью RxSwift концептуально отличается от написания приложений "обычным путем". Оно отл...

[Из песочницы] Истоки математики: логические идеи Привет, Хабр! Представляю вашему вниманию перевод статьи "Math Origins: The Logical Ideas" автора Erik R. Tou (University of Washington Tacoma). От переводчика: В журнале Математической ассоциации Америки был опубликована серия статей об истоках математики вообще ...

Фичи JavaScript. Часть 1 Доброго времени суток, друзья! В этой статье я хочу поделиться с Вами некоторыми находками, сделанными мной в процессе изучения JavaScript. Возможно, Вы найдете для себя что-то интересное. Данная часть серии будет посвящена, преимущественно, работе с DOM. Рекомендую прим...

[Из песочницы] Асинхронность в C# и F#. Подводные камни асинхронности в C # Привет, Хабр! Представляю вашему вниманию перевод статьи «Async in C# and F# Asynchronous gotchas in C#» автора Tomas Petricek. Еще в феврале я присутствовал на ежегодном саммите MVP — мероприятии, организованном Microsoft для MVP. Я воспользовался этой возможностью, чтобы ...

[Из песочницы] Как копирайтеру писать для IT без глупостей и стереотипов Привет. Я Дмитрий — автор и редактор, помогаю IT-компаниям рассказывать о себе с помощью PR-статей на различные ресурсы, начиная от развлекательных и заканчивая большими профильными площадками (Как раз про Хабр, да). Кто-то вроде литературного негра — грубо говоря, ко мне пр...

Автоматизация тестирования: Java или Python? Всем привет! В марте OTUS запускает сразу два курса по автоматизации тестирования: «Python QA Engineer» и «Java QA Engineer». У нас часто спрашивают, какой из этих курсов выбрать, ответить на данный вопрос мы решили переводом статьи от компании SafeBear. Один из самых попу...

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

Руководство по Node.js для начинающих. Часть 3 Доброго времени суток, друзья! Продолжаю публиковать перевод этого руководства по Node.js. Другие части: Часть 1 Часть 2 Часть 3 Получение данных, введенных пользователем, в Node.js Как сделать Node.js-программу интерактивной? Для этого в 7 версии Node.js представлен м...

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

Wi-Fi 6: нужен ли новый стандарт беспроводной связи обычному пользователю и если да, то зачем? Выдача сертификатов началась 16 сентября прошлого года. С тех пор было опубликовано немало статей и заметок о новом стандарте беспроводной связи, в том числе, и на Хабре. Большинство таких статей — технические характеристики технологии с описанием достоинств и недостатков...

[Из песочницы] [Перевод] От пиратства к опенсорс: моя история Привет, Хабр! Предлагаю Вашему вниманию перевод статьи "From piracy to open-source: my story" автора Jakob Attkinson. Я рос с компьютером с 6 лет. Хотя я и был рожден в довольно небогатой семье, мой отец осознавал мощный потенциал технологий и хотел быть уверенны...

Новичкам фондового рынка: честные разговоры о трейдинге Блог RUVDS на Хабре видел всё: популяризацию JavaScript и крутые переводные материалы, яхтинг, вопросы образования и профессионального развития, бургеры, сыры, пиво и календари с кибердевушками. Задумка поговорить об основах трейдинга и работы на фондовом рынке возникала у н...

[Из песочницы] Контролируемые и неконтролируемые компоненты в React не должны быть сложными Привет, Хабр! Представляю вашему вниманию перевод статьи «Controlled and uncontrolled form inputs in React don't have to be complicated» автора Gosha Arinich. Возможно, вы видели много статей, говорящих: “вы не должны использовать “setState”", в то время, когда докумен...

Управление роботом мыслями с Emotiv Insight Управление мыслями чем-либо, кроме собственных конечностей – область завораживающая. Всегда интересно представлять будущее, в котором мы можем взаимодействовать с интернетом не только при помощи пальцев, рта, глаз и ушей. Если задуматься, то компьютер и телефон – ужасно н...

[Перевод] Привлечение и удержание художников в open-source играх Автор оригинальной статьи — Jetrel. Художник, который активно участвует в проектах Open Source игр. Несколько лет назад он был «арт-директором» игры Battle for Wesnoth. Кроме того, он сделал львиную долю арта для Frogatto and friends и продолжает работать над этой игрой. По...

5 малоизвестных возможностей JSON.stringify() Доброго времени суток, друзья! В этой небольшой заметке я хочу рассказать вам о некоторых редко используемых возможностях JSON.stringify(). Возможно, они окажутся вам полезными. JSON.stringify() часто используется при отладке для преобразования объекта или обычной стро...

[Перевод] Каково это было изучать Data Science в 2019 году Эта статья — перевод статьи Томаса Нильда How It Feels to Learn Data Science in 2019 Видение (случайного) леса через деревья (решений) Thomas Nield Follow Feb 4 Время чтения: 16 минут Читать дальше →

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

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

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

Google о том, стоит ли разбивать CSS и JS-файлы на более мелкие части Вчера сотрудник Google Мартин Сплитт ответил в Twitter на вопрос о том, стоит ли разбивать CSS и JavaScript-файлы на более мелкие части. В целом из его слов можно сделать вывод, что однозначного ответа здесь нет. Зачем нужно разделение Автор вопроса Бартош Горалевич предполо...

[Из песочницы] Актуальные библиотеки визуализации данных для react-разработчиков Привет, Хабр! Представляю вашему вниманию перевод статьи «Data Visualization Libraries for React Developers in 2019» автора Veronika Rovnik. Вот уже несколько лет подряд React не сдаёт позиции и входит в тройку самых любимых библиотек профессиональных разработчиков по всему...

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

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

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

[Перевод] Framework vs Platform: в чём разница? Привет, Хабр! Представляю вашему вниманию перевод статьи "Framework Vs. Platform What’s The Difference?" автора G. Harris. Исповедуюсь: я педант. Несмотря на личные неудачи на этом поприще, я глубоко верю, что использование правильного языка добавляет множество пре...

Пишем и тестируем миграции БД с Alembic. Доклад Яндекса Приложения на бэкенде могут работать с самыми разными базами данных: PostgreSQL, SQLite, MariaDB и другими. Перед разработчиками встает задача реализовать возможность легко и безопасно изменять состояние БД. Менять нужно как структуру базы, так и сами данные от одной версии ...

Перевод на английский язык в сфере IT на примере PVS-Studio Наша компания PVS-Studio активно публикует статьи на тему разработки, поиска ошибок в коде, техниках по улучшению его качества. Этот пост отличается по тематике – в этот раз рассмотрим вопрос перевода на английский язык русскоязычного контента на тему разработки. В этой ста...

[Из песочницы] Scorched Earth — мама всех игр. Интервью с создателем Привет, Хабр! Представляю вашему вниманию перевод статьи "An interview with the creator of Scorched Earth" автора Wendell T. Hicken. Начальный экран «мамы всех игр». Пустынный пейзаж наводит на мысли о будущих войнах в Заполярье. Привет, читатели Хабра! Меня зовут...

Почему Мистер Робот — лучший сериал про IT-индустрию Доброго времени суток, уважаемые читатели Хабра! 23 декабря 2019 года в свет вышла заключительная серия одного из самых популярных сериалов про IT — Мистер Робот. Посмотрев сериал до конца, я твёрдо решил написать статью о сериале на Хабре. Выход этой статьи приурочен к мое...

[Перевод] Изучаем Metaflow за 10 минут Metaflow — это Python-фреймворк, созданный в Netflix и ориентированный на сферу Data Science. А именно, он предназначен для создания проектов, направленных на работу с данными, и для управления такими проектами. Недавно компания перевела его в разряд опенсорсных. Фреймворк M...

[Из песочницы] Оптимизация загрузки изображений Привет, Хабр! Представляю вашему вниманию перевод статьи «How to optimize image loading on your website». Если на сайте много красивых изображений, то это здорово, но они могут значительно ухудшить время загрузки и как результат — пострадает SEO, а многие пользователи будут...

Развертывание в Docker и Kubernetes образа StatsD+Grafana В начале моего изучения Docker и Kubernetes мне нехватало простого и понятного примера, с которым можно было бы «поиграться», изучая особенности этой среды. Этой статьей хотелось бы закрыть этот пробел. Здесь я расскажу об интеграции .NET Core приложения с Telegraf и Grafana...

[Перевод] Устанавливаем рабочий стол Linux на Android Привет, Хабр! Представляю вашему вниманию перевод статьи из журнала APC. В данной статье рассматривается полная установка операционной среды Linux вместе с графическим окружением рабочего стола на Android-устройствах. Одной из ключевых технологий, которую применяют многи...

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

[Перевод] Swift Property Wrappers Если вы использовали SwiftUI, то наверняка обращали внимание на такие ключевые слова, как @ObservedObject, @EnvironmentObject, @FetchRequest и так далее. Property Wrappers (далее «обёртки свойств») — новая возможность языка Swift 5.1. Эта статья поможет вам понять, откуда же...

[Из песочницы] Проекция контента в Angular или затерянная документация по ng-content При изучении Angular очень часто упускают или уделяют недостаточное внимание такому понятию, как проекция контента. Это очень мощный инструмент для создания гибких и переиспользуемых компонентов. Но в документации о нем упоминается лишь пару абзацев в разделе Lifecycle hooks...

[Перевод] Новая промышленная группа создаёт универсальный стандарт умных домов Project Connected Home over IP – это новая промышленная группа, о создании которой объявили Apple, Google, Amazon и ZigBee Alliance. Эта группа создаст новый объединяющий стандарт для устройств, входящих в умный дом, и это серьёзное дело. И вот, почему. Сегодняшняя ситуац...

Не боги горшки обжигают Дима: Читал эту статью? habr.com/ru/post/483592 (Разработчики — никакая не элита, а голые короли индустрии). Что скажешь? Я: Прочитал эту статью вчера Я: В двух словах моё мнение целиком не выразить Я: Это, скорее, тянет на получасовой разговор. Минимум Дисклеймер Несмотря ...

[Перевод] Свойства Min и Max width/height в CSS Перевод «Min and Max Width/Height in CSS» Ахмада Шадида Порой у разработчиков возникает необходимость ограничить ширину элемента относительно родителя, и в то же время, оставить её динамичной. Задав таким образом начальный размер с возможностью расширения при наличии доступ...

Создаем генератор адаптивной галереи изображений со встроенным слайдером Доброго времени суток, друзья! Вместо введения (постановка задачи) Все началось с изучения чужих слайдеров (готовых решений в сети, типа bxslider, owlcarousel и slick). Когда-нибудь я напишу подробные руководства по работе с этими инструментами (sweet dreams). Появилось ж...

Обратная связь или 1 to 1, как не допустить ошибки Данная статья была написана специально для студентов курса «IT-Recruiter» от OTUS. Автор статьи: Елена Ленсу. Все говорят, что обратная связь важна и что нужно быть корректными друг к другу, но давайте разберемся, зачем это нужно. Встречи один на один являются важным ин...

[Из песочницы] Подключение дисплея 10" ER-TFT101-1 к STM32F429 через FMC Всем доброго времени суток. В этой статье мы разберём подключение TFT дисплея ER-TFT101-1 (10 дюймов, RA8876 драйвер) к плате STM32F429L Discovery по 16-битному параллельному интерфейсу 8080 используя модуль FMC (flexible memory controller). О дисплейной сборке ER-TFT101-1 ...

[Перевод] 5 инструментов геймдизайнера, которые помогут вашей игре Видеоигры существуют более 50 лет. За это время технологии скакнули от текстовой The Oregon Trail до фотореалистичной Red Dead Redemption 2. Не говоря уже о VR-тайтлах вроде Half-Life: Alyx, которая выходит в конце марта. И все же, игровая индустрии еще очень молодая. Пос...

Как уменьшить потребление wifi модулей в десять и более раз Добрый день, Всем!!! Данная статья в основном касается популярного модуля ESP8266 (ESP8285). Недавно на одном из форумов мне задали вопрос о протоколе ESP-NOW. В итоге решил рассказать о способах сокращения потребления датчиков и исполнительных устройств, работающих по WiFi,...

Как писать книгу в LaTeXe по физике. Cтатья 1 Это моя первая статья на Хабре. Глава 1. Введение 1.1 Позвольте представиться и почему я это пишу    Я — научный сотрудник, физик. Недавно выпустил книгу по спектроскопии объемом 880 страниц и весом 1560 грамм. Эту книгу я писал 9 лет, параллельно читая лекции по...

[Из песочницы] 5 причин, почему вы должны прекратить использовать System.Drawing в ASP.NET Привет, Хабр! Представляю вашему вниманию перевод статьи «5 Reasons You Should Stop Using System.Drawing from ASP.NET». Ну что ж, они таки сделали это. Команда corefx в конце концов согласилась на многочисленные просьбы и включила System.Drawing в .NET Core. Читать дальш...

Изучаем американский английский: личный опыт погружения в англоязычную среду и немного советов Нью-Йорк во всей красе От редакции: мы продолжаем наш цикл об IT-эмиграции, посвященный работе за рубежом, изучению языков и другим интересным вещам. В прошлой статье рассказали о нюансах переезда из Украины в Испанию. Теперь поговорим об американском английском. От автора: ...

Продвинутый TypeScript Фридайвинг — ныряние на глубину без акваланга. Ныряльщик ощущает на себе закон Архимеда: он вытесняет некоторый объём воды, который выталкивает его обратно. Поэтому первые несколько метров даются тяжелее всего, но потом сила давления толщи воды над тобой начинает помогать дв...

[Перевод] Полное руководство по HTML-атрибутам data-* Представляем вашему вниманию перевод статьи, посвящённой использованию атрибутов data-*. Это — атрибуты, которые можно применять для удобного хранения в стандартных HTML-элементах различной полезной информации. Эта информация, в частности, может применяться в JavaScript и CS...

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

[Перевод] Мои любимые инструменты разработчика Chrome Доброго времени суток, друзья! Chrome Developer Tools — очень мощный набор инструментов для разработки веб приложений. С помощью этих инструментов мы можем перемещаться по DOM, осуществлять проверку запросов на сервер, настраивать производительность приложений и др. Сред...

Шесть рецептов для начинающего тимлида: как всё успевать и развивать команду Привет! Меня зовут Дмитрий Ли, я тимлид одной из команд разработки бэкенда в Badoo. Когда я впервые стал тимлидом, я стал активно посещать конференции и читать умные книги об управлении командой. Однако в моей работе после этого менялось немногое. Я читал о том, каким я д...

[Перевод] Распознавание мелодии путем изучения языка тела музыканта Перевод статьи подготовлен в преддверии старта нового набора на курс «Computer vision». Инструмент распознавания музыкальных жестов на основе искусственного интеллекта, разработанный в MIT-IBM Watson AI Lab, использует движения тела, чтобы различать звуки отдельных музык...

[Из песочницы] Психологические проблемы как плата за успех при создании прорывных продуктов Привет, Хабр! Представляю вашему вниманию перевод статьи «Investors and entrepreneurs need to address the mental health crisis in startu» автора Jake Chapman. Колин Кролл был соучредителем Vine и HQ Trivia, которые принесли радость миллионам потребителей; Энтони Бурден был ...

[Перевод] Руководство Google по стилю в C++. Часть 10 Часть 1. Вступление … Часть 9. Комментарии Часть 10. Форматирование … Эта статья является переводом части руководства Google по стилю в C++ на русский язык. Исходная статья (fork на github), обновляемый перевод. Читать дальше →

[Из песочницы] Защита вашего GraphQL API от уязвимостей Привет, Хабр! Представляю вашему вниманию перевод статьи Protecting Your GraphQL API From Security Vulnerabilities. GraphQL быстро становится выбором разработчиков, которым необходимо создать API для своего клиентского приложения. Но, как и все новые технологии, GraphQL подв...

Использование примесей (mixins) в Dart Несколько раз от коллег звучал вопрос о том, что не понятно, зачем вообще нужны mixin'ы (примеси) в языке Dart. Я решил посмотреть, что есть на просторах Интернета по этому вопросу. К великому огорчению в статьях, которые удалось найти в основном говорится о том, как использ...

Как запустить стартап, выйти на рынок Китая и получить 15 млн инвестиций 11 мая CEO Last.Backend Саша Калошин выйдет в прямой эфир и будет отвечать на ваши вопросы о tech-стартапах, инвестициях и управлении командой в формате живого интервью. Вы можете задать ему свой вопрос в комментариях и спикер ответит вам в прямом эфире. Зачем приходить н...

[Из песочницы] Классификация Deep Sky объектов и их наблюдение Привет, Хабр! Представляю вашему вниманию адаптированный перевод статьи «Deep Sky Objects and Their Observation» с любезного резрешения автора. Интересная статья, классифицирующая объекты Deep-Sky, описывающая их разную природу образования. Также данная публикация дает край...

Нужны ли дизайнеру метрики? Photo by Lukas Blazek on Unsplash Я работаю в крупной компании и часто замечаю, что дизайнеры строят свои решения на количественных и качественных исследованиях, но пренебрегают цифрами, мол и так сойдет. Давайте разберемся, а можно ли без цифр? Надо ли тратить на них свое ...

[Из песочницы] Что такое Flutter и почему вы должны изучать его в 2020 году Привет, Хабр! Представляю вашему вниманию перевод статьи: "What is Flutter and Why You Should Learn It in 2020" автора Gaël Thomas. Что такое Flutter? Flutter — бесплатный и открытый набор средств разработки мобильного пользовательского интерфейса, созданный компанией Google...

[Перевод] Понимание CSS Grid: Создание Grid-контейнера Перевод «Understanding CSS Grid: Creating A Grid Container» Рейчел Эндрю Хотя технология CSS Grid стала поддерживаться некоторыми браузерами еще в 2017 году, у многих разработчиков пока не было возможности использовать её в своих проектах. Технология CSS Grid привносит множ...

[Перевод] Асинхронные задания в Django с Celery Перевод статьи подготовлен в преддверии старта курса «Web-разработчик на Python». Если в вашем приложении есть какой-то длительный процесс, вы можете обрабатывать его не в стандартном потоке запросов/ответов, а в фоновом режиме. К примеру, в вашем приложении пользователь...

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

JavaScript: 250+ практических вопроса (список + викторина + бонус) Доброго времени суток, друзья! Представляю вашему вниманию список из 250+ практических вопроса по JavaScript с подробными (насколько это возможно и уместно в контексте чеклиста) ответами, возможностью проверить свои знания с помощью викторины, состоящей из 30 случайных в...

[Перевод] Как подготовиться к интервью в YCombinator Один из первых наборов YC. Когда я готовился к интервью зимнего класса 2018 года, я пересмотрел все доступные источники по теме и провел около 20 практических интервью с выпускниками YCombinator. Ниже собрано воедино все, что я узнал. Это руководство – моё личное видение,...

[Перевод] Сортировка в Scala — пример на кошках Привет, Хабр! Выношу на ваш суд русскоязычный перевод моей статьи на Medium: Sorting in Scala — a cat shop example. Статья рассчитана на читателей, знающих синтаксис языка Scala и осведомлённых о базовых инструментах стандартной библиотеки. Читать дальше →

[Перевод] Что же такого особенного в IAsyncEnumerable в .NET Core 3.0? Перевод статьи подготовлен в преддверии старта курса «Разработчик C#». Одной из наиболее важных функций .NET Core 3.0 и C# 8.0 стал новый IAsyncEnumerable<T> (он же асинхронный поток). Но что в нем такого особенного? Что же мы можем сделать теперь, что было невозмо...

[Из песочницы] Как работают реляционные базы данных (Часть 1) Привет, Хабр! Представляю вашему вниманию перевод статьи "How does a relational database work". Когда дело доходит до реляционных баз данных я не могу не думать, что чего-то не хватает. Они используются везде. Существует множество различных баз данных: от небольшог...

Как стать тимлидом фронтендеров и как жить после этого? Cпросите у Ильи Кашлакова В понедельник, 15 июня в 20:00 руководитель фронтенд-отдела Яндекс.Денег Илья Кашлаков будет отвечать на ваши вопросы в прямом эфире. Эфир пройдет в нашем инстаграм-аккаунте. Как задать вопрос и в целом о формате Вы задаете вопросы, а спикер отвечает. Таким образом вы сам...

[Из песочницы] Анатомия каналов в Go Привет, Хабр! Представляю вашему вниманию перевод статьи "Anatomy of Channels in Go" автора Uday Hiwarale. Что такое каналы? Канал — это объект связи, с помощью которого горутины обмениваются данными. Технически это конвейер (или труба), откуда можно считывать или ...

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

[Из песочницы] Визуализируя нейронный машинный перевод (seq2seq модели с механизмом внимания) Привет, Хабр! Представляю вашему вниманию перевод статьи "Visualizing A Neural Machine Translation Model (Mechanics of Seq2seq Models With Attention)" автора Jay Alammar. Sequence-to-sequence модели (seq2seq) – это модели глубокого обучения, достигшие больших успех...

[Из песочницы] ECS back and forth Привет, Хабр! Представляю вашему вниманию перевод статьи "ECS back and forth — Part 1 — Introduction" автора Michele skypjack Caini. ECS back and forth Часть 1 — Введение. Когда я в первые узнал про архитектурный шаблон entity component system, я пошёл искать больш...

[Перевод] Rust для Java разработчиков Представляю перевод статьи автора Evan Cameron, которая может помочь Java разработчикам лучше понять отличия и схожесть этих двух языков — оригинал на сайте автора. Не считая себя достаточно опытным Rust разработчиком, я вряд ли смогу аргументированно участвовать в возможных...

Сыграйте на выпивание с Ричардом Левелордом Греем. Онлайн, без смс и регистраций Вы когда-нибудь мечтали сходить в бар и потусить с легендой своего детства? Тогда легенда выезжает к вам. ЗАВТРА, В субботу 20 июня пройдет прямой эфир с Ричардом Греем в необычном формате: zoom-вечеринка, где вы можете сыграть с Ричардом на выпивание, поболтать с ним о жи...

Применение Flowmon Networks для контроля производительности распределенных приложений и баз данных Статью подготовил Dmitriy Andrichenko | Sales Executive, Russia & CIS | Flowmon Networks Приветствуем Вас на странице нашей новой статьи, посвященной решению задач контроля производительности распределенных сетевых приложений и баз данных. Данная статья является продо...

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

[Из песочницы] 7 трюков с Rest и Spread операторами при работе c JS объектами Привет, Хабр! Представляю вашему вниманию перевод статьи «7 Tricks with Resting and Spreading JavaScript Objects» автора Joel Thoms. Всем привет, на днях коллега по работе скинул мне ссылку на статью на английском языке в которой перечисляются разные методы работы с rest и ...

Wi-Fi 6 во сне и наяву: как новый стандарт избавляет заводы от проводов и почему до глобального внедрения далеко В прошлом году на подмогу к Wi-Fi 5 (IEEE 802.11ac) пришёл новый стандарт — Wi-Fi 6 (IEEE 802.11aх). Он повысил ёмкость и изоляцию устройств, а также (в теории) максимальную скорость соединения. В 2020 году линейку решили дополнить ещё одной версией — Wi-Fi 6E (официальное н...

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

[Из песочницы] Почем Appium для народа В этой статье мы рассмотрим инструмент Appium. Данная статья является вводным материалом для введения в автоматизированное тестирование мобильных приложений. Она покажет с какими трудностями возможно придется столкнуться при использовании данного инструмента. Рассмотрим неб...

FPV Квадрокоптер: Фильтрация в Betaflight (Betaflight 4.1, на новых настройках еще не снимал) Прошлая статья — От земли к FPV Квадрокоптеру: Введение На днях, я все таки решил обновиться до Betaflight 4.2 и все вокруг советуют включить фильтрацию с двухсторонним DShot. К слову она была и в 4.1. Для начала, дав...

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

[Перевод] Минимально жизнеспособный Kubernetes Перевод статьи подготовлен в преддверии старта курса «DevOps практики и инструменты». Если вы это читаете, вероятно, вы что-то слышали о Kubernetes (а если нет, то как вы здесь оказались?) Но что же на самом деле представляет собой Kubernetes? Это “Оркестрация контейнеро...

[Из песочницы] Разложение науки идеологией Привет, Хабр! Представляю вашему вниманию перевод статьи «The Ideological Corruption of Science» автора Lawrence Krauss. Лоренс Краусс. Письмо в газету Wall Street Journal В 1980-х, когда я был молодым профессором физики и астрономии в Йельском университете, на факультете а...

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

Сквозная аналитика вступает в дело: 6+2 отборных статьи на Cossa (по итогам года) Зачем нужна сквозная аналитика и как её строить? И если первый вопрос в 2020 уже мало кто задаст, то ответов на второй — просто непаханное поле. Собрали для вас в одном месте всё ценное про сквозную аналитику, что выходило на Cossa ...

[Перевод] Руководство по инструментарию управления Windows (WMI): основные сведения о WMI-атаках Инструментарий управления Windows (WMI) — это подсистема PowerShell, которая обеспечивает администраторам доступ к мощным инструментам системного мониторинга. Этот инструментарий задумывался как быстрое и эффективное средство системного администрирования, однако далеко не ...

Как устроена графика в Linux: обзор различных сред оформления рабочего стола Эта статья о том, как устроена графика в Linux и из каких компонентов она состоит. В ней много скриншотов с различными реализациями сред рабочих столов.  Если вы не сильно различаете KDE и GNOME или различаете, но хотели бы узнать, какие еще есть альтернативы, то эта статья...

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

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

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

Как делается косплей. Cоздание костюма Advanced Suit Aйзека Кларка из игры Dead Space 2 Зачем и о чем? На хабре мне не попадалось статей освещающих тему косплея с точки зрения того как делаются все эти костюмы, поэтому я решил это исправить и рассказать о том как я делал косплей на персонажа Айзека Кларка из игры Dead Space 2. Думаю о самом понятии косплея, ег...

[Перевод] Руководство Google по стилю в C++. Часть 2 Часть 1. Вступление Часть 2. Заголовочные файлы … Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятн...

[Из песочницы] Происхождение DevOps: что кроется в названии? Привет, Хабр! Представляю вашему вниманию перевод статьи «The Origins of DevOps: What’s in a Name?» автора Steve Mezak. В зависимости от вашей точки зрения, DevOps будет отмечать свою девятую или десятую годовщину в этом году. В 2016 в отчёте компании RightScales о состояни...

Powered by ZeroTier. Практическое руководство по строительству виртуальных сетей. Часть 2 В процессе первых пяти шагов, описанных в статье Powered by ZeroTier. Практическое руководство по строительству виртуальных сетей. Часть 1 мы объединили виртуальной сетью три географически удалённых друг от друга узла. Один из которых расположен в физической сети, два других...

Алгоритм планирования задач на TypeScript. Теория графов наконец-то пригодилась В этой статье я хочу рассказать об алгоритме, который помогает ответить на извечный вопрос всех проектов: Когда проект будет закончен?Более формально проблема звучит так: "Проект состоит из задач, которые могут зависеть друг друга, а также могут иметь один и тех же испо...

[Перевод] Заменяем Redux c помощью Observables и React Hooks Управление состоянием — одна из важнейших задач, решаемых в разработке на React. Было создано множество инструментов в помощь разработчикам для решения этой задачи. Наиболее популярным инструментом является Redux — небольшая библиотека, созданная Дэном Абрамовым, и предназн...

GoLang и OpenCV (OpenVino && Cuda) Всем доброго времени суток. На хабре (да и вообще в интернете) уже не мало статей о работе с OpenCV на Go. Готовый код — это конечно интересно, а более подробную информацию об установке драйверов приходится собирать по кусочкам — постараюсь объединить все нужные телодвижени...

Apple объявила о сплите акций: что это такое и чем грозит инвесторам Компания из Купертино в конце июля 2020 года объявила о сплите акций. Этот шаг приведет к падению акций в цене. В нашей новой статье разбираемся в том, зачем это нужно Apple, и как повлияет на инвесторов в ее акции. Читать дальше →

[Перевод - recovery mode ] 41 термин в дизайне, полезный для UX-исследователя Работа с UX-дизайнерами и знакомство с их словарным запасом — это почти изучение нового языка. Давайте посмотрим на 41 часто используемый дизайнерский термин. Для лучшего взаимопонимания в команде. Читать дальше →

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

[Перевод] Что под капотом компиляторных оптимизаций GraalVM? Продолжаем разбираться с работой GraalVM, и на этот раз у нас перевод статьи Aleksandar Prokopec «Under the hood of GraalVM JIT optimizations», изначально опубликованной в блоге на Medium. В статье есть несколько интересных ссылок, позже мы постараемся перевести и эти статьи...

[Перевод] Побег из привилегированных Docker-контейнеров Перевод статьи подготовлен в преддверии старта курса «Пентест. Практика тестирования на проникновение». Привилегированные контейнеры Docker – это такие контейнеры, которые запускаются с флагом --privileged. В отличие от обычных контейнеров, эти контейнеры имеют root-доступ...

[Перевод] Как обойти капчу-слайдер с помощью JS и Puppeteer Друзья, предлагаю вашему вниманию перевод статьи "How to bypass “slider CAPTCHA” with JS and Puppeteer" автора Filip Vitas. Спам для владельца сайта – огромная проблема. С другой стороны, капчи сводят меня с ума и ухудшают пользовательский опыт. Капчи отстой. Скаж...

Заметки Дата Сайентиста: с чем начать и нужно ли оно? TL;DR это пост для вопросов/ответов про Data Science и о том, как войти в профессию и развиваться в ней. В статьей я разберу основные принципы и FAQ и готов отвечать на ваши конкретные вопросы — пишите в комментариях (или в личке), я постараюсь на все ответить в течение нес...

Зачем PocketBook 627 чехол и как его выбрать Очень часто пользователи спрашивают о том, как правильно подбирать аксессуары для электронных читалок, на что обращать внимание и все в таком духе. Мы решили ответить на этот вопрос максимально понятно, чтобы пользователь, который очень хочет приобрести себе защитный аксессу...

[Перевод] Руководство по Git. Часть №2: золотое правило и другие основы rebase Посмотрим, что происходит, когда вы выполняете git rebase и почему нужно быть внимательным.  Это вторая и третья части гайда по Git из блога Pierre de Wulf в переводе команды Mail.ru Cloud Solutions. Первую часть можно почитать тут. Читать дальше →

[Из песочницы] Unity Editor Adventures: Сериализованная Матрёшка Краткое вступление Как правило, для того чтобы добраться до интересующего нас поля сериализованного свойства, мануальная терапия советует нам использовать метод FindPropertyRelative(), в который прокидывается название переменной. По определённым причинам такой подход не все...

Это мог быть очередной JavaScript-фреймворк Прошлым летом, в процессе подготовки статьи для Хабра, я не поленился упаковать свой шаблон для бэкэнд-приложений на Node.js в npm-пакет, сделав из него cli-утилиту для быстрого старта. Никаких надежд на то, что этим пакетом будет пользоваться кто-то, кроме меня, не было изн...

Кракс! Миллениалы изобрели Python фреймворк Пролог Здравствуй, Хабр! Данная статья посвящена разбору плюсов и минусов очередного Python фреймворка, который увидел свет около недели назад. Итак, небольшое лирическое отступление. Во время всем известных событий, когда нас чуть-чуть самоизолировали, у нас появилось немно...

[Из песочницы] Введение в ASGI: становление асинхронной веб-экосистемы Python Привет, Хабр! Представляю вашему вниманию перевод статьи "Introduction to ASGI: Emergence of an Async Python Web Ecosystem" автора Florimond Manca. "Черепахи рядом с водоемом", Ricard Baraham на unsplash.com Python не замыкается только на Data Science, в...

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

Как работает дисковая подсистема в OpenNebula В последнее время я получаю достаточно много вопросов по поводу организации стораджа в OpenNebula. В виду своей специфики она имеет аж три разных типа хранилища: images, system и files. Давайте разберёмся зачем нужен каждый из них и как их использовать чтобы планировать раз...

Snoop Project невероятный инструмент интернет разведки, которого пользователи рунета ждали так долго — доступен На Github-e выложен OSINT-инструмент, заточенный (в том числе) для поиска %username по СНГ локации Если вам до боли знаком такой софт, как namechk или spiderfoot, то «Snoop Project» вас явно порадует, он даёт «им» фору вместе взятым и это не желтый заголовок «Статья вечерн...

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

[Из песочницы] Обязанности администратора Salesforce: Что должно быть сделано и когда Привет, Хабр! Представляю вашему вниманию перевод «Salesforce administrator responsibilities: What needs to be done and when» автора David Taber. Что администратор Salesforce делает весь день, неделю или месяц? Вот общее краткое изложение. Salesforce администраторы отвечаю...

[Перевод] Концепции, лежащие в основе Web Audio API Доброго времени суток, друзья! В этой статье объясняются некоторые концепции из теории музыки, на основе которых работает Web Audio API (WAA). Зная эти концепции, вы сможете принимать взвешенные решения при проектировании аудио в приложении. Статья не сделает вас опытным ...

В поиске вопросов, или как создать новый отладчик Мы уделяем много внимания инструментам разработки: участвуем в горячих спорах о редакторах (Vim или Emacs?), долго настраиваем IDE под свой вкус, и тщательно выбираем языки программирования и библиотеки, которые с каждым днем становятся все лучше и удобнее. Однако, здесь мож...

[Перевод] Распределенные блокировки с применением Redis Привет, Хабр! Сегодня мы предлагаем вашему вниманию перевод сложной статьи о реализации распределенных блокировок средствами Redis и предлагаем поговорить о перспективности Redis как темы. Анализ рассматриваемого алгоритма Redlock от Мартина Клеппмана, автора книги "Вы...

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

Интересный проект в дружной команде, или сколько стоит нужный работник? Уже в нескольких статьях промелькнули фразы типа «разработчики \ ИТ слишком много кушать», и решения проблемы вида: Так что интересные задачи, позволяющие развивать скиллы, в комфортной среде российских организаций — отличное противодействие привлекательности высоких зарплат...

[Перевод] Создаем Gatling скрипты с помощью VS Code Перевод статьи подготовлен в преддверии старта курса «Нагрузочное тестирование». Предисловие Недавно, благодаря комментарию одного из студентов, изучающих мой курс Gatling Fundamentals, я узнал о том, что вы можете создавать Gatling скрипты с помощью Visual Studio Code. Я,...

Ленивая подгрузка переводов с Angular Если вы когда-нибудь участвовали в разработке крупного angular-проекта с поддержкой локализации, то эта статья для вас. Если же нет, то возможно, вам будет интересно, как мы решили проблему скачивания больших файлов с переводами при старте приложения: в нашем случае ~2300 с...

[Из песочницы] 6 GitHub проектов для веб-разработчиков, на которые стоит взглянуть Привет, Хабр! Представляю вам перевод статьи 6 Github Repos for web developers you should have a look at автора lampewebdev. Однажды я пролистывал ленту dev.to и наткнулся на пост 6 GitHub проектов для быстрой прокачки знаний. Я согласен с автором, что список действительно...

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

Power-line communication. Часть 1 — Основы передачи данных по линиям электропередач Не так давно передо мной встала нетривиальная задачка — собрать устройство, которое могло бы по линиям электропередач (0,4 кВ), в сетях обычных бытовых потребителей, передавать некоторую информацию, а точнее — показания электросчетчиков. Перед началом работы над создание...

[Перевод] REST API на Java без фреймворков Перевод статьи подготовлен специально для студентов курса «Разработчик Java». В экосистеме Java есть много фреймворков и библиотек. Хотя и не так много, как в JavaScript, но они и не устаревают так быстро. Тем не менее, это заставило меня задуматься о том, что мы уже забы...

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

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

[Из песочницы] Как достичь своих целей? Привет, Хабр! Представляю вашему вниманию перевод ранее опубликованной на Хабре статьи «How to achieve goals?». 5 жизненных советов, которые помогут вам достичь своей желаемой цели. Конечно же, не обязательно выполнять их все в указанном порядке. Но самое важное — не просто...

[Из песочницы] Разбираемся с управлением памятью в современных языках программирования Привет, Хабр! Представляю вашему вниманию перевод статьи «Demystifying memory management in modern programming languages» за авторством Deepu K Sasidharan. В данной серии статей мне бы хотелось развеять завесу мистики над управлением памятью в программном обеспечении (далее...

Go-swagger как основа взаимодействия микросервисов Здравствуй, NickName! Если ты программист и работаешь с микросервисной архитектурой, то представь, что тебе нужно настроить взаимодействие твоего сервиса А с каким-то новым и ещё неизвестным тебе сервисом Б. Что ты будешь делать в первую очередь? Если задать такой вопрос ...

Применяем Data Sceince в мирных целях покупки дома Чтобы продать что-нибудь ненужное, нужно сначала купить что-нибудь ненужное, а у нас денег нет. — Трое из Простоквашино Введение Так получилось, что я живу в своей квартире (или кондо по-местному) в Монреале. И однажды, примерно год назад меня посетила мысль что неплохо-бы ...

[Из песочницы] Переосмысление DTO в Java Привет, Хабр! Представляю вашему вниманию любительский перевод статьи “Rethinking the Java DTO” Стивена Уотермана, где автор рассматривает интересный и нестандартный подход к использованию DTO в Java. Я провел 12 недель в рамках программы подготовки выпускников Scott Logic,...

[Перевод] Зачем нужно держать клетки в зоопарке закрытыми В этой статье будет история об одной весьма характерной уязвимости в протоколе репликации в ClickHouse, а также будет показано, как можно расширить плоскость атаки. Читать дальше →

Не все HDMI кабели похожи - на что нужно обратить внимание при покупке - советы канала TechQuickie Перевод видеоматериалов с канала TechQuickie на YT в текстовый формат. Если вам понравится, дайте знать, и я продолжу это делать

[Перевод] Data Science для гуманитариев: что такое «data» Размышления об информации, памяти, аналитике и распределениях Все, что воспринимают наши чувства, — это данные, хотя их хранение в наших черепушках оставляет желать лучшего. Записать это немного надежнее, особенно когда мы записываем это на компьютере. Когда эти записи хорош...

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

Принимаем 10 000 ивентов в Яндекс.Облаке. Часть 2 И снова здравствуйте! Продолжаем нашу серию статей про то, как мы щупали Яндекс.Облако. Давайте вспомним план, по которому мы с вами двигаемся: 1 часть. Мы определились с ТЗ и архитектурой решения, написали приложение на golang. 2 часть (вы сейчас здесь). Выливаем наше при...

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

[Перевод] 9 полезных трюков HTML Приветствую, Хабр! Представляю вашему вниманию перевод статьи «9 Extremely Useful HTML Tricks» автора Klaus. У HTML есть много практических секретов, которые могут вам пригодиться. Но я хочу убедиться, что сайт работает в Internet Explorer и других браузерах. Я использую ...

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

[Перевод] Магические сигнатуры методов в C# Представляю вашему вниманию перевод статьи The Magical Methods in C# автора CEZARY PIĄTEK. Есть определенный набор сигнатур методов в C#, имеющих поддержку на уровне языка. Методы с такими сигнатурами позволяют использовать специальный синтаксис со всеми его преимуществами. ...

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

[Из песочницы] Как собирать проекты в Jenkins, если нужно много разных окружений На Хабре много статей о Jenkins, но мало где описывается пример работы Jenkins и докер агентов. Все популярные инструменты сборки проектов типа Drone.io, Bitbucket Pipeline, GitLab, GitHub actions и другие, могут собирать все в контейнерах. Но как же Jenkins? На сегодняшний...

Web Storage API: примеры использования Доброго времени суток, друзья! В данной статье мы рассмотрим парочку примеров использования Web Storage API или объекта «Storage». Что конкретно мы будем делать? Научимся запоминать время воспроизведения видео. Поработаем с формой входа на страницу. Напишем логику спис...

[Из песочницы] О чем поговорить на собеседовании с выпускником онлайн-курсов по тестированию Немного о себе Всем привет, меня зовут Лилия, я QA lead и преподаватель, последние лет 10 читаю курсы по тестированию в, так сказать, ведущих компаниях отрасли. И конечно, мне очень интересно, как преподают мои коллеги на онлайн-курсах и какие специалисты получаются в резуль...

[Перевод] Введение в ELF-файлы в Linux: понимание и анализ Есть в мире вещи, которые мы принимаем как нечто само собой разумеющееся, хотя они являются истинными шедеврами. Одними из таких вещей являются утилиты Linux, такие, как ls и ps. Хотя они обычно воспринимаются как простые, это оказывается далеко не так, если мы заглянем внут...

[Перевод] Визуализация работы сервис-воркеров (Service Workers) Доброго времени суток, друзья! Вероятно, многие из вас слышали о таком новшестве в экосистеме JavaScript, как сервис-воркеры, которые являются ключевым элементом современной веб-разработки. Сервис-воркеры становятся все более востребованными, в первую очередь, благодаря п...

[Перевод - recovery mode ] Java 14: записи (records preview) В скором времени в грядущей Java 14 появится новая синтаксическая фича — записи (records). После изучения превью, в котором вкратце описано, как выглядят записи и с “чем их едят”, я осмелился адаптировать документ на русский для хабра. Кому интересно — добро пожаловать под к...

Как попасть на стажировку в Facebook и получить оффер в Лондон? Задай вопрос инженеру Facebook Мы уже рассказывали, что создаем новый формат: прямые эфиры с успешными разработчиками и айтишниками, на которых вы можете задать вопрос профессионалу и получить ответ из первых рук. Первый прямой эфир состоится завтра, 5-го мая, в 20:00 по Москве в нашем инстаграм. Читат...

Сказ о том, как сделать машину времени для базы данных и случайно написать эксплойт Доброго времени суток, Хабр. Приходилось ли вам задумываться как поменять время внутри базы данных? Легко? Ну в некоторых случаях да, несложно — linux команда date и дело в шляпе. А если нужно поменять время только внутри одного экземпляра бд если их на сервере несколько? А...

[Перевод] О смерти двойной загрузки и о единстве Windows и Linux Раньше моей рабочей машиной был ноутбук, созданный Apple. Я мог делать на нём практически всё что угодно: разрабатывать программы, писать тексты, сочинять музыку, да и много чего ещё. Но мне не давали покоя мысли о том, что я привязан к экосистеме Apple, о том, что я зависим...

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

Lowkiq. Зачем мы его сделали? Lowkiq — это новый сервер упорядоченной обработки фоновых задач для ruby и redis. Он был создан в компании BIA-Technologies, разрабатывающей логистические решения. В этой статье я расскажу о проблемах обработки фоновых заданий, с которыми мы столкнулись, и о их решении. Чит...

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

Яндекс.Деньги добавили свои сервисы для сбора средств в Google Pay С помощью Яндекс.Денег пользователи теперь могут переводить средства на добрые дела или краудфандинговые проекты через Google Pay. Новая возможность доступна в Я.Соберу, формах и кнопках Яндекс.Денег для сбора средств. Чтобы отправить деньги через Google Pay, не нужно иметь ...

Хабр Q&A 2019: итоги года Подводим итоги на Хабр Q&A: за год вы успели задать более 100 000 вопросов и дать почти 200 000 ответов! В статье вспоминаем самые большие запуски и делимся статистикой. Читать дальше →

[Перевод] Что такое Emergent Communication и почему это нужно знать TL;DR: перевод поста Михаила Нуховича What is Emergent Communication and Why You Should Care: что это такое, зачем это нужно, какие есть точки зрения на задачу и перспективные направления исследований. Обучение с подкреплением, обработка естественного языка, теория игр и фил...

Tarantool: история ускорения поиска в 1С Недавно у наших добрых друзей из крупной розничной сети возникла задача ускорения поиска в 1С. Во-первых, искать нужно было по клиентам (три справочника, 9 текстовых полей, поиск типа %like%) и всего-то по 2,5 млн записей. Сразу скажем, что полнотекстовый поиск и морфология...

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

50/200+ вопросов по JavaScript Доброго времени суток, друзья! Предлагаю Вашему вниманию небольшой интерактив — своего рода викторину по JavaScript, на данный момент состоящую из 50 вопросов. На мой взгляд, решение подобных задач — лучший способ определить свой уровень мастерства. Предисловие Данная ча...

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

Таймер чистки зубов Доброго времени суток, Хабр! Эта статья для тех, у кого не все щетки в ванной имеют таймер, и кто не хочет использовать песочные часы. Читать дальше →

[Перевод] Оптимизация кода на Python с помощью ctypes Перевод статьи подготовлен специально для студентов курса «Разработчик Python». Внимание: код в этой статье лицензирован под GNU AGPLv3. Я написал это руководство, поскольку не смог найти такого, которое будет объединять в себе все полезное о ctypes. Надеюсь, эта статья ...

[Перевод] Что я узнал после более чем 1000 code review За последние 3 года я рассмотрел более 1000 pull (merge) request’ов. За это время я многому научился — в основном тому, как не проверять код, как сделать процесс менее болезненным, что делает код хорошего качества и так далее. Pull request должен делать только одну вещь Это...

[Перевод] Игра в Code Golf: сжатие кода и его сабмит на конкурс платформы AtCoder Привет, Хабр! Представляю вашему вниманию перевод статьи "【コードゴルフ】コードをDeflate圧縮してAtCoderに提出する【圧縮ゴルフ】". Вы когда-нибудь слышали о Code Golf? Это что-то вроде игры, где все стараются написать определенный код максимально маленьким количеством символов. Одно из реше...

[Перевод] Напишем и поймем Decision Tree на Python с нуля! Часть 1. Краткий обзор Привет, Хабр! Представляю вашему вниманию перевод статьи "Pythonで0からディシジョンツリーを作って理解する (1. 概要編)". 1.1 Что такое Decision Tree? 1.1.1 Пример Decision Tree Например, у нас есть следующий набор данных (дата сет): погода, температура, влажность, ветер, игра в гольф. В ...

Ремесло и успех в IT С интересом читаю статьи про бизнес в IT, хотел поддержать в комментариях автора Так ли просто организовать свой бизнес ИТ-специалисту, но потом понял, что хочу высказаться более развёрнуто. Представлюсь как на встрече анонимных алкоголиков. Я — IT-ремесленник. Из 27 лет ст...

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

[Перевод] Анализ библиотеки ИИ ботов из Quake 3 Изучение исходного кода ИИ уже выпущенных игр — превосходный способ изучения хитростей на реальных примерах. Quake 3 Arena — интересный образец, потому что код игры полностью выложен в открытый доступ (за исключением инструментов), а сама игра стала примером архитектуры дви...

Так все же, зачем нужен make? Все началось, казалось бы, с простого вопроса, который сначала ввел меня в ступор — "Зачем нужен make? Почему нельзя обойтись bash скриптами?". И я подумал — Действительно, зачем нужен make? (и самое важное) Какие проблемы он решает? Читать дальше →

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

«Я-Бизнес-Команда». Про личные границы на работе Много говорю о том, что такое границы, зачем они нужны и нужно ли в индустрии ИТ поднимать эту тему. Решила рассказать подробней об этом и уделить внимание тому, что обсуждаем на курсе PSYvIT для управленцев — “Я-бизнес-команда”. Что такое границы? Границы – безоговорочное...

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

[Из песочницы] Ваш C# уже «функциональный», просто позвольте ему это Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «Your C# is already functional, but only if you let it» автора Igal Tabachnik. Несколько дней назад я написал в Твиттере фрагмент кода C#, реализующий FizzBuzz, используя некоторые из новых «фичи» в C# 8....

Чему учат в магистратуре Software Engineering в Питерской Вышке Многие не понимают, чему могут научить в магистратуре по направлению Software Engineering, и считают, что после бакалавриата нужно идти работать и учиться всему прямо там. Стоит ли идти в магистратуру по SE — вопрос сложный, и в этой статье мы отвечать на него не будем, но р...

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

DINS JAVA EVENING (online): троттлинг, Token Bucket и финансовая математика На встрече Владимир Бухтояров из DINS сделает обзор алгоритма Token Bucket, а Дмитрий Янтер из Технологического центра Дойче Банка объяснит, зачем разработчику знать высшую математику. Оба спикера ответят на ваши вопросы. Встречаемся 22 июля в 19:00. Участие бесплатное, но...

Темная Вселенная. Часть 2 И вновь доброго времени суток! Данная статья является продолжением ранее опубликованной статьи о нашей «темной» Вселенной. В данной части мы продолжим рассмотрение различных интересных особенностей в космологии, над объяснением которых бьются множество ученых. В целом я пос...

[Из песочницы] DevOps инструменты не только для DevOps. Процесс построения инфраструктуры автоматизации тестирования с нуля Часть 1: Web / Android Примечание: данная статья является переводом на русский язык оригинальной статьи «DevOps tools are not only for DevOps. Building test automation infrastructure from scratch». Однако все иллюстрации, ссылки, цитаты и термины сохранены на языке оригинал...

Рецепты PostgreSQL: шаблонизатор mustach Для приготовления шаблонизатора mustach нам понадобится postgres и mustach. Можно также воспользоваться готовым образом. Зачем нужен шаблонизатор в базе? Ну, во-первых, если шаблонизатор в базе, то и сами шаблоны тоже должны быть в базе. А зачем нужно хранить шаблоны в базе...

[Из песочницы] Zimbra — Генерация HTML подписи на основе данных LDAP Введение В Веб-Админке Zimbra отсутствуют инструменты для генерации подписи к письмам. Перелопатив кучу мануалов — понял, что ни один из Них меня не устраивает. Задача кажется тривиальной, но решения в лоб — найти сразу не удалось. Надеюсь, эта статья поможет кому-то сэконо...

[Перевод] «Ленивая» загрузка с помощью Intersection Observer API Доброго времени суток, друзья! В данной статье мы познакомимся с Intersection Observer API, новым мощным инструментом для «ленивой» загрузки изображений и других элементов на странице, поддерживаемым всеми современными браузерами. Мы можем использовать этот инструмент для...

[Перевод] Обработка сетевых данных на лету Перевод статьи подготовлен в преддверии старта курса «Пентест. Практика тестирования на проникновение». Аннотация Разнообразные виды оценки безопасности, начиная от регулярного тестирования на проникновение и операций Red Team до взлома IoT/ICS-устройств и SCADA, подразум...

[Перевод] volatile vs. volatile Всем привет! Мы подготовили перевод данной статьи в преддверии старта курса «Разработчик C++» Повесть о двух, казалось бы, похожих, но все же разных инструментах Херб — автор бестселлеров и консультант по вопросам разработки программного обеспечения, а также архитектор П...

9 четких инструментов для изучения и прокачки английской лексики В Оксфордском словаре английского языка почти 450 000 слов! Но если вы учите язык как иностранный, их совсем не нужно запоминать все и сразу. Чтобы полноценно общаться на английском языке, вполне достаточно всего лишь 2000–3000 слов. При должном усердии и небольшом количе...

[Перевод] Антипаттерн “Репозиторий” в Android Перевод статьи подготовлен в преддверии старта курса «Android Developer. Professional». Официальное руководство по архитектуре приложений Android рекомендует использовать классы репозитории (Repository) для «предоставления чистого API, чтобы остальная часть приложения мог...

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

Хакатоны. Как выжать максимум и выжить Доброго всем времени суток! Меня зовут Александр Михалин — я .NET разработчик в компании “Рексофт”. За моей спиной 7 хакатонов, причем один в качестве члена жюри. Я не спал 8 ночей, выпил 52 чашки кофе, 15 банок редбулла, со мной в команде побывали 24 человека. Сегодня я х...

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

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

Почему разрабатывать беспилотные автомобили интереснее, чем делать Алису? ЗАВТРА, 18 мая в 20:00 специалист по Data Science и машинному обучению Борис Янгель будет отвечать на ваши вопросы о нейросетках и Machine Learning в формате живого интервью в нашем инстаграм-аккаунте. Вы можете задать ему свой вопрос в комментариях к этому посту и спикер ...

Как визуализировать граф Spring Integration с помощью Neo4j? Фреймворк Spring Integration умеет отдавать текущее состояние всех EIP-компонентов и их связей в виде JSON-графа. Это кажется очень удобным для изучения и отладки, но увы, ни один из нагугливаемых инструментов (коих всего-то раз /два) не даёт достаточной гибкости для визуал...

[Перевод] Малоизвестные, но популярные JS-фреймворки для фронтенда Не так давно мы, создавая динамические веб-приложения, использовали для работы с DOM чистый JavaScript или jQuery. С тех пор появилось много замечательных JavaScript-фреймворков и библиотек. Они помогают разрабатывать проекты, которые, по привлекательности и удобству, превос...

Девелопишь на .NET Core? Го в Ubuntu, я создал Photo by Kevin Horvat Все 12 лет своей карьеры я работал с .NET и был крепко привязан к Windows и проприетарным инструментам разработки. Но, спасибо Microsoft, .NET Core все изменил и теперь разрабатывать для .NET можно почти на чем угодно и в чем угодно. Дело за малым — пе...

[Перевод] Веб-разработчику: 10 полезных инструментов Статья, перевод которой мы публикуем сегодня, посвящена 10 полезным инструментам, которые предназначены для веб-разработчиков. Автор материала считает, что это — как раз такие инструменты, которые позволяют, как говорится, «работать с умом, а не до ночи». Читать дальше &r...

Maltego Часть 5. Твое лицо тебя сдало Здравствуйте, дорогие друзья. Сегодня поговорим о более тяжелой артиллерии в рамках OSINT, а именно, о применении технологии распознавания лиц от Social Links для Maltego. Если не читали предыдущие статьи цикла о Maltego, то сейчас — самое время: Часть 1 — Что такое Malt...

[Из песочницы] О команде ракетчиков, которые смогут Немного о себе Так случилось, что я после школы поступил учиться в Московский авиационный институт (МАИ) на 601 кафедру, аэрокосмический факультет. Учился я проектированию космических аппаратов и разгонных блоков. С 2004 года я пошёл работать в проектный отдел КБ «Салют» (ФГ...

[Перевод] RICE: Простая приоритезация для Product-менеджеров Перевод статьи подготовлен специально для студентов курса «Product Manager IT-проектов» Проблемой, которая возникает постоянно при построении дорожной карты продукта, является распределение приоритетов. Как вы решаете над чем нужно работать в первую очередь? Если вы вл...

[Из песочницы] Внесите эти изменения, чтобы соответствовать стандартам доступности веб-дизайна Привет, Хабр! Предлагаю Вашему вниманию перевод статьи «Make These Changes to Meet Web Design Accessibility Standards» автора Richard Pilton Что такое доступность? Доступность (всё чаще мы её так и называем Accessibility) — это дизайн продуктов, устройств или услуг, которые...

Парсинг сайта кинотеатра на Golang Всем привет, в этой статье мы рассмотрим небольшой пример кода, написанный для сбора данных с сайта на популярном сегодня языке программирования Go. Эта статья будет особенно интересна тем, кто много слышал о Go, но пока еще не попробовал его самостоятельно. Для одного из...

Фишинг icloud и где они обитают Внимание! Несмотря на то, что для работы над этой статьей я потратил не один десяток часов, но ты все еще можешь можешь в ней поучаствовать. Если у тебя чешутся руки — попробуй осилить этот текст. История больше похожа на комикс, так как содержит более 50 изображений, поэто...

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

[Из песочницы] В одной лодке с «ублюдком»: 11 продвинутых советов по использованию Git *"ублюдок" — вольный перевод слова "git" — "an unpleasant or contemptible person", "неприятный или презренный человек". В комментариях к статье 15 базовых советов по Git для эффективной работы каждый день развернулась дискуссия на тем...

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

Использование Intel Processor Trace для трассировки кода System Management Mode Эта статья посвящена тестированию возможности использования технологии Intel Processor Trace (Intel PT) для записи трассы в System Management Mode (SMM) режиме. Работа была выполнена в рамках Summer Of Hack 2019. Автор работы: @sysenter_eip. Большинство использованных инст...

Избавляемся от рутины со своим плагином для PhpStorm Привет, Хабр! Я тружусь в команде Антиспама, и, как и у большинства бэкенд-разработчиков Badoo, большая часть времени у меня уходит на работу с PHP-кодом. С этой работой связано много специфических проблем и задач, которые можно решить или упростить. Когда мне надоело вруч...

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

Яндекс.Деньги добавили свои сервисы для сбора средств в Google Pay С помощью Яндекс.Денег пользователи теперь могут переводить средства на добрые дела или краудфандинговые проекты через Google Pay. Новая возможность доступна в Я.Соберу, формах и кнопках Яндекс.Денег для сбора средств.  Чтобы отправить деньги через Google Pay, не нужно ...

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

Коронавирус: Возможные последствия для общества, экономики и медицины „То, что принято без доказательств, может быть отвергнуто без доказательств.“ — Эвклид. Пост «Коронавирус: почему надо действовать прямо сейчас», как и оригинал перевода собрал много внимания аудитории по вполне понятным причинам. Поскольку всё в мире должно находиться в ра...

«Резни не будет» — рассказ о переводе «Червя» В конце прошлого года случилось давно ожидаемое литературное событие — группа переводчиков, которая в течении пяти лет переводила роман «Червь» известного канадского писателя Джона МакКрэя, пишущего под псевдонимом «Wildbow», наконец-то завершила работу. Если вы не слыша...

Полевые исследования концепции «Documentation as code» Всем привет! Меня зовут Денис Олейник, я работаю техническим директором в 1Service. В нашей компании мы достаточно много времени уделяем работе с требованиями. По мере обретения опыта мы стали осознавать, что инструменты, обычно используемые при разработке программных проду...

[Перевод] Обзор Keras для TensorFlow Перевод обзорного руководства с сайта Tensorflow.org. Это руководство даст вам основы для начала работы с Keras. Чтение займет 10 минут. Читать дальше →

Гетерогенное программирование и oneAPI Toolkit. Импровизированная лекция эксперта Intel В рамках рубрики «Задайте вопрос эксперту Intel» мы попросили ведущего специалиста Intel Константина Владимирова ответить на вопросы, связанные с гетерогенным программированием, тулкитом oneAPI и смежными интересными вещами. Результат превзошел все наши ожидания. Константи...

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

[Перевод] Мой новый стек веб-технологий для 2020 года Помните те времена, когда стеки веб-технологий были простыми? Когда уровни этих стеков можно было обозначить в виде четырёхбуквенного сокращения вроде LAMP, LEMP или LEPP? Когда всё, что было нужно для создания и поддержки сайтов, сводилось к вполне обычному железу, к какому...

[Перевод] Отслеживаем прогресс выполнения в Python Зачем нужны индикаторы прогресса? Индикаторы прогресса (progress bar) — визуальное отображение процесса работы. Они избавляют нас от необходимости беспокоиться о том, не завис ли скрипт, дают интуитивное представление о скорости его выполнения и подсказывают, сколько времени...

Инструменты создания бэкапов PostgreSQL. Андрей Сальников (Data Egret) Предлагаю ознакомиться с рашифровкой доклада Андрей Сальников из Data Egret "Инструменты создания бэкапов PostgreSQL" . В конце обновленная сводная таблица по инстрментам Данный доклад посвящен доступным инструментам бэкапирования PostgreSQL. Логические backup, бин...

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

[Из песочницы] Побег от скуки — процессы ETL В конце зимы и начале весны, появилась возможность поработать с новым для меня инструментом потоковой доставки данных Apache NiFi. При изучении инструмента, все время не покидало ощущение, что помимо официальной документации, нелишним были бы материалы "for dummies"...

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

[Перевод] Реализация SOLID и слоистой архитектуры в Node.js с TypeScript и InversifyJS Привет, Хабр! Предлагаю вашему вниманию перевод статьи Implementing SOLID and the onion architecture in Node.js with TypeScript and InversifyJS автора Remo H. Jansen В этой статье мы рассмотрим архитектуру, известную как слоистая (onion). Слоистая архитектура — подход к пост...

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

[Из песочницы] Как настроить автоматическую съемку при улыбке за полчаса с помощью HUAWEI ML Kit Один из сервисов, к которому было больше всего внимания на презентации Huawei HMS Core 4.0, — это сервис машинного обучения ML Kit. Для чего нужен сервис ML Kit? Какие проблемы он может решить при разработке? Сегодня представляю вашему вниманию одну из самых важных функций...

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

T+ Conf 2019: Tarantool в Аэрофлоте, или MDM на лету Сегодня публикуем расшифровку доклада Николая Шевцова и Рустама Кильдиева с T+ Conf 2019 «Tarantool в Аэрофлоте, или MDM (Master Data Management) на лету». Из доклада вы узнаете: Зачем нужен MDM? Зачем нужен риалтайм? Data Science — это не только Jupyter Notebook. Плюсы ...

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

[Из песочницы] Кастомные SwiftLint Rules Привет, Habr! Меня зовут Алексей, я iOS Developer в компании FINCH. Скоро Новый год — самое время чтобы начать жить по-другому, а поможет в этом такая классная штука как SwiftLint. В статье я расскажу, почему ее обязательно нужно внедрять во все проекты, включая legacy и pet...

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

[Из песочницы] 6 самых распространённых ошибок разработчиков при написании HTML и CSS Привет, Хабр! Представляю вашему вниманию перевод статьи «The 6 most common mistakes developers when writing HTML and CSS» автора Stas Melnikov. Использование атрибута placeholder вместо элемента label Часто разработчики используют атрибут placeholder вместо элемента label....

Небольшой ликбез по водоподготовке Добрый день! Я занимаюсь уже более 6ти лет системами водоочистки, но уровня водоснабжения поселков и городов. Читая статьи и комментарии и вопросы в личных сообщениях решил составить маленький ликбез по водоочистке, который пригодится в том числе и для домашнего использовани...

[Из песочницы] Карманное руководство по Z3 Преамбула "Человеческий мозг это пустой чердак. Дурак так и делает: тащит туда нужное и не нужное. И наконец наступает момент, когда самую необходимую вещь туда не запихнешь, или наоборот не достанешь..." В.Б. Ливанов (из к/ф "Шерлок Холмс и доктор Ватсон&qu...

Прикладное целеводство. Доклад Яндекса Зачем нужны цели? Как их формулировать? Какие проблемы могут возникнуть? По случаю Я.Субботника Pro я подготовил доклад, основанный на нескольких годах опыта ведения целей для команд в Яндексе. Читать дальше →

[Перевод] Понимание CSS Grid (2 часть): Grid-линии Приветствую! Представляю вашему вниманию перевод статьи «Understanding CSS Grid: Grid Lines» автора Rachel Andrew В первой статье из серии "Понимание CSS Grid" мы рассмотрели, как создавать родительский grid-контейнер и различные свойства, применяемые к данному эл...

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

Как Программисту 1С стать Java developer'ом Несколько лет назад, когда я искал пути из программистов 1С в Java developer'ы — я бродил впотьмах, пытаясь нащупать дверь, в существовании которой был не уверен. Я пытался найти истории успеха, но кроме пары комментариев ничего не нагуглил. Мир Java выглядел огромным, а кол...

[Перевод] 9 метрик, которые могут иметь значение для современных команд по разработке ПО Перевод статьи подготовлен в преддверии старта курса «Team Lead 2.0». Как я отмечал в статье «Why metrics don’t matter in software development unless you pair them with business goals", выбор метрик нужно продумывать очень тщательно, чтобы дать ответы на вопросы, кот...

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

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

Опыт создания web-приложения с Pony ORM Привет, Хабр! Недавно передо мной встала задача написать на Python web-приложение для разделения счёта в ресторане между участниками трапезы. Так как нужна DB для хранения данных о заказах и пользователях, встал вопрос выбора ORM для работы с базой. Разработка велась на Flas...

Нетехническая статья про технические статьи Мне часто говорят – эй, где технические статьи? Чё ты всякую чушь пишешь, про менеджеров, директоров, отношения с персоналом, корпоративные дрязги, ноешь про бессмысленность нашей работы и вообще. Мы хотим технические статьи! Я, если честно, плохо понимаю, что такое «технич...

Опасно ли держать открытым RDP в Интернете? Нередко я читал мнение, что держать RDP (Remote Desktop Protocol) порт открытым в Интернет — это весьма небезопасно, и делать так не надо. А надо доступ к RDP давать или через VPN, или только с определённых "белых" IP адресов. Я администрирую несколько Windows Serv...

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

Подборка VR-шлемов для промышленных задач Чаще всего люди покупают себе шлем виртуальной реальности (VR) для того, чтобы использовать его для развлечения. Ведь платформы Steam, Oculus Store и Windows всем знакомы по огромному количеству игр! Однако в настоящее время растет спрос на индустриальный VR, возможности кот...

[Перевод] JavaScript tree shaking, like a pro Это перевод статьи об оптимизации и уменьшении размера бандла приложения. Она хороша тем, что тут описаны best practices, советы, которых стоит придерживаться, чтобы тришейкинг работал и выкидывал неиспользуемый код из сборки. Она будет полезной многим, потому что сейчас все...

Нужна ли дикторская озвучка роликам о приложениях и веб-сервисах? Нужен ли трейлерам, туториалам и коротким рекламным видео, посвящённым приложениям и веб-сервисам, голос диктора? Когда от него можно отказаться? Чем можно компенсировать отсутствие голосового комментария в ролике? Давайте разберём на примерах! Заодно посмотрим, как можн...

Опыт конвертирования кода C# в код Rust Постановка задачи Код на языке C# нужно перевести в код на Rust. Точнее, требуется такая процедура перевода (разработка продолжается на C#), чтобы в любой момент можно было получить работающий код на Rust. Эту задачу я решал для языков Java, Python, JavaScript и PHP, написав...

[Перевод] Продуманный front-end. Правильная архитектура для быстрых сайтов Привет, Хабр! Мы давно обходили вниманием тему браузеров, CSS и accessibility и решили вернуться к ней с переводом сегодняшнего обзорного материала (оригинал — февраль 2020). Особенно интересует ваше мнение об упомянутой здесь технологии серверного рендеринга, а также о том...

Изучаем VoIP-движок Mediastreamer2. Часть 5 Материал статьи взят с моего дзен-канала. Обнаружитель тонального сигнала В прошлой статье мы создали измеритель уровня сигнала. В этой мы научимся обнаруживать тональный сигнал. В старые времена, когда не в каждой семье был телевизор, и у половины из них каналы переключали...

[recovery mode] TOP12 междисциплинарных научных открытий 2019 года Спойлер! В статье возможно самое интересное из мира науки за 2019 год. Но это не точно. Коротко о нас — мы белоруские научные скауты, молодость которых еще только разбивается о гранит реальности. Мы проводим те научные мероприятия, которые считаем нужными и потому что можем...

[Из песочницы] Ваше утверждение на 100% правильно, только упускает всю суть Привет, Хабр! Представляю вашему вниманию перевод статьи «Your statement is 100% correct but misses the entire point». Представьте, что где-то в Интернете обсуждают языки программирования. Один из архитектурных вопросов, который могут обсуждать, это сборщик мусора. Один уча...

[Перевод] Пять вопросов о Ceph с пояснениями Что нужно знать о Ceph, хранилища с открытым исходным кодом, чтобы решить, подходит ли оно вашей компании. В статье будет сравнение с альтернативными объектными хранилищами, а также рассмотрена оптимизация Ceph. Читать дальше →

Covid-19: зачем мы сидим на карантине, и ответы на другие вопросы Привет Хабр. Изначально я не планировал публиковать здесь статью про коронавирус, аналитики на хабре уже более чем достаточно. Однако, читая разные местечковые форумы и соцсети, я с удивлением обнаружил сколько достаточно вредных мифов гуляет в сети, и что обычные люди, не ...

О публикациях в СМИ. Консультации по SEO-продвижению. В гостях у нас Александр Нигматулин Публикации в СМИ — один из основных инструментов бесплатного PR для продвижения. Конечно, можно обойтись и без них, но зачем упускать такую возможность заявить о себе? Мы расскажем, как это сделать бесплатно и заставить С...

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

Как работают профайлеры в Ruby и Python? Перевод статьи подготовлен в преддверии старта продвинутого курса «Разработчик Python». Всем привет! В качестве аперитива к профайлеру на Ruby я хотела рассказать о том, как работают уже существующие профайлеры на Ruby и Python. Также это поможет дать ответ на вопрос, к...

Укрощая зверя: legacy-код, тесты и вы Legacy-код — это «старый» код, возраст которого может быть как 2 месяца, так и 10 лет. Часто его писали разработчики, о которых в компании смутно помнят. Возможно, их вообще не было, а legacy-код родился вместе со Вселенной во время Большого Взрыва. С тех пор требования к не...

[Перевод] 8 важных веб-приложений для разработчиков Предлагаем вам познакомиться с переводом статьи Jamie Bullock, опубликованной на сайте medium.com. Автор рассказывает, какие веб-приложения он обычно использует в работе. Читать дальше →

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

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

[Перевод] 10 идей из Human Interface Design Guidelines от Apple Заслуживающие внимания рекомендации из гайдлайнов по iOS Последние несколько месяцев я разрабатывал приложение для IOS и постоянно обращался к Human Interface Design Guidelines от Apple. Я считаю это руководство обязательным для прочтения любым начинающим или нынешним диз...

[Перевод] Краткое руководство по разработке чартов в Helm Unsplash by Frank Eiffert Helm — мощный инструмент для применения, обновления и управления приложениями в Kubernetes. Сообщество Helm создает множество чартов с открытым исходным кодом. Вы можете развернуть Redis, Nginx или Prometheus Operator с помощью одной команды. И они...

Онлайн-хакатон проектов для самозанятых: 500 тыс. рублей для своей идеи и поддержка от ФНС 23-26 апреля Wallet One, ФНС России и Russian Hackers проводят онлайн-хакатон для разработчиков, студентов, fintech-специалистов, стартапов и вообще всех желающих предложить идею сервиса для самозанятых. Хакатон называется SMZ Hack, к участию приглашаются как команды, т...

[Перевод] Как создать свой первый open source проект на Python (17 шагов) Каждый разработчик ПО должен знать как создать библиотеку с нуля. В процессе работы Вы можете многому научиться. Только не забудьте запастись временем и терпением. Может показаться, что создать библиотеку с открытым исходным кодом сложно, но Вам не нужно быть потрепанным ж...

[Перевод] Притягательность стоицизма для богатых и влиятельных Ада Палмер – историк, романист, композитор и профессор исторического факультета Чикагского университета. Она изучает вопросы гетеродоксии, ереси, свободомыслия, цензуры и информационного контроля, возрождения классической мысли после Средних веков и ее влияния на науку, рели...

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

Утилиты nanoCAD СПДС. Найти и заменить текст Нередко возникают ситуации, когда в чертеже нужно найти и заменить то или иное слово. В nanoCAD с модулем СПДС для решения такой задачи предусмотрена утилита Найти и заменить (SPFIND, FIND, ПОИСК). Этот инструмент используется для поиска и замены строковых значений в объек...

[Перевод] Автоматические скриншоты iOS с помощью XCTestplan и XCode 11 В Райффайзенбанке несколько мобильных приложений, которые должны работать на самых разных девайсах и операционных системах, поэтому мы стараемся автоматизировать рутинные процессы в тестировании. Эта статья показалась нам полезной, и мы решили ее перевести. foto source: u...

Ставим задачи на развитие (в кровавом enterprise и не только) Забегает молодой парень в больницу: — Доктор, сделайте мне кастрацию, срочно! — ??? — Срочно, доктор, некогда объяснять! Доктор делает кастрацию. Наутро парень приходит в себя от наркоза, его спрашивают, в чем дело, собственно? — Понимаете, я собираюсь жениться на еврейк...

Kubernetes за 3 дня. Просто о сложном Можно ли изучить Kubernetes — такую сложную и глубокую технологию — за три дня? Слёрм запустил «Вечернюю школу», где базовый курс по Кубернетес можно пройти за 4 месяца. В честь этого события узнаем у Павла Селиванова, архитектора Kubernetes-решений, Certified Kubernetes Ad...

[Из песочницы] RIPE Atlas Всем доброго времени суток! Свою дебютную статью на habr хочу посвятить весьма интересной теме – системе контроля качества сети Интернет RIPE Atlas. Частично поле моих интересов затрагивают вопросы исследования Интернета или киберпространства (термин стремительно набирает по...

Современная сборка 2020 для frontend. Gulp4 Начало Посмотрев на календарь, я понял, что уже 2020, а посмотрев на свою сборку, которая была с 2018 года, я понял, что пора её менять. В этой статье мы разберем структуру проекта, плагины (минимальный набор функционала) и их новые возможности, которые добавились за такое б...

Секция Frontend на DUMP2020: вангуем, что снова будет аншлаг. Топ докладов прошлого года и темы этого Кто согласен, что современный фронтенд — это сложно, поднимите руки! Ради чего мы мучаемся с настройкой Webpack? Почему реализация SSR требует писать столько кода, и нужен ли он нам вообще такой ценой? Кто виноват и что мы, как разработчики, можем сделать? Мы стараемся отве...

Изучаем VoIP-движок Mediastreamer2. Часть 3 Материал статьи взят с моего дзен-канала. Улучшаем пример тонального генератора В предыдущей статье мы написали приложение тонального генератора и с его помощью извлекли звук из динамика компьютера. Теперь мы обратим внимание на то, что наша программа, заканчивая работу, не ...

[Перевод] Как работает гистограмма Prometheus? Перевод статьи подготовлен в преддверии старта курса «Мониторинг и логирование: Zabbix, Prometheus, ELK». Ранее мы рассматривали счетчик (counter), измеритель (gauge) и сводку (summary). Теперь же давайте поговорим о том, как работает гистограмма (histogram) в Prometheus....

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

Как сделать бота, который превращает фото в комикс. Часть вторая. Обучение модели ⇨ Первая часть И снова здравствуйте! Как вы могли заметить, праздники несколько подкосили график выхода статей. Думаю, многие за это время успели если не полностью обучить свою модель, то хотя бы поэкспериментировать с различными наборами данных. 1. Ставим дистрибутив 2. ...

Медузы-киборги из США могут стать нашими новыми морскими разведчиками В настоящее время нами исследовано всего 5-10 % Мирового океана и для расширения масштабов его изучения нужно придумать нечто новое. Один из любопытных и перспективных вариантов – применение медуз-киборгов, которые могли бы носить датчики и постоянно изучать окружающую ...

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

Изучаю Akka.NET: Сервер простой онлайн игры Привет, Хабр! Решил я значит попробовать переписать тот сервер что делал с MS Orleans на Akka.NET просто чтобы попробовать и эту технологию тоже. Если вам интересно что получилось до добро пожаловать под кат. Читать дальше →

Временные ограничения для внешних интерфейсов ПЛИС Здравствуйте. В данной статье я хочу по возможности максимально просто и понятно рассказать о том, как рассчитываются временны́е ограничения (timing constraints) на синхронные интерфейсы ПЛИС. Просто — не значит коротко, но зато простыми словами, которые вы сможете легк...

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

[Из песочницы] Функциональный Powershell с классами — не оксюморон, я гарантирую это Привет, Хабр! Представляю вашему вниманию перевод статьи "Functional PowerShell with Classes. I promise it’s not an oxymoron" автора Christopher Kuech. Объектно-ориентированная и функциональная парадигмы программирования могут казаться не в ладах друг с другом, но ...

[Перевод] Как стать DevOps инженером за полгода или даже быстрее. Часть 5. Развертывание Как стать DevOps инженером за полгода или даже быстрее. Часть 1. Введение Как стать DevOps инженером за полгода или даже быстрее. Часть 2. Конфигурирование Как стать DevOps инженером за полгода или даже быстрее. Часть 3. Версии Как стать DevOps инженером за полгода или даж...

Rust. Borrow checker через итераторы Привет, Хабр! Я уже около года изучаю и, в свободное время, пишу на расте. Мне нравится как его авторы решили проблему управления памятью и обошлись без сборщика мусора — через концепцию заимствования. В этой статье подойду к этой идее через итераторы. Последнее время scal...

Изучаем Kubernetes: базовая программа 14-16 мая, продвинутая 18-20 мая Если вы уже работаете с Kubernetes, посмотрите на программу продвинутого курса. Там будет много тонкостей и сложностей, включая большой новый блок по Istio. Если вам нужно быстро познакомиться с Kubernetes, чтобы влиться в команду или начать самостоятельные эксперименты не с...

[Перевод] Как Java 8 поддерживается в Android Привет, Хабр! Предлагаю вашему вниманию перевод замечательной статьи из цикла статей небезызвестного Джейка Вортона о том, как происходит поддержка Андроидом Java 8. Оригинал статьи лежит тут Читать дальше →

[Из песочницы] Падение популярности PHP: не все так однозначно? Привет, Хабр! Представляю вашему вниманию перевод статьи "PHP in decline: The rise and fall of a programming language" автора Сара Шлотхауэр (Sarah Schlothauer). Когда-то PHP был одним из самых популярных языков программирования, однако на сегодняшний день он продо...

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

Зачем нужна новая POSIX-подобная файловая система Поговорим о том, как устроена ФС Hyperdrive, и тех, кто уже начать её использовать. Читать дальше →

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

INVESTMENT-READY Или что следует иметь в виду, создавая стартап. //при чем здесь котик? Что за странный вопрос ?? ПРЕДИСЛОВИЕ Прочел несколько постов от людей, которые провалили стартапы и давали советы на тему чего не следует делать (сорри, хотел дать на них линки, но потерял). Собир...

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

[Из песочницы] Сети для начинающего IT-специалиста. Обязательная база Примерно 80% из нас, кто заканчивает университет с какой-либо IT-специальностью, в итоге не становится программистом. Многие устраиваются в техническую поддержку, системными администраторами, мастерами по наладке компьютерных устройств, консультантами-продавцами цифровой тех...

[Перевод] Автоматизация тестирования. Да или нет? Перевод статьи подготовлен в преддверии старта курса «Python QA Engineer». Прежде чем спрашивать: «Что автоматизировать?», нужно ответить на такой вопрос: «Рационально ли вообще автоматизировать что-либо в рамках текущего проекта?». Если ответ положительный (что означает...

Kubernetes для тех, кому за 30. Николай Сивко (2018г) Мы в okmeter.io в какой-то момент поняли, что нам тоже нужен k8s в production, хотя у нас нет даже CI/CD, но есть задача делить общий пул серверов между приложениями и достаточно легко добавлять мощности в кластер. При этом был ряд обстоятельств, которые усложняли внедрение...

[Из песочницы] PRESENT — ультралегкое блочное шифрование (перевод оригинальной статьи PRESENT: An Ultra-Lightweight Block Cipher) Привет, Хабр! Привожу тут перевод оригинальной статьи «PRESENT: An Ultra-Lightweight Block Cipher» за авторством Robert B. Weide Богданова, Лендера, Паара, Пошмана, Робшава, Сеурина и Виккелсоя. Аннотация После внедрения AES потребность в новых алгоритмах блочного шифрова...

Безопасная загрузка в i.MX6 Безопасная загрузка в i.MX6 Разрабатывая любой проект для встроенных систем разработчик должен решать два дополнительных вопроса: Как защитить прошивку от подмены в изделии; Как защитить ПО от копирования. В данной статье описано как защитить процессор i.MX6 от подмены за...

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

Шифрование TLS-трафика по алгоритмам ГОСТ-2012 c Stunnel В этой статье я хочу показать, как настроить Stunnel на использование российских криптографических алгоритмов в протоколе TLS. В качестве бонуса покажу, как шифровать TLS-канал, используя алгоритмы ГОСТ, реализованные в криптоядре Рутокен ЭЦП 2.0. Но для начала давайте вооб...

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

16 советов по проведению митапов от трех «серийных митаперов». Leader-IT events #1 В IT митап больше чем митап: он и инструмент нетворкинга, и источник знаний, и формат досуга. А для организатора — способ показать свой профессионализм, усилить личный бренд в отрасли, завести полезные знакомства. Кажется, все вокруг проводят митапы, и возможно, вам тоже хоч...

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

[Перевод] Unity Addressables: памяти хватит всегда Вы руководите командой из нескольких программистов и художников, работающих над портированием красивой VR-игры на PS4 под Oculus Quest. У вас есть на это шесть месяцев. Каким будет ваш первый ход? Давайте попробуем воспользоваться Unity Addressables. Вы понимаете, что прид...

Agile в ИТ-компаниях. Как увидеть лес за деревьями В этой статье хотелось немного поговорить о том, как используется Agile в ИТ-компаниях. И начнем сразу с главного: для большинства таких компаний Agile в виде Scrum, Kanban, Lean или XP – это не просто эфемерная атмосфера всеобщей гибкости, а вполне себе конкретный производс...

Сколько стоит сделать ролик об игре своими силами Предположим, у вас есть игра и команда, которая её разрабатывает. Вам нужен ролик о своей игре и вы пока не решили, делать его своими силами или отдать на аутсорс. Давайте посмотрим, как может сложиться ситуация, если вы выберете первое: создать ролик самостоятельно. Из э...

Как (Android) разработчику найти первую работу? Автор канала Android Live рассказал о том, как Android-разработчику найти первую работу.  Недавно получил вопрос от подписчика: Привет! Какие основные вопросы могут задать джуну на собеседовании? И как Android-разработчику найти первую работу? Сегодня хочу поделиться своим о...

[Перевод] О роли фронтенд-разработчика Привет, Хабр! Представляем вашему вниманию перевод статьи фронтенд-разработчика из MediaMonks Рональда Мендеса. Будучи родом из Венесуэлы, Рональд перебрался в Аргентину и построил успешную карьеру, а благодаря своему большому интересу к дизайну и анимации стал одним из член...

[Из песочницы] Разработка встроенного ПО: введение Привет, Хабр! Представляю вашему вниманию перевод статей Chris Svec, оригинал здесь. Публикуется с разрешения автора по лицензии CC-A-NC-ND. Embedded software engineering 101: введение Я запускаю цикл статей по обучению разработке встроенного программного обеспечения. Мы на...

Ваша первая нейронная сеть на графическом процессоре (GPU). Руководство для начинающих В этой статье я расскажу как за 30 минут настроить среду для машинного обучения, создать нейронную сеть для распознавания изображений a потом запустить ту же сеть на графическом процессоре (GPU). Для начала определим что такое нейронная сеть. В нашем случае это математиче...

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

Устройство Helm и его подводные камни Typhon freight hauler concept, Anton Swanepoel Меня зовут Дмитрий Сугробов, я разработчик в «Леруа Мерлен». В статье расскажу, зачем нужен Helm, как он упрощает работу с Kubernetes, что поменялось в третьей версии и как с его помощью обновлять приложения в продакшене без п...

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

Программист 1С. Где взять ПО для обучения? Всем привет. В июле OTUS запускает курс «Программист 1С», в рамках которого можно будет прокачаться до уровня ведущего 1С-программиста, а также подготовиться к сертификации «1С: специалист». Специально к началу занятий преподаватель курса Дмитрий Котлов подготовил полезную з...

Трюки для обработки метрик в Kapacitor Скорее всего, сегодня уже ни у кого не возникает вопрос, зачем нужно собирать метрики сервисов. Следующий логичный шаг – настроить алертинг на собираемые метрики, который будет оповещать о любых отклонениях в данных в удобные вам каналы (почту, Slack, Telegram). В сервисе он...

7 привычек, которые превратят любого интроверта в мастера коммуникации Привет! Я Саша, Exness Global Learning & Development Manager. Более 10 лет занимаюсь темой развития взрослых людей. В центре моего интереса вопросы роста начинающих руководителей. В этой статье делюсь практическими наблюдениями о том, как интроверту быстро научиться у...

Google: добавлять каждую ссылку в файл Disavow нет никакой нужды На днях сотрудник Google Джон Мюллер ответил в Twitter на вопрос касательно отклонения ссылок. В частности, нужно ли добавлять в файл Disavow те домены, которые не отображаются в Search Console, но были обнаружены такими инструментами, как Ahrefs, Moz, Majestic и т.п. В отве...

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

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

[Из песочницы] Ускоряем numpy, scikit и pandas в 100 раз с Rust и LLVM: интервью с разработчиком Weld Привет, Хабр! Представляю вашему вниманию перевод статьи «Interview with Weld’s main contributor: accelerating numpy, scikit and pandas as much as 100x with Rust and LLVM». Проработав несколько недель с data science инструментарием в Python и R, я начал задаваться вопросом,...

Простой UDP hole punching на примере IPIP-туннеля Доброе время суток! В этой статье хочу рассказать как я реализовал (еще один) скрипт на Bash для соединения двух компьютеров, находящимися за NAT, с использованием технологии UDP hole punching на примере ОС Ubuntu/Debian. Читать дальше →

[Перевод] JavaFX — еще не умер Примечание переводчика. Недавно я опубликованных на сайте habr переводы на русский язык нескольких уроков по JavaFX,. И один из моих читателей спросил меня: «А этим сейчас вообще кто-то пользуется?» Неделю назад я увидел пост в блоге Стивена Чина (Stephen Chin) и решил, чт...

[Из песочницы] Перевод статьи «Почему квантовый интернет должен быть построен в космосе» Привет, Хабр! Представляю вашему вниманию перевод статьи "Why the quantum internet should be built in space" из MIT Technology Review. Физики считают, что лучший способ распространения квантовой сети по всему земному шару — огромное созвездие орбитальных спутников...

[Перевод] 5 опенсорсных альтернатив Slack для группового чата При любом сотрудничестве важно иметь хорошие инструменты для общения. Безусловно, они индивидуальны и зависят от вашей ситуации, но могут включать в себя рассылки для общения по электронной почте, Git или Subversion для управления версиями, Википедию или Etherpad для совмест...

[Из песочницы] Оптимальный путь новичка в мире C++/Qt Часто задаваемый начинающими программистами вопрос – какие материалы читать для повышения своего профессионального уровня? В таком, наиболее общем виде, ответить на данный вопрос невозможно. Это зависит от текущих знаний и умений человека, от его специализации, от задач, кот...

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

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

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

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

[Перевод] Почему нужна инструментальная поддержка пагинации на ключах Всем привет! Я бэкэнд-разработчик, пишу микросервисы на Java + Spring. Работаю в одной из команд разработки внутренних продуктов в компании Тинькофф. У нас в команде часто встает вопрос оптимизации запросов в СУБД. Всегда хочется еще чуть-чуть быстрее, но не всегда можно об...

[Перевод] Классификация изображений на Android с помощью TensorFlow Lite и сервиса Azure Custom Vision Классификация изображений позволяет нашим приложениям Xamarin распознавать объекты на фотографиях. Все более и более распространенной становится возможность сделать фотографию и распознать ее содержимое. Мы можем наблюдать это в наших банковских приложениях при внесении мо...

Google добавила в Google Assistant встроенный переводчик В Google Assistant появился встроенный режим перевода Google Assistant является самым функциональным голосовым помощником, конкурировать с которым может разве что Alexa, и то лишь в каких-то особенных моментах. К примеру, мне нравится, что ассистент от Amazon умеет автоматич...

В Токио роботы работают в кафе Японская компания Softbank Robotics открыла два кафе, в которых работают как люди, так и роботы Pepper. Робот достаточно уместно вписали в режим работы заведения, ведь он может подойти к посетителям моментально, показать им меню и рассказать об местном ассортименте блюд. То ...

[Перевод] Что нужно для создания хорошего подземелья в RPG? Для начала нужно ответить на вопрос что же такое подземелье? Не буду углубляться в эту тему, а просто использую определение из третьего издания руководства мастера подземелий (ДМ) D&D: Понятие «подземелье» очень расплывчато. Подземелье обычно находится под землёй, но ...

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

Клиентоориентированный Data Lake в игровой компании Источник Привет, Хабр! Меня зовут Максим Пчелин, и я руковожу разработкой BI-DWH в MyGames (игровое подразделение Mail.ru Group). В этой статье я расскажу о том, как и зачем мы строили клиентоориентированное DataLake-хранилище. Статья состоит из трех частей. Сперва я расс...

Бесплатный курс «ASO: от простого к сложному» Курс состоит из двенадцати лекций, из которых вы узнаете все, что нужно начинающему ASO-специалисту: от базовых понятий и инструментов до анализа эффективности и A/B-тестов в ASO.

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

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

[Из песочницы] Product Manager & Product Designer: поиск сходств и отличий Меня зовут Ростислав Салата, я работаю в киберспортивной организации без малого три года. Пришел в компанию на должность проектировщика интерфейсов, дорос до UX-лида, и в настоящее время являюсь продуктовым менеджером. Задачи продуктового менеджера и подход к работе у нас ...

Дорожная карта миграции почты IBM Notes/Domino в Exchange и Office 365 Переход с IBM Notes на Microsoft Exchange или Office 365 дает весомое количество преимуществ для организации, но сам проект миграции выглядит пугающе и не совсем понятно с чего нужно начинать миграцию. Сам Exchange не включает собственные инструменты для полной миграции ил...

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

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

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

Swift: Копируй-изменяй Часто бывает так, что нам нужно скопировать объект, изменив некоторые его свойства, но сохранив остальные неизменными. Для этой задачи существует функция copy().Это отрывок описания метода copy() из документации Kotlin. На нашем родном языке Swift это означает примерно таку...

Аппаратный конвертер HDMI-RGB (18/24-bit) Доброго времени суток, Хабр! И снова моя статья будет посвящена видео конвертеру. На этот раз это будет HDMI-RGB. Статью хочу посвятить не конкретно разработке, а одной проблеме с цветами, которая у меня возникла при подключении 18-bit матрицы к 24-bit драйверу. Читать да...

[Из песочницы] Конфигурация кластера из трех узлов ZooKeeper и брокеров Apache Kafka Доброго времени суток! В этой статье рассмотрим настройку кластера из трех узлов ZooKeeper (служба координации распределенной системы), два из которых — брокеры сообщений Kafka, третий — управляющий. В результате будет реализована следующая схема компонентов: Читать дал...

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

Перфоманс фронтенда как современное искусство: графики, код, кулстори Всем привет. В предыдущих статьях мы говорили о базовых вещах оптимизации: раз и два. Сегодня я предлагаю с разбега окунуться в одну часть из тех задач, которыми занимается команда архитектуры фронтенда в hh.ru. Я работаю в команде архитектуры. Мы не только перекладываем фай...

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

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

[Перевод] CSS: полное руководство по функции calc() В CSS есть особая функция calc(), применяемая для выполнения простых вычислений. Вот пример её использования: .main-content {   /* Вычесть 80px из 100vh */   height: calc(100vh - 80px); } Здесь с CSS-кодом, в котором используется calc(), можно поэкспериментировать. Авто...

[Перевод] Анонс Flutter 1.20 Повышенная производительность, автозаполнение, новый виджет и многое другое! Всем привет, я Евгений Сатуров из Surf. Представляю перевод официальной статьи про последний апдейт Flutter 1.20 с моими комментариями. Фреймворк с каждым новым релизом становится всё более отполир...

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

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

Автоматизация ввода в SecureCRT с помощью скриптов У сетевых инженеров часто возникает задача, выполнить copy/past определенных фрагментов из блокнота в консоль. Копировать приходиться обычно несколько параметров: Username/Password и что-либо еще. Ускорить этот процесс позволяет использование скриптов. НО задачи написание ск...

[Перевод] Взгляд на технологии последнего десятилетия Прим. перев.: Эта статья, ставшая хитом на Medium, — обзор ключевых (за 2010-2019 годы) изменений в мире языков программирования и связанной с ними экосистемы технологий (особое внимание уделяется Docker и Kubernetes). Её оригинальным автором является Cindy Sridharan, котора...

[Из песочницы] Массивы bash Предлагаю вашему вниманию перевод статьи Митча Фрейзера (Mitch Frazier) "Bash Arrays" с сайта linuxjournal.com. Если вы используете «стандартную» оболочку *NIX-системы, возможно, вы не знакомы с такой полезной особенностью bash как массивы. Хотя массивы в bash не ...

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

Наш опыт с разработкой под CSI: релиз драйвера хранилища для Яндекс.Облака Рады объявить, что компания «Флант» пополняет свой вклад в Open Source-инструменты для Kubernetes, выпустив альфа-версию драйвера CSI (Container Storage Interface) для Яндекс.Облака. Но перед тем, как перейти к деталям реализации, ответим на вопрос, зачем это вообще нужно...

BlazingPizza: приложение на Blazor от начала и до конца. Часть 2. Добавляем компонент Привет всем! Всем тем, кто хочет узнать о Blazor немного больше. Сегодня мы продолжим создание нашего сайта для пиццерии, а именно, создадим web api контроллер и попробуем отобразить данные которые поступают из него на компоненте Blazor. Поскольку наше приложение о пицце, т...

Обработка прозрачных пластиков. Доброго дня дорогие читатели.В этой статье хочу поделится с вами своим опытом по «Постобработке прозрачных пластиков»За основу взята статья Руслана Молчанова https://filamentarno.ru/masterclass_01.html в ней описывается основной принцип работы, я же хочу поделиться более рас...

[Из песочницы] Особенности установления соединения между участниками сетевой игры типа «равный к равному» Это сборник информации, которая мне понадобилась, чтобы реализовать этап установления соединения между участниками сетевой игры типа «равный к равному» (peer-to-peer) с использованием протокола UDP. Статья расчитана на начинающих разработчиков игр. Попытался написать такую ...