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

[Перевод] Чистый код для TypeScript — Часть 3 Заключительная часть статей, посвященных тому, как можно использовать принципы чистого кода в TypeScript(ps. Все эти принципы относятся не только к языку TypeScript). Читать дальше →

C2x: будущий стандарт C Я ловлю в далёком отголоске, Что случится на моём веку. («Гамлет», Борис Пастернак)Признаться, пишу на чистом C я не так уж и часто и за развитием языка уже давно не слежу. Но тут произошло два неожиданных события: С вернул себе звание популярнейшего языка программирования ...

[Перевод] 6 рекомендаций по разработке безопасных Go-приложений В последние годы Golang распространяется всё шире и шире. Успешные проекты, вроде Docker, Kubernetes и Terraform, сделали огромные ставки на этот язык программирования. Go стал стандартом де-факто в области создания инструментов командной строки. А если говорить о безопаснос...

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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №399 (20 — 26 января 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №401 (3 — 9 февраля 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №411 (13 — 19 апреля 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №405 (2 — 8 марта 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №397 (6 — 12 января 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №394 (15 — 22 декабря 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №395 (23 — 29 декабря 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №407 (16 — 22 марта 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №393 (9 — 15 декабря 2019) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

Дайджест свежих материалов из мира фронтенда за последнюю неделю №404 (24 февраля — 1 марта 2020) Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →

[Перевод] Deep Q Trading: объектно-ориентированный код на R Привет! Это перевод еще одной моей статьи, посвященной обучению с подкреплением (reinforcement learning). Эту итерацию даже предложили запостить в блоге Веды аналитики. :) В двух прошлых статьях на эту тему: 1 и 2 я пробовал создать и запустить обучение с подкреплением д...

Проект LLHD — универсальный язык описания аппаратуры Буквально на днях на arXiv-е была выложена очень занятная статья швейцарских исследователей, в которой представлены подробности проекта LLHD. Это проект создания многоуровневого промежуточного представления для языков описания аппаратуры, наследующий идеологию и принципы про...

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

[Перевод] 10 хитростей Python, о которых полезно знать По данным StackOverflow Python — это самый быстрорастущий язык программирования. Например, в одном из отчётов Forbes речь идёт о том, что использование Python выросло на 456%. Python применяется в Netflix, в IBM, и ещё в тысячах компаний по всему миру. Давайте не забывать и ...

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

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

[Из песочницы] Чистый код для TypeScript — Часть 1 Наткнувшись на материал по принципам чистый код для TypeScript и прочитав его решил взяться за его перевод. Здесь я хочу поделиться с вами некоторыми выдержками из этого перевода, так как некоторые моменты чистого кода для TypeScript повторяют такие же принципы для JavaScrip...

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

Эксперимент: как научиться создавать популярные тексты на английском (и почему англоязычный Хабр так мало читают) Я много лет занимаюсь маркетингом, написанием текстов, при этом увлекаюсь английским и использую его в работе. В русскоязычном интернете в целом не так и много статей о контент-маркетинге и продвижении бизнеса в США. А те что есть часто просто рассказывают как надо делать ...

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

Все, что вы хотели узнать про области видимости в Python, но стеснялись спросить В преддверии старта нового потока по курсу «Разработчик Python», решили поговорить про области видимости в Python. Что из этого вышло? — Читайте в материале ниже. Сегодня мы будем говорить о важных теоретических основах, которые необходимо понимать и помнить, чтобы писат...

[Из песочницы] Использование QubesOS для работы с Windows 7 На Хабре не так много статей, посвященных операционной системе Qubes, а те, что я видел мало описывают опыт применения. Под катом надеюсь это исправить на примере использования Qubes в качестве средства защиты (от) среды Windows и, попутно, оценить количество русскоговорящих...

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

[Из песочницы] Чистая архитектура с Typescript: DDD и слоистая архитектура Привет, Хабр! В последнее время уделяю много внимание архитектуре и решил поделиться с сообществом переводом статьи Clean Architecture with Typescript: DDD, Onion автора André Bazaglia. Введение На протяжении более 6 лет моего профессионального опыта, я имел возможность раб...

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

Хабра-детектив на выходных 2. Новый уровень Вы ведь помните историю про студентов? Ту самую, где за перевод технической статьи, опубликованный на Хабре, ставили зачёт. Я ведь знаю, что помните. Сам недавно видел комментарий к очередному переводу из песочницы: "Зачёт-то поставили?". Поскольку уже прошел целый месяц с ...

[Перевод] Мониторинг распределённых систем — опыт Google (перевод главы книги Google SRE) SRE (Site Reliability Engineering) — подход к обеспечению доступности веб-проектов. Считается фреймворком для DevOps и говорит как добиться успеха в применение DevOps-практик. В этой статье перевод Главы 6 Monitoring Distributed Systems книги Site Reliability Engineering о...

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

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

[Перевод] Что делать, когда CSS блокирует парсинг страницы? Недавно я проводил аудит одного сайта и наткнулся на паттерн preload/polyfill, который уже видел у нескольких клиентов. В наши дни использование этого паттерна, ранее популярного, не рекомендуется. Однако его полезно рассмотреть для того, чтобы проиллюстрировать важность ост...

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

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

[Перевод] Эмуляция компьютера: интерпретатор CHIP-8 и формирование изображений Недавно мы опубликовали перевод первого материала из серии статей, посвящённой эмуляции компьютера. Автор этих статей подробно рассказывает о написании интерпретатора CHIP-8 на C++. В той публикации мы устроили опрос о целесообразности перевода продолжения цикла. Почти 94% т...

[Перевод] Машинное обучение столкнулось с нерешенной математической проблемой Салют, хабровчане! В преддверии запуска новых потоков по продвинутому и базовому курсам «Математика для Data Science» хотим поделиться с вами достаточно интересным переводом. В этой статье не будет практики, но материал интересен для общего развития и обсуждения. Группа ис...

[Перевод] Заменяем User Story на Job Story Всем привет. Перевели еще один интересный материал для студентов курса «Product Manager IT-проектов». Приятного прочтения Раньше, я уже писал о проблемах с user story (пользовательскими историями). В те времена я считал, что лучше просто попросить команду обсудить предлаг...

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

[Перевод] Terraform, моно-репозитории и compliance as code Всем привет. OTUS открыл набор в новую группу по курсу «Инфраструктурная платформа на основе Kubernetes», в связи с этим мы подготовили перевод интересного материала по теме. Возможно, вы один из тех, кто использует terraform для Infrastructure as a Code, и вам интересно...

iPhone 12 сможет посоперничать с MacBook Pro в бенчмарках Если верить сетевым источникам, то в следующем поколении яблочных смартфонов будет использован процессор Apple A14, созданный по 5 нм техпроцессу. Предполагается, что по скорости новый чип для iPhone может обогнать процессор в 15-дюймовом MacBook Pro.Читать дальше... Prosto...

Автоматизация задач администрирования API VMware vSphere с использованием Ansible В предыдущей статье мы рассмотрели взаимодействие с VMware с помощью Python. В этой же обсудим взаимодействие с VMware с помощью Ansible. Ansible — система управления конфигурациями, написанная на языке программирования Python с использованием декларативного языка разметки ...

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

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

Смотрим новый Android 11 Вчера Google выпустила Android 11, мы сразу же начали изучать нововведения в новой версии Android, мой коллега Иван Кузнецов написал материал по этому поводу, а сейчас я попытаюсь поделиться тем, что еще может понравиться пользователям в новом «Андрюше». Особенно ...

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

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

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

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

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

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

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

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

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

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

Как устроен Sporth — ЯП для музыкальных live-сессий Один из предыдущих материалов мы посвятили OpenMusic — инструменту для написания музыки на ООП. Мы также говорили о языках программирования, заточенных под создание аудиокомпозиций. Сегодня мы решили продолжить тему и рассказать о языке Sporth. Его разработали специально, ч...

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

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

Тридцать топовых интервью за последнее время: разработка, дизайн, научпоп и лайфстайл На новогодних праздниках ваша дорогая редакция совмещала приятное с полезным и читала интервью, которые выходили на Хабре за последние годы. Отобрали 30 штук, а теперь делимся с вами — это прям самый сок и вообще крутота! Разговоры на любой вкус: об игровой разработке, ред...

Идеальный инструмент для работы с СУБД без SQL для Node.js или Все, что вы хотели знать о Sequelize. Часть 2 Представляю вашему вниманию руководство по Sequelize. Sequelize — это ORM (Object-Relational Mapping — объектно-реляционное отображение или преобразование) для работы с такими СУБД (системами управления (реляционными) базами данных, Relational Database Management System, RD...

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

[Из песочницы] Установка micropython на ESP8266 и работа с ним под Linux (для начинающих) Привет, Хабр! Это мой первый опыт с микроконтроллерами в целом, и ESP8266 (в виде Nodemcu v2) в частности. Возможно, для кого-то этот опыт окажется полезным. Почему именно micropython? Ответ простой — мой скромный опыт в области программирования ограничен Паскалем в ВУЗе,...

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

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

Подборка 143 переводов эссе Пола Грэма (из 184) Пол Грэм — один из самых уважаемых людей среди ИТишников, основателей и инвесторов. Он первоклассный программист (написал два языка программирования), хакер, создатель дерзкого акселератора Y Combinator, философ. Своими помыслами и разумом Пол Грэм врывается в широкий спек...

Почему стоит присмотреться к Google Pixel 1 Google Pixel всё еще актуален? Компания Google несколько лет назад представила первое поколение Pixel. Устройство получилось достаточно интересным за счёт того, что предлагало чистый Android, частые обновления, приятную внешность и отличную камеру. С тех пор Google представи...

[Перевод] Python. Язык, на котором просто мыслить Привет, Хабр! У нас возможен предзаказ долгожданного второго издания книги "Простой Python". Перевод первого издания вышел в 2016 году и по сей день остается в числе бестселлеров. Поскольку мы убеждены, что Python — лучший язык программирования для начинающих, ...

Специальный вариант колонки JBL Flip 5 изготовлен из переработанного пластика К Международному дню Матери-Земли, который Генеральная Ассамблея ООН постановила отмечать 22 апреля, компания Harman приурочила выпуск специального варианта портативной колонки JBL Flip 5 Eco. Его отличительной чертой является широкое использование в конструкции перераб...

Открытые лекции лабораторий JetBrains Research В прошедшем осеннем семестре сотрудники лабораторий JetBrains Research провели несколько открытых лекций в Computer Science Center. Тематика докладов разнообразная, как и области исследований лабораторий. Для удобства собрали ссылки на все выступления. Приятного просмотра! Ч...

Дайджест материалов сообщества Svelte (16.01 — 01.02) Сегодня мы начинаем делиться с вами наиболее заметными материалами сообщества Svelte. Приятного чтения! Читать дальше →

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

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

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

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

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

Изучаю Scala: Часть 1 — Игра змейка Привет Хабр! Когда я изучаю новый язык я обычно делаю на нем змейку. Может какому нибудь новичку который тоже изучает Scala будет интересен код другого новичка в этом ЯП. У опытных скалистов скорее всего мой первый код на Scala вызовет грусть. За подробностями добро пожалов...

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

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

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

Адаптируем существующее бизнес-решение под SwiftUI. Часть 1 Доброго всем времени суток. О технологии SwiftUI, которую Apple анонсировали в прошлом году WWDC 2019, говорили уже много. В принципе уже довольно материала про ее особенности, что у нее под капотом и как это использовать для быстрого и красивого UI. Предлагаю вам небол...

[Перевод] Kha vs HTML5: Компилируем JavaScript в C++ Предлагаю вашему вниманию перевод доклада Роберта Конрада с прошедшего в октябре прошлого года HaxeUp Sessions 2019 Linz. Данный доклад посвящен процессу портирования на консоли игры CrossCode, изначально написанной на HTML5. Если вам понравится перевод, то рекомендую также ...

[Перевод] Алан Кей: История SmallTalk (Аннотация и Введение) У меня есть цель — разобраться в том, что же происходило в 60-70-е годы в Xerox PARC и в окрестностях, как так вышло, что несколько коллективов инженеров, работая рука об руку, создали невероятные технологии, которые определили наше настоящее, а их идеи будут определять буду...

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

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

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

Дополняя SQL. Часть 1. Сложности парсинга. Истории о доработке ANTLR напильником Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Что будет в этой статье? Более пяти лет работаю в компании, что занимается разработкой линейки IDE для работы с базами данных. Начиная работу над этой статьей я и не представлял как много интере...

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

[Перевод] Keras Functional API в TensorFlow В Keras есть два API для быстрого построения архитектур нейронных сетей Sequential и Functional. Если первый позволяет строить только последовательные архитектуры нейронных сетей, то с помощью Functional API можно задать нейронную сеть в виде произвольного направленного ац...

Локализация React приложении Всем привет! До нового года остаются считанные дни. Наткнулся на свой список дел, которые собирался сделать в 2019-м, среди них оказалось и написать статью на Хабр. Самое время заскочить в уходящий вагон). Сразу оговорюсь, пиарю свой велосипед, если такое Вам не по душе, то ...

Дайджест интересных материалов для мобильного разработчика #329 (13 — 19 января) Возвращаемся к работе с новым дайджестом — в нем роутинг и компоненты, интеграционные тесты и языки программирования, годовой отчет App Annie и улучшения Duolingo. Читать дальше →

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

[Перевод] Python.org рекомендует: Программирование для НЕпрограммистов Предлагаем вашему вниманию подборку материалов от python.org о том, с чего начать первые шаги в программировании. Если Вы никогда не занимались программированием раньше, эти материалы для вас. Данные туториалы не предполагают, что у вас есть какой-то опыт. (Если у вас уж...

Пишем веб сервис на Python с помощью FastAPI Знаю, знаю, наверное вы сейчас думаете «что опять?!». Да, на хабре уже неоднократно писали о фреймворке FastAPI. Но я предлагаю рассмотреть этот инструмент немного подробнее и написать API своего собственного мини Хабра без кармы и рейтингов, зато с блэкджеком и с тестами,...

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

Хюгге для разработчиков, или как я съездила на KotlinConf Хабр, привет! Меня зовут Мария, и я программист. Пишу под Android и несколько лет делала это на Java — на фоне универских плюсо́в она мне казалась очень удобной. Но прогресс не стоит на месте, и, придя полтора года назад в Яндекс.Деньги, я познакомилась с молодым языком Ko...

[Из песочницы] «Подготовка к собеседованию QA» starter pack или самая большая шпаргалка вопросов-ответов по тестированию 163 страницы смеси ответов на вопросы с реальных собеседований, перевода интересного контента с зарубежных ресурсов и агрегации материала с отечественных. Читать дальше →

Google научился переводить с татарского. Google Translate впервые за четыре года расширил поддержку языков Компания Google объявила о расширении языковой поддержки для сервиса Google Translate (Google Переводчик).  Теперь Google Переводчик может работать с текстами на таких языках: руанда, ория или одия, татарский, туркменский и уйгурский. На этих языках ...

Не плачь, девчонка! Ответ автору с vc.ru на письмо о Хабре Я давний участник Хабра — обычный читатель и корпоративный автор. Для меня Хабр — это хорошо знакомая, изученная, родная и не враждебная среда, поэтому каждый раз я удивлённо читаю доводы участников «кармасрачей» и обхожу их стороной, потому что писать комментарии на 5000 зн...

[Перевод] В самом популярном фрагменте кода за всю историю StackOverflow ошибка!  Недавнее исследование «Использование и атрибуция сниппетов кода Stack Overflow в проектах GitHub» внезапно обнаружило, что чаще всего в опенсорсных проектах встречается мой ответ, написанный почти десять лет назад. По иронии судьбы, там баг. Давным-давно… Еще в 2010 году я ...

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

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

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

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

Umka. Жизнь статической типизации в скриптовом языке В своё время посты на Хабре и Reddit о статически типизированном скриптовом языке Umka вызвали весьма активную дискуссию. Прошедшие полтора месяца позволили мне избавиться от некоторых заблуждений, развить язык и дать чуть более вразумительные ответы на вопросы публики. ...

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

Какой язык программирования учить в 2020-м? Статей с подобными заголовками существует уже множество. Но в них постоянно какая-то дичь! Смотрите, Google ещё до основных результатов советует такое: HCL, Карл! Язык, который не просто очень далёк от «Самых Популярных», но ещё и создан для конфигурации, так что его вообще...

[Перевод] Лучшие инструменты с открытым исходным кодом и библиотеки для Deep Learning — ICLR 2020 Experiencebi Сложно найти на Хабре человека, который не слышал бы про нейронные сети. Регулярные новости о свежих достижениях нейронных сетей заставляют удивляться широкую публику, а также привлекают новых энтузиастов и исследователей. Привлеченный поток специалистов способствует не толь...

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

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

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

[Перевод] Разбор худшего в мире куска кода Есть одна итальянская страница на Facebook. Называется она «Il Programmatore di Merda», что в переводе означает «Дерьмовый программист». Мне нравится эта страница. Там часто публикуют куски отвратительного кода и мемы о программировании. Но однажды я увидел там кое-что сове...

[Из песочницы] STM32 + CMSIS + STM32CubeIDE Здесь я расскажу как создать минимальный проект на CMSIS с использованием «родной» IDE для микроконтроллеров STM – STM32CubeIDE. Возможно STM32CubeIDE и обладает рядом недостатков, но у нее, на мой взгляд, есть несколько преимуществ – таких как проприетарность и бесплатнос...

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

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

Дайджест интересных материалов для мобильного разработчика #340 (6 — 12 апреля) В этом выпуске новый Swift, accessibility-тестирование, преодоление Prince of persia, исследование российских команд мобильной разработки, открытая Eclipse Theia вместо VSC, полив комнатных растений и многое другое! Читать дальше →

Язык R для пользователей Excel (бесплатный видео курс) В связи с карантином многие сейчас львиную долю времени проводят дома, и это время можно, и даже нужно провести с пользой. В начале карантина я решил довести до ума некоторые проекты начатые несколько месяцев назад. Одним из таких проектов был видео курс "Язык R для пол...

Как Youtube и Instagram: интернационализация и локализация приложения на Python Язык Python лежит в основе всемирно известных приложений, таких как Youtube, Instagram и Pinterest. Для продвижения на мировом рынке приложению необходима локализация, то есть адаптация к особенностям той или иной страны, и интернационализация – перевод контента. В статье мы...

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

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

Какие зарплаты предлагали работодатели IT-специалистам во втором полугодии 2019 Продолжаем углублять знания рынка зарплат в России. Близится конец 2019 года, а значит самое время для ежегодного отчёта о том, какие зарплаты в уходящем году предлагали работодатели в своих вакансиях на «Моем круге». Как и в прошлом году, в этом отчете мы сравним зарплаты...

Дайджест интересных материалов для мобильного разработчика #333 (10 — 16 февраля) В новом дайджесте навыки iOS-разработчиков, тестирование пушей в эмуляторе, распознавание объектов и текстов, четыре года разработки и идеи больших хитов, разочарование во Flutter и исследования монетизации. Читать дальше →

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

[Перевод] Представляем программируемую AWS Landing Zone в модуле Terraform Всем привет! В декабре OTUS запускает новый курс — Cloud Solution Architecture. В преддверии старта данного курса делимся с вами переводом интересного материала по теме. AWS Landing Zone – это решение, которое помогает клиентам быстро настроить безопасную среду AWS с не...

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

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

Похмелье 8 марта: ещё одна статья на Хабре о женщинах в ИТ «Если, по-вашему, женщина может быть кузнецом, то почему бы мужчине не быть педикюршей? Она кует, он пилит, прекрасная пара!» К/ф «Берегите женщин» Я читаю Хабр года так с 2009-го. Последние несколько лет накануне 8 марта случается вал публикаций, спецпроектов, мегапостов и...

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

Обзор работы «Learnability Can Be Undecidable» Эта статья является моим вольным пересказом работы Learnability can be undecidable, Shai Ben-David, et al. Недавно на Хабре вышла статья Машинное обучение столкнулось с нерешенной математической проблемой, которая является переводом одноименного обзора в Nature News статьи Ш...

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

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

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

Библия 3D-печати: опасности технологии SLS и как их избежать От редакции: предлагаем вторую статью из цикла, посвященного технологии 3D-печати методом селективного лазерного спекания полимерных порошков (SLS). Материал подготовлен московской инженерно-производственной компанией Can Touch, эксплуатирующей SLS 3D-принтер EOS Formiga P10...

20 SEO-мифов, которые должны умереть в 2020 Хабр читают не только разработчики, и не только люди связанные с IT, некоторые из моих клиентов иногда кидали мне ссылки на Хабр, и среди них были такие, которые совсем далеки от IT. Поэтому в этой статье будет максимально простым языком объясняться некоторые аспекты SEO. К ...

[Перевод] Что такое Waypoint и какие возможности дает его использование Пару недель назад я посмотрела демонстрацию Waypoint— нового инструмента, который представила 15 октября 2020 года компания Hashicorp. Инструмента, который предназначен для создания легкого, интуитивного и настраиваемого под пользователя рабочего процесса сборки, развертыва...

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

[Перевод] Kotlin vs Java И снова здравствуйте. В преддверии старта нового курса «Backend-разработка на Kotlin», мы подготовили для вас перевод статьи, в которой рассказывается о том, чем же Kotlin отличается от Java. «Kotlin – новый язык программирования, который заставит вас отказаться от Java»...

Настроили мониторинг. Что дальше? Всем привет! Меня зовут Мазеин Михаил, я занимаюсь бекенд-разработкой в ManyChat. Одна из моих задач — анализ и повышение качества нашего продукта через системы мониторингов, алармов и сопутствующих процессов. Я на своем опыте убедился в том, что выстроить мониторинг — недо...

[Перевод] Go глазами Rust-программиста: первые впечатления В преддверии старта курса «Разработчик Golang» подготовили перевод интересного материала. А каким было ваше первое впечатление от Go? На протяжении последних нескольких недель мне довелось использовать Go в работе. Я впервые использовал Go на более-менее крупном и серьезно...

Бесплатный курс «CCNA Routing & Switching для сомневающихся» Привет, Хабр! Недавно узнал о том, что здесь есть такой замечательный оффтопик — «Я пиарюсь». Хочу поделиться с вами своим курсом «CCNA Routing & Switching для сомневающихся». Я искренне надеюсь, что благодаря этим материалам студентам, обучающимся по программе сетевой...

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

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

16 советов по разработке для Android на языке Kotlin. Часть 1 Перед прочтением этих советов вам желательно ознакомиться с документацией Kotlin и самостоятельно изучить язык на сайте try.kotlinlang.org. Поскольку эти советы направлены именно на использование Kotlin в контексте разработки под Android, у вас также должен быть опыт работ...

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

[Перевод] Пишем интерпретатор BASIC в стиле 80-х В течение нескольких лет я работала над личным проектом создания (а на самом деле исследования) «фальшивого эмулятора», то есть написанного на JavaScript эмулятора никогда не существовавшего компьютера. Эта машина должна была стать данью памяти восьми- и шестнадцатибитным ...

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

[Перевод] Пол Грэм про Java и «хакерские» языки программирования (2001) Это эссе явилось развитием бесед с несколькими разработчиками на тему предвзятого отношения к Java. Это не критика Java, а скорее, наглядный пример «хакерского радара». Со временем, хакеры развивают нюх на хорошие — или же плохие — технологии. Полагаю, может оказаться инт...

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

[Перевод] Рекуррентные нейронные сети (RNN) с Keras Перевод руководства по рекуррентным нейросетям с сайта Tensorflow.org. В материале рассматриваются как встроенные возможности Keras/Tensorflow 2.0 по быстрому построению сеток, так и возможности кастомизации слоев и ячеек. Также рассматриваются случаи и ограничения использов...

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

16 советов по разработке для андроид на языке Kotlin. Часть 2 Всем привет. В преддверии старта базового курса по Android-разработке, продолжаем делиться полезным материалом. Перед прочтением этих советов вам желательно ознакомиться с документацией Kotlin и самостоятельно изучить язык на сайте try.kotlinlang.org. Поскольку эти советы...

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

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

Хабр Конкурс: победители конкурса идей В конце прошлого года мы провели ребрендинг — все наши проекты стали частью Хабра. О таком событии нельзя не рассказать, поэтому за пост-анонс взялись сразу двое — я и Deniskin. В итоге мы не смогли решить, чей пост будем публиковать, поэтому разместили оба: раз и два. П...

Хабр Квест {концепция} Недавно на ресурсе, по случаю начала процесса ребрендинга, предложили придумать идею сервиса, который мог бы стать частью экосистемы Хабра. На мой взгляд, одной из таких частей могло бы стать игровое ролевое измерение сайта, где каждый пользователь может стать неким «охотник...

[Перевод] Мифы о useEffect Доброго времени суток, друзья! Представляю вашему вниманию перевод небольшой заметки Kent C. Dodds, в которой он делится своими соображениями относительно правильного использования хука «useEffect». Я обучил React тысячи разработчиков. Как до, так и после релиза хуков. О...

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

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

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

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

Перегрузка в C++. Часть II. Перегрузка операторов Продолжаем серию «C++, копаем в глубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Эта статья посвящена перегрузке операторов. Особое внимание уделено использованию перегруженных операторов в стандартной биб...

Основы Ansible, без которых ваши плейбуки — комок слипшихся макарон, часть 3 В этой части мы перестаём говорить о простом и приятном и начинаем говорить о трудном. Переменные в Ansible: scope, precedence, рекурсивная интерполяция. Для тех, кто дочитает до конца, маленький бонус: упрощённая таблица приоритетов, с которой можно жить. Предыдущие части: ...

Чтение на выходные: 10 материалов про аудиотехнологии — музыкальные дороги, HD-пластинки и 8D-звук Мы подобрали для вас самые заметные материалы из нашего «Мира Hi-Fi»: от акустической левитации до денежных переводов с помощью звука и почти стопроцентной шумоизоляции. Если эти темы вам интересны, приглашаем под кат. Читать дальше →

[Перевод] Разбираем идеальный кейс фишинга при аренде квартиры Недавно я стал жертвой (к счастью, неудачной) фишинговой атаки. Несколько недель назад я бродил по сайтам Craigslist и Zillow: я хотел арендовать жилье в районе залива Сан-Франциско. Мое внимание привлекли симпатичные фото одного местечка, и мне захотелось связаться с аренд...

Что внутри шаурмы: микросервисы, распределенные системы и Кафка. Делимся материалами со встречи Backend United #5 Привет! Этот пост-отчёт с митапа Backend United, нашей серии тематических встреч для разрабочиков серверной части. Пятая встреча получила название «Шаурма», и здесь мы говорили о микросервисах: о способах синхронного и асинхронного взаимодействия между ними, организации пото...

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

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

Переводчик для браузера: 5 лучших Chrome-расширений для быстрого перевода Очень часто интенет-пользователи сталкиваются с ситуациями, когда необходимо перевести неизвестное слово или отрывок текста. Предлагаем вашему вниманию пять полезных расширений Google Chrome, предназначенных именно для этих целей. ♥ ПО ТЕМЕ: Как переводить переписку в Viber ...

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

Почему появились асинхронные веб-сервера? Всем привет. На связи Владислав Родин. В настоящее время я являюсь руководителем курса «Архитектор высоких нагрузок» в OTUS, а также преподаю на курсах, посвященных архитектуре ПО. Помимо преподавания, как вы могли заметить, я занимаюсь написанием авторского материала для б...

Купил Geely Emgrand X7, Mazda 6 или Ford Mondeo – готовь банку «антикоррозии» «Ржавеют активнее, чем эксплуатируются», — жалуются владельцы. Недавно автомобилисты решили составить ТОП-3 самых ржавеющих иномарок, которые возглавил «Китаец». Однако это никого не удивило, поскольку о китайском автопроме ходят самые разные мифы, а вот наличие «Японца» и ...

Онтол: подборка статей про «выгорание» [100+] Я «просмотрел» 560 постов на Хабре и (предварительно) выделил для себя топ-10 самых полезных материалов про эмоциональное/профессиональное выгорание. Социальная архитектура: «Эмоциональное выгорание контрибьюторов Open Source проектов» Максим Дорофеев: «Принцип экономии ...

Алексей Савватеев: Теоретико-игровая модель социального раскола (+ опрос по nginx) Привет, Хабр! Меня зовут Ася. Нашла очень крутую лекцию, не могу не поделиться. Предлагаю вашему вниманию конспект видеолекции о социальных конфликтах на языке математиков-теоретиков. Полная лекция доступна по ссылке: Модель социального раскола: игра тернарного выбора на...

Библия 3D-печати: оптимизация трехмерной печати по технологии SLS От редакции: предлагаем третью статью из цикла, посвященного технологии 3D-печати методом селективного лазерного спекания полимерных порошков (SLS). Материал подготовлен московской инженерно-производственной компанией Can Touch, эксплуатирующей SLS 3D-принтер EOS Formiga P10...

[Из песочницы] Golang + Phaser3 = MMORPG — Делаем базу для бесконечной генерации мира На русскоязычных ресурсах трудно найти подходящую информацию, возможно этот материал позволит вам понять некоторые основы для создания многопользовательских игр и не только. Я планирую сделать серию статей по созданию 2.5D MMORPG, то бишь в изометрии, наш мир будет разделе...

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

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

Освободи свой Android Некоторое время назад на Хабре вышла статья замечательной девушки fur_habr о проблемах безопасности, приватности и конфиденциальности мобильных коммуникаций и о путях решения этих проблем на платформе Android. В момент выхода этой статьи я как-то не обратил на неё внимани...

Julia и дистрибутивная семантика С момента выхода прошлой публикации в мире языка Julia произошло много интересного: Она заняла все первые места в плане роста вспомогательных пакетов. За это я и люблю статистику — главное выбрать удобную единицу измерения, например проценты как в приведенном ресурсе Вышла...

Дайджест интересных материалов для мобильного разработчика #325 (2 — 8 декабря) Новый дайджест о кроссплатформенной разработке, о лучших приложениях 2019 года, о минимализме в дизайне и темных темах, о перспективах AR-очков, библиотеках и даже цвете 2020 года. Читать дальше →

Анализируем рекомендации по защите персональных данных и ИБ — на что стоит обратить внимание На днях мы рассмотрели целый ряд книг о рисках в ИТ, социальной инженерии, вирусах и истории хакерских группировок. Сегодня попробуем перейти от теории к практике и посмотрим, что каждый из нас может сделать для защиты персональных данных. На Хабре и в СМИ можно найти большо...

[Из песочницы] Мое решение — лучшее Привет, Хабр! Предлагаю Вашему вниманию перевод статьи «My solution is the best!» автора John Hotterbeekx. Недавно я смотрел выступление одного докладчика об архитектуре. Беседа вышла увлекательной, концепция и идея определенно имели смысл, но выступающий не понравился. Чт...

Lenovo Thinkserver SE350: герой с периферии Сегодня мы рассматриваем новый класс устройств, и я несказанно рад тому, что за десятки лет развития серверной индустрии, я впервые держу в руках что-то новое. Это не «старое в новой упаковке», это устройство, созданное с чистого листа, почти ничего не имеющее общего со свои...

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

PostgreSQL: Серверное программирование на «человеческом» языке (PL/Perl, PL/Python, PL/v8) Postgres знаменит своей расширяемостью, что относится и к поддержке процедурных языков (PL). Никто не может похвастаться языком списком языков такой длины, а потенциально этот список и вовсе не ограничен: для того, чтобы подключить язык к серверу, не требуется сверхусилий. М...

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

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

[Перевод] Навигация между представлениями с помощью @EnvironmentObject в SwiftUI Перевод статьи подготовлен в преддверии старта продвинутого курса «Разработчик iOS». Здравствуйте и добро пожаловать на наш туториал! В этой серии мы говорим о том, как перемещаться между представлениями в SwiftUI (без использования навигационного представления!). Хоть эта...

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

[Перевод] Руководство по Aircrack-ng в Linux для новичков Всем привет. В преддверии старта курса «Практикум по Kali Linux» подготовили для вас перевод интересной статьи. Сегодняшнее руководство познакомит вас с основами для начала работы с пакетом aircrack-ng. Конечно, невозможно предоставить всю необходимую информацию и охватить...

Zephyr в embedded: опыт использования на STM32F7-Discovery История о моем опыте использования операционной системы реального времени (ОСРВ) Zephyr для устройства на базе микроконтроллера STM32F7-Discovery. В статье: Что такое Zephyr и при чем тут Linux? Запуск проекта на STM32. Интересные моменты по работе с драйверами. Фишки этой...

[Перевод] Подсчет запросов: Базовое тестирование производительности на Django Всем привет. Мы подготовили перевод еще одного полезного материала для студентов курса «Web-разработчик на Python», который стартовал вчера. Очень часто можно услышать о методах тестирования, таких как TDD, и о том, как тестировать бизнес-логику приложения. Однако тестиро...

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

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

Бывший главред TJ о письмах из ФСБ: будет история «Дуров 2.0», но хедлайнером станет Хабр Вчера бывший главный редактор TJournal, Никита Лихачёв, запостил в своём телеграм-канале пару длинных аудиосообщений, почти подкаст, где рассказывает, что он думает о реестре ОРИ, письмах в крупные интернет-сервисы из ФСБ и место Хабра во всей этой истории. Знаю, на Хабре бо...

Перезагрузка текстур OpenGLESv2 через DMABUF В этой статье я хочу рассказать, как просто можно обновлять текстуры OpenGLES через DMABUF. Поискал по Хабру и к своему удивлению не обнаружил ни одной статьи на эту тему. В Хабр Q&A тоже ничего такого не нашел. И это для меня немного странно. Технология появилась довол...

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

Подробная инструкция по изготовлению сплит клавиатуры на основе ATmega32U4. Аналог Iris / Jiran своими руками Моя самоделка Перед изготовленияем своей клавиатуры я наметил следующие цели: 1. Максимально возможный тактильный комфорт. 2. Добиться того, чтобы совершенно не было необходимости смотреть на клавиатуру при работе, чтобы она никоим образом не отвлекала внимание на себя, что...

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

jsqry — лучше, чем jq В своей прошлой статье на Хабре я писал про библиотеку Jsqry, которая предоставляет простой и удобный язык запросов (DSL) к объектам JSON. С тех пор прошло много времени и библиотека тоже получила свое развитие. Отдельный повод для гордости — библиотека имеет 98% покрытие ко...

Mini cube factory ЧПУ 5 в 1. Часть 3 В сегодняшней статье отвечу на все самые часто задаваемые мне вопросы. Но для начала давайте ознакомимся с конструкцией и концепцией.Ссылка на предыдущие статьи:Первая статьяВторая статьяДля самых ленивых опишу все ещё раз.Данная конструкция- открытый проект, любой может ска...

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

Яндекс снабдил англоязычные видео закадровым переводом 7 сентября 2021 года. Яндекс начал предлагать автоматически перевести англоязычные видеоролики. Научно-популярные передачи, кулинарные шоу, лекции Илона Маска и Ричарда Фейнмана, стендапы и видеоблоги - всё это теперь можно посмотреть в русской озвучке. Перевод получается за...

Тостер, Мой круг и Фрилансим становятся частью Хабра Сервисы Хабра прекращают работу под отдельными брендами и становятся самостоятельными проектами внутри бренда Хабра, образуя связанную линейку сервисов для IT-специалистов.   Читать дальше →

[Перевод] Абелевскую премию по математике разделили двое пионеров в областях вероятностей и динамики Хилель Фарстенберг, 84 лет, и Григорий Маргулис, 74 лет, профессора на пенсии, разделили математический эквивалент нобелевской премии Хилель Фарстенберг Двое математиков, продемонстрировавших, как недооценённое ответвление области исследований можно применить для решения в...

АМА с Хабром #15. Новогодний и самый короткий выпуск! Чат Обычно это бывает в последнюю пятницу каждого месяца, но в этот раз — в последний вторник года. Но суть не поменяется — под катом будет список изменений на Хабре за месяц, а также предложение позадавать вопросы команде Хабра. Но так как именно вопросов традиционно будет немн...

Что посмотреть на карантине? Подборка материалов от Технострима (часть 1) Сидение на необъявленном карантине можно провести с пользой, совершенствуя тело и разум. О первом мы, возможно, когда-нибудь поговорим, а пока предлагаем вам пищу для ума: подборку разноплановых интересных материалов в виде двух курсов и двух интервью. Читать дальше →

Как перенести файлы с одного облака на другое минуя свой ПК Смерть, развод, переезд — три наиболее стрессовых ситуаций в жизни любого человека. «Американская история ужасов». — Андрюх, я из дома ухожу, помоги с переездом, ко мне всё не влезет:( — Хорошо, а много там? — Тонн* 7-8… *Тонна (жарг.) — Терабайт. Недавно, в процессе ...

PHP-Дайджест № 174 (10 января – 24 февраля 2020) Свежая подборка со ссылками на новости и материалы. В выпуске: 5 новых RFC из PHP Internals, а также предложение по развитию языка и пара прототипов новых фич в виде пул-реквестов, порция полезных инструментов, видео, подкасты и многое другое. Приятного чтения! Читать даль...

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

Про перевод «теории» и производных от неё Теория (+её производные) — ещё одно слово, на котором у меня включается творческий тупик: в голову ничего кроме theory/theoretical/theoretically не лезет. Поэтому его мы тоже с коллегами решили покрутить и так, и этак — посмотреть, как обыгрывают эту концепцию носители. Сре...

Ретродайджест: 30 интересных ресурсов о технике и играх ушедших лет 2019 год уже вот-вот подойдет к концу. С наступлением нового десятилетия некоторые компьютерные устройства переместятся в стан ретро-техники, о которых наши потомки (или даже мы сами) будем дискутировать и писать статьи. Минувшая осень в нашем блоге ознаменовалась циклом ст...

[Из песочницы] Использование 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 Я часто обсуждаю микросервисную архитектуру с люд...

[Из песочницы] Почему в 2020 году мы по-прежнему выбираем Ruby? Привет, Хабр! Представляю вашему вниманию перевод статьи «Why is Ruby still our choice in 2020?» автора Vira Vashkovska. Мы — опытная команда Ruby on Rails разработчиков. Некоторые из нас занимаются разработкой на Ruby уже многие годы и знают его как свои пять пальцев. Вот ...

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

Amazon Go: магазин без касс — личный опыт О проекте «магазинов самообслуживания» Amazon Go начали говорить в середине десятых. Даже пост на Хабре был. Но одно дело — читать описания, и другое — узнать из первых рук, как это: зайти в магазин без кассиров, набрать товаров и that's it, как пишет Amazon на своём сайте. ...

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

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

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

Spring-анимации во Vue Привет, Хабр! Мне давно хотелось добавлять в любые проекты Spring-анимации. Но делал я это только для React-проектов с помощью react-spring, так как не знал ничего другого. Но наконец я решил разобраться, как оно все устроено и написать свою реализацию! Если вы тоже хоти...

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

Главные технологии десятилетия по версии Хабра Команда Хабра составила рейтинг из 10 технологий и устройств, которые изменили мир и повлияли на нашу жизнь. За пределами первой десятки остались еще около 30 крутых вещей — о них коротко в конце поста. Но самое главное — нам хочется, чтобы в составлении рейтинга поучаство...

Мое исследование про переход в IT из других отраслей Занимаясь подбором IT-персонала я довольно часто встречаю резюме кандидатов, которые сменили отрасль на IT, поработав некоторое время в других отраслях. По моим субъективным ощущениям, таких специалистов на рынке труда в IT от 20% до 30%. Люди получают образование, часто даж...

Готовый шаблон для тестирования с использованием Spring Представляю вам — готовый шаблон для тестирования с использованием Spring. Введение Цель этой статьи показать, что писать автотесты со Spring проще нежели на чистой Java. Так же хочу продемонстрировать, насколько Java + Spring упрощает жизнь тестировщикам. Для кого эта ...

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

[Из песочницы] Бакалавриат в США: Нетрадиционный путь в топ-вузики Прочитала я пару статей на хабре после того как прошла по ссылке со стороннего ресурса и мне как-то грустно стало так как я сама учусь в топ-университете в США и знаю нескольких из России. habr.com/ru/post/469275 habr.com/ru/post/230789 Однако, моя история не совсем станд...

[Перевод] C++ vtables. Часть 2 (Virtual Inheritance + Compiler-Generated Code) Перевод статьи подготовлен специально для студентов курса «Разработчик С++». Интересно развиваться в данном направлении? Смотрите запись мастер-класса «Практика использования Google Test Framework»! Часть 3 — Виртуальное наследование В первой и второй части этой статьи мы г...

Конкурс полезных статей PICASO3D-Club.ru Всем привет, Друзья! С Вами 3DTool!Спешим сообщить, что наши друзья, портал о 3D принтерах PICASO 3D, PICASO3D-Club.ru проводит конкурс с денежными призами на написание статей посвященных этим принтерам.Кстати, лучшие статьи с конкурса отмеченные отдельным призом редакции мы...

Решил 50 задач и ответил на вопрос — Python или JavaScript? Привет, друзья! Я — JavaScript-разработчик. Код пишу в основном на React (иногда на Vue), немного на TypeScript, немного на Node, немного знаю SQL, но... со мной работает много людей, которые пишут код на Python вокруг много разговоров про Python повсюду преподают Python ...

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

Внедрение зависимостей – проще, чем кажется? Привет, Хабр! У нас готовится к выходу второе издание легендарной книги Марка Симана, «Внедрение зависимостей в .NET» Поэтому сегодня мы решили кратко освежить тему внедрения зависимостей для специалистов по .NET и C# и предлагаем перевод статьи Грэма Даунса, где эта пар...

Коронавирус COVID-19: только факты, без паники Паника — худшее, что может случиться во время пандемии. Хабр всегда был и остается местом, где людям важны факты, а не домыслы. Факты такие: коронавирус оказался заразным и в некоторых случаях — смертельным. Государства избирательно закрывают границы, авиакомпании отменяют р...

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

Мозг, смысл и конец света Напомню предысторию. Меня зовут Алексей Редозубов и я занимаюсь созданием сильного искусственного интеллекта. Мой подход крутится вокруг контекстно-смысловой модели работы мозга. Об этом был цикл статей на хабре и много видео на Youtube. Сейчас я хочу рассказать об основах к...

[Перевод] Интервью с Уиллом Куртом о его новой книге «Байесовская статистика – это здорово» Привет, Хабр! В самом конце года успеваем поделиться с вами новостью о том, что приступаем к работе «Bayesian Statistics the Fun Way» от издательства No Starch Press. Предлагаем перевод развернутого интервью с автором книги; текст касается как самой книги, так и смежных с н...

[Перевод] Переход с reCAPTCHA на hCaptcha в Cloudflare Компания Cloudflare сообщила о том, что она недавно перешла с использования сервиса reCAPTCHA, предоставляемого Google, на сервис hCaptcha, который поддерживает компания Intuition Machines. В Cloudflare очень рады тому, что им удалось совершить этот переход, так как он спо...

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

Книга «Clojure на производстве» Неделю назад в издательстве "Ридеро" вышла книга "Clojure на производстве". Как ее автор, расскажу о ней подробнее: что внутри и кому она полезна. Общие сведения Это книга о том, как применять Clojure в настоящих условиях: не сортировать списки в олимпиа...

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

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

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

Тест Cyberpunk 2077 в 4K с актуальными видеокартами NVIDIA и AMD 10 декабря после череды переносов прошел официальный старт игры Cyberpunk 2077. Проект который потенциально может стать игрой года и при этом поднимающий планку требований к видеокартам и процессорам. Наш сегодняшний материал не будет посвящен сюжету и не будет содержать спо...

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

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

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

[Перевод] Redis Best Practices, часть 3 Заключительный перевод разделов Redis Best Practices с официального сайта «Redis Labs». Самое необычное и интересное сегодня под катом! Читать дальше →

[Из песочницы] Бот Telegram для пиццерии на Python с помощью telebot Вступление На Хабре уже есть статья о Telegram боте, написанном на Python с помощью telebot. Признаться, свое знакомство с чат-ботами в недавно разблокированном мессенджере я начинал с этой статьи. Моя писанина — это дополнение, включающее в себя работу с Inline кнопками и б...

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

Что такое «чистый код» в 2020-м? «Чистый код» и чистый кот Разработчиков хлебом не корми, дай поспорить о чистоте кода: например, недавно шумиху навёл пост Дэна Абрамова «Goodbye, Clean Code». Но при этом у самого понятия «чистый код» нет чёткого определения. Главная книга по этому вопросу — «Clean Code»...

«Утечка» базы специалистов Хабр Карьеры Сначала в телеграм-каналах, а потом и на Хабре появилась информация об утекших данных пользователей с сайта Хабр Карьеры. Считаем нужным дать более развёрнутый комментарий, а также рассказать о том, как устроены настройки приватности на сервисе. Утечка Читать дальше →

[Из песочницы] Исследование защиты программы TurboConf Всем привет! Решил поделиться с сообществом информацией о небольшом разборе одной маленькой утилиты (с обфусцированным кодом), известной в узких кругах 1с-ников. Это моя первая статья на Хабре, прошу сильно не пинать, но достойно критиковать. Disclaimer Всё, что вы здесь у...

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

[Перевод] Пол Грэм: «Краткость = сила» На HackerNews сегодня подняли обсуждение статьи Пола Грэма 2002 года и мы решили воскресить её перевод из небытия. «The quantity of meaning compressed into a small space by algebraic signs, is another circumstance that facilitates the reasonings we are accustomed to carry...

FOSS News №1 — обзор новостей свободного и открытого ПО за 27 января — 2 февраля 2020 года Всем привет! Это мой первый пост на Хабре, надеюсь будет интересен сообществу. В Пермской группе пользователей Linux мы увидели нехватку обзорных материалов по новостям свободного и открытого ПО и решили, что неплохо бы каждую неделю собирать всё самое интересное, чтобы п...

[Перевод] Реализация epoll, часть 1 Сегодня мы публикуем перевод первой статьи из серии материалов, посвящённых реализации epoll в ядре Linux 3.16.1*. Автор исходит из предположения о том, что читатели знакомы с API и с использованием epoll. Он уделяет основное внимание реализации подсистемы epoll в ядре Linux...

[Перевод] 7 способов повысить эффективность автоматизации тестирования в Agile разработке Перевод статьи подготовлен в преддверии старта курса «Java QA Engineer». Разработка программного обеспечения — процесс сложный. Еще на заре разработки программного обеспечения как дисциплины архитекторы поняли, что без структуры управления этот процесс превращается в хао...

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

[Перевод] Советы и хитрости IntelliJ IDEA: 1. Сравнение файлов и папок От переводчика: В блоге Войтеха Рузички по программированию имеется 13 постов с тегом IDEA. Один из был переведен и опубликован на Хабре — Лучшие плагины IntelliJ IDEA. Он оказася довольно популярен и я решил попробовать перевести и другие посты об IDEA. Надеюсь будут полезн...

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

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

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

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

Книга «Golang для профи: работа с сетью, многопоточность, структуры данных и машинное обучение с Go» Привет, Хаброжители! Вам уже знакомы основы языка Go? В таком случае эта книга для вас. Михалис Цукалос продемонстрирует возможности языка, даст понятные и простые объяснения, приведет примеры и предложит эффективные паттерны программирования. Изучая нюансы Go, вы освоите...

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

Realme 6i вышел в релиз В последнее время производителям смартфонов достаточно тяжело придумать, как привлечь внимание аудитории со всего мира своими интересными продуктами. Ведь геймер уже видел абсолютно все, все варианты дизайна и начинки, его этим не удивить. Ради привлечения внимания своей ауд...

[Из песочницы] Создание браузерных 3d-игр с нуля на чистом html, css и js. Часть 1/2 Современная вычислительная техника позволяет создавать классные компьютерные игры! И сейчас, достаточно популярны игры с 3d-графикой, так как, играя в них, ты окунаешься в вымышленный мир и теряешь всякую связь с реальностью. Развитие интернета и браузерных технологий сделал...

Лучший фитнес-браслет 2019 года. Amazfit Band 2 Samsung Galaxy Fit e Корейская компания Samsung довольно неплохо преуспела на рынке смартфонов, но вот с носимой электроникой у производителя не все так хорошо, как хотелось бы. К примеру, компания выпустила в свет достаточно интересные умные часы, которые, правда, не см...

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

Автоматизация тестирования ПО QIWI-терминалов Привет, Хабр! Сегодня поговорим на специфическую тему: автоматизация тестирования ПО для терминалов самообслуживания QIWI. В теме автоматизации тестирования есть области, которые исхожены вдоль и поперек несколько раз, например, тестирование веб-сервисов. Для таких област...

Какой язык программирования учить, чтобы за вами охотились HR крупных компаний Десять лет назад язык программирования PHP был в лидерах рейтингов, а сейчас проекты в веб все чаще написаны на JavaScript и Python. Обидно потратить на изучение языка год или два, а потом остаться без работы. Мы в Mail.ru Cloud Solutions изучили аналитику, исследования, ...

Реактивное программирование, стоит ли бросать все и нестись навстречу мечте Еще одна статья про реактивное программирование. И только не надо на этой строчке закатывать глаза и томным голосом говорить вслух — "Ну что еще ты можешь мне рассказать про реактивное программирование… а?". Она немного отличается от кучи других, написаных словно под копирку...

Какую цену мы платим за использование async/await в языках JS / C# / Rust Привет, Хабр ! Работая с Javascript / Typescript, я давно заметил, что асинхронное API работает медленней чем аналогичное синхронное, и даже знал что так должно быть. Но на последнем проекте асинхронная работа с файловой системой стала узким местом, и я озаботился замерами. ...

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

«Лэт ми спик фром май харт» © Во время проведённого на этой неделе вебинара в чате возникло обсуждение вопроса «Нужен ли перевод ITIL4?». Опять. К сожалению, трансляция была прервана, поэтому не успели обсудить этот вопрос. Но, поскольку дискуссия возникает не первый раз, выскажусь здесь. Также в конце д...

Глубина кроличьей норы или собеседование по C++ в компании PVS-Studio Авторы: Андрей Карпов, khandeliants Филипп Хандельянц. Хочется поделиться интересной ситуацией, когда вопрос, используемый нами на собеседовании, оказался сложнее, чем задумывал его автор. С языком C++ и компиляторами надо всегда быть начеку. Не заскучаешь. Читать дальше &r...

Библия 3D-печати: базовые принципы технологии SLS От редакции: предлагаем первую статью из цикла, посвященного технологии 3D-печати методом селективного лазерного спекания полимерных порошков (SLS). Материал подготовлен московской инженерно-производственной компанией Can Touch, эксплуатирующей SLS 3D-принтер EOS Formiga P10...

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

Wrike уходит от использования языка Dart. Часть 1 Данной статьёй мы хотим пролить свет на технический стек Wrike: каким он был раньше и каким мы видим его в будущем. Мы расскажем о том, почему пять лет назад мы выбрали язык Dart основным для frontend-разработки нашего продукта и почему сейчас мы решили посмотреть в сторону ...

Можете написать Deadlock на Camunda BPM? А я могу Некоторое время назад я писал про успешную миграцию с IBM BPM на Camunda, и теперь наша жизнь полна счастья и приятных впечатлений. Camunda не разочаровала, и мы продолжаем дружбу с этим BPM-движком. Но, увы, Camunda может преподносить и неприятные сюрпризы, из-за которых ...

OpenGL примитивы в стиле RAII Добрый день, хабра юзеры. Я давно не писал и возможно кто-то заждался статей от меня — конечно же нет. Так как свободного времени стало чутка поболее, а мой GitHub совершенно пуст, я решил написать свой клон Mein kampf Minecraft. С большой вероятностью, я задокументирую это...

Учим нейросети в Google Таблицах Хочу с вами зачелленджить одну интересную штуку: попробовать обучить нейросеть в Google Таблицах. Безо всяких макросов и прочих хаков, на чистых формулах. Читать дальше →

Power Automate VS Logic Apps. Особенности Logic Apps Добрый день всем! В прошлой статье, посвященной изучению Power Automate и Logic Apps мы рассмотрели некоторые возможности использования Power Automate. В данной статье я бы хотел остановиться на некоторых сценариях использования Logic Apps и ряде отличий от Power Automate. К...

Разбираемся в рекурсии Привет, Хабр. Про рекурсию ходит много шуток, и она традиционно считается одной из сложных для понимания тем в computer science, поэтому давайте сегодня немного о ней поговорим. А именно, давайте обсудим, как выражать доказуемо завершимые вычисления. Зачем это надо? Рекурси...

Осенняя сессия вопросов Хабру. AMA #22 Огромного размера чейнджлог Хабра оказался передо мной перед последней пятницей месяца. Но глаза боятся, а руки делают: текстовый скальпель почикал всё «системное» и оставил лишь то, на что можно обратить внимание — ознакомиться можно под катом. Ну а в комментариях традицион...

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

Доклады второго ROS Meetup на тему учебных роботов 30 ноября 2019 года в Москве прошёл 2-й ROS Russian MeetUp, организатор — Лаборатория робототехники Сбербанка, — на котором большее 200 ROS-любителей поделились своим опытом и знаниями. Мы продолжаем публиковать наиболее интересные доклады: в этом материале вы можете поз...

[Перевод] Исследование CSS-свойства flex Вам когда-нибудь было интересно узнать о том, как работает сокращённое CSS-свойство flex? Оно позволяет задавать значения свойств flex-grow, flex-shrink и flex-basis. Я обратил внимание на то, что данное свойство чаще всего используют в виде flex: 1, что позволяет flex-элеме...

Разгоняем портал ДО на основе Moodle (решение проблем узких мест) В последнее время все острее встает вопрос об обучении онлайн, во время пандемии, так и в связи с переходом в онлайн всего и вся. На сайте Хабр есть материалы по установке базовой системы на основе moodle. В данной заметке хотелось бы поделиться некоторым опытом настройки с...

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

The state of soft skills Так сложилось, что софт-скиллы довольно сильно помогли мне в карьере. Например, спустя всего 9 месяцев работы в Rambler, куда я приходил простым frontend-разработчиком, мне предложили стать руководителем группы, потому что мой руководитель увидел во мне потенциал и достаточн...

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

Хабрастатистика: как Хабр пережил самоизоляцию Привет, Хабр. Заканчивается первая половина 2020 года, можно подвести некоторые статистические итоги, тем более что по понятным причинам, они обещают быть интересными. Появились новые темы для обсуждения, многие стали работать из дома, любопытно посмотреть, как это сказалос...

DeepPavlov: «Keras» для обработки естественного языка помогает отвечать на вопросы про COVID-2019 В такой области глубокого обучения, как обработка изображений, библиотека Keras играет ключевую роль, радикально упрощая обучение transfer learning и использование предварительно обученных моделей. В области обработки естественного языка (NLP) для решения достаточно сложных ...

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

Атрибут cleanup Цитата из документации GCC [1]: Атрибут cleanup предназначен для запуска функции, когда переменная выходит из области видимости. Этот атрибут может быть применён только к auto-переменным, и не может быть использован с параметрами или с static-переменными. Функция должна прин...

Is Delphi Dying — False В далеком 2009-м на Хабре уже возникал холиварный шуточный пост с вопросом "Умирает ли Delphi?", а неким энтузиастом (Jamie Ingilby) в поддержку были созданы 2 сайта, которые утвердительно отвечали «Нет, язык Delphi жив». Однако, как всем известно, дыма без огня не бывает, ...

[Перевод] Фракталы на Python. Пошаговое руководство Привет, Хабр! Сегодняшний пост про фракталы попался в рамках проработки темы Python, в частности, Matplotlib. Последуем примеру автора и предупредим, что в посте много тяжелой анимации, которая может даже не работать на мобильном устройстве. Зато как красиво. Всем приятно...

В 2019 году доход SK Hynix обрушился на треть, а чистая прибыль — в 7,7 раза Компания SK Hynix опубликовала отчет за последний квартал 2019 года и за год в целом. В соответствующем пресс-релизе сказано, что в прошлом году компания SK Hynix «активно корректировала уровень инвестиций и производства, чтобы максимально повысить эффективность ...

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

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

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

[Перевод] Алгоритм Беллмана-Форда В преддверии старта курса «Алгоритмы для разработчиков» подготовили очередной перевод интересной статьи. Задача: Дан граф и начальная вершина src в графе, необходимо найти кратчайшие пути от src до всех вершин в данном графе. В графе могут присутствовать ребра с отрицатель...

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

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

[Из песочницы] BPF для самых маленьких, часть нулевая: classic BPF Berkeley Packet Filters (BPF) — это технология ядра Linux, которая не сходит с первых полос англоязычных технических изданий вот уже несколько лет подряд. Конференции забиты докладами про использование и разработку BPF. David Miller, мантейнер сетевой подсистемы Linux, назыв...

Учимся понимать чертовски быструю английскую речь на примере выступлений Эдди Мерфи и Эминема Студенты, которые учат английский язык как второй, часто не готовы к реальной скорости речи носителей языка. Это на учебных пособиях и аудировании все предельно понятно, а когда нейтив начинает тараторить, ты такой «Чё?». Мы расскажем вам, как научиться понимать быструю ре...

Метафизика Dependency Injection Dependency Injection — это часто используемая техника в объектно-ориентированном программировании, предназначенная для уменьшения связанности компонентов. При правильном применении, помимо достижения этой цели, она может привнести поистине магические качества вашим приложе...

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

АМА с Хабром #16: пересчёт рейтинга и багфиксы Ещё не все успели вынести ёлку, а уже наступила последняя пятница самого короткого месяца — января. Конечно, всё, что произошло на Хабре за эти три недели не сравнить с тем, что произошло в мире за тот же отрезок времени, но и мы время не теряли. Сегодня в программе — немног...

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

Как мы обошли bytenode и декомпилировали байткод Node.js (V8) в Ghidra «Да я роботов по приколу изобретаю!» Рик СанчесМногим известно, что в 2019 году АНБ решило предоставить открытый доступ к своей утилите для дизассемблирования (реверс-инжиниринга) под названием Ghidra. Эта утилита стала популярной в среде исследователей благодаря высокой «вс...

Как Хабр взаимодействует с госорганами и другими заявителями. Transparency report за все годы Привет, Хабр! Наконец-то представлюсь — меня зовут Алексей Шевелёв и в Хабре я руковожу отделом по работе с пользователями (куда входит фидбек через форму обратной связи по всем проектам), попутно являясь Комьюнити Менеджером. И так получается, что с некоторой периодичностью...

[Перевод] Стоит ли хранить Google Fonts на своём сервере? В последние несколько недель, по стечению обстоятельств на работе и в сторонних проектах, я узнал много о веб-шрифтах, а также много нового о Google Fonts в частности. Благодаря этому я могу дать более развернутый ответ на вопрос, который в прошлом мне казался простым: стоит...

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

Настройка автовыравнивания фазы в дифференциальных парах в САПР Cadence Allegro Иногда даже любимые программы могут доставить мучения — особенно если не знаешь, как правильно настраивать ту или иную функцию. В редакторе печатных плат Cadence Allegro есть такая офигенно полезная опция, High Speed, которая ооочень помогает в трассировке скоростных сигнало...

[Перевод] REST API в Symfony (без FosRestBundle) с использованием JWT аутентификации. Часть 1 Перевод статьи подготовлен в преддверии старта курса «Symfony Framework». В первой части статьи мы рассмотрим самый простой способ реализации REST API в проекте Symfony без использования FosRestBundle. Во второй части, которую я опубликую следом, мы рассмотрим JWT аутентиф...

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

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

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

[Из песочницы] Как скомпилировать декоратор — C++, Python и собственная реализация. Часть 2 Декораторы — одна из самых необычных особенностей Python. Это инструмент, который полноценно может существовать только в динамически типизированном, интерпретируемом языке. В первой части статьи мой товарищ Witcher136 показал, как в С++ реализовать наиболее приближенную к эт...

Что айтишнику не стоит делать в 2020? Хабр полон прогнозов и советов о том, что делать в следующем году — какие языки учить, в какие сферы сворачивать, как поступать со своим здоровьем. Звучит вдохновляюще! Но у любой медали две стороны, и мы спотыкаемся не только в чём-то новом, а по большей части в том, что де...

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

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

Тест робота-пылесоса Polaris Smart Go PVCR 0930: умная навигация и чистая уборка Робот-пылесос удобен тем, что позволяет автоматизировать уборку полов в квартире, даже в отсутствие хозяина. Побывавший у нас на тесте Polaris PVCR 0930 SmartGo оптимально выстраивает движения по комнате и может мыть полы.

«Чистый код» Роберт Мартин. Конспект. Как писать понятный и красивый код? Я решил написать конспект книги, которая всем известна, а сам автор называет ее «Школой учителей Чистого кода». Пристальный взгляд Мартина как бы говорит: «Я тебя насквозь вижу. Ты опять не следуешь принципам чистого кода?» Читать дальше →

[Перевод] Анализ скорости распространения COVID-19 и публикация результатов на dstack.ai Предисловие переводчика Всем привет, давно ничего не писал на Хабр, но тут появился повод. Я довольно много лет проработал в области анализа данных и самая важная вещь, которую я понял за это время — в анализе данных очень не хватает инструментов, самых разных инструментов...

PHP-Дайджест № 171 (1 – 13 января 2020) Свежая подборка со ссылками на новости и материалы. В выпуске: 4 свежих RFC из PHP Internals и интересные пул-реквесты в PHP 8, порция полезных инструментов, подкасты, стримы и многое другое. Приятного чтения! Читать дальше →

Блог-шоу - выпуск 62 Дорогие друзья, в эфире рубрика блог-шоу на shakin.ru. Это моя традиционная подборка, в которой я делюсь самыми интересными статьями и видео, которые мне понравились за последнее время. Каждый материал в блог-шоу проходит мою проверку на качество. Единственный критерий для ...

[Из песочницы] Нужно ли нам озеро данных? А что делать с хранилищем данных? Это статья перевод моей статьи на medium — Getting Started with Data Lake, которая оказалась довольно популярной, наверное из-за своей простоты. Поэтому я решил написать ее на русском языке и немного дополнить, чтобы простому человеку, который не является специалистом по раб...

Как мы делали очередной конструктор чат-ботов. Часть 1 Привет, Хабромир! Последний год мы с командой провели, создавая свой стартап «Конструктор чат-ботов для бизнеса Botlify», и я хотел бы поделиться с аудиторией небольшой историей проекта и о принятых технических решениях. В этом посте я постараюсь максимально сконцентрирова...

Насколько много маркетинга в ACID? Всем привет. На связи Владислав Родин. В настоящее время я являюсь руководителем курса «Архитектор высоких нагрузок» в OTUS, а также преподаю на курсах, посвященных архитектуре ПО. Помимо преподавания, как вы могли заметить, я занимаюсь написанием авторского материала для б...

«50 оттенков коричневого» или «Как мы до этого докатились» Дисклеймер: данный материал содержит только субъективное мнение автора, наполненное стереотипами и вымыслами. Факты в материале отображены в виде метафор, метафоры могут быть искажены, гипертрофированы, приукрашены или же и вовсе выдуманы ASM До сих пор идут споры о том, кт...

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

Haproxy — программирование и конфигурирование средствами Lua Сервер Haproxy имеет встроенные средства для выполнения скриптов Lua.Язык программирования Lua для расширения возможностей различных серверов используется очень широко. Например, на Lua можно программировать для серверов Redis, Nginx (nginx-extras, openresty), Envoy. Это впо...

[Перевод] Тестирование в Puppeteer vs Selenium vs Playwright: сравнение производительности Ранее мы уже писали о том, когда бывает нужна автоматизация тестирования и какие проверки при этом используют. Сегодня предлагаем обсудить использование инструментов на практике и оценить их производительность. С разрешения Giovanni Rago – автора серии полезных материалов о ...

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

Мне больше не интересна прошивка смартфона Не так давно я отказался от использования своего старого iPhone в пользу Xiaomi. До этого у меня было немало Android-аппаратов, и каждый проходил через процедуру прошивки. Это было необходимостью на фоне многих моментов. Например, стандартная прошивка ZUK Z2 казалась мне не...

Java-дайджест за 13 мая Иллюстрация получена вот из этого видео. Джеймс Гослинг, создатель языка Java, заявил об участии в летней конференции JPoint и уже появился в списке спикеров на сайте. Говорят, кризис — время возможностей. Иногда это действительно так! Пару лет назад трудно было представит...

[Перевод] 10 интересных репозиториев на GitHub, полезных любому разработчику Представляем вам перевод статьи Simon Holdorf, опубликованной на сайте medium.com. В ней вы найдете ссылки на полезные репозитории, с помощью которых можно прокачать навык разработки ПО. Фото с ресурса Unsplash. Автор: Vishnu R Nair GitHub — это лучшая платформа для обме...

Увидим ли мы когда-нибудь GTA 4 на Android? Когда GTA 4 появится на Android? GTA 4 была выпущена в далеком 2008 году. И я четко помню времена, когда все подростки — включая меня — в те времена проводили часами за данной игрой. Сегодня для многих GTA 5 и Fortnite являются современными и интересными. Игрокам...

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

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

Мой опыт разработки на языке Nim Привет, Хабр! Уже довольно давно я пишу свой игровой фреймворк — такой pet project для души. А так как для души нужно выбирать что-то, что нравится (а в данном случае — на чём нравится писать), то выбор мой пал на nim. В этой статье я хочу поговорить именно про nim, про его...

Дайджест интересных материалов для мобильного разработчика #327 (16 — 22 декабря) В новом дайджесте — интересная особенность работы одного из приложений для вызова такси, работа с сетью и управление жестами, физика и идеи, код макетов и разное тестирование, итоги десятилетия и года от App Annie. Читать дальше →

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

Дайджест интересных материалов для мобильного разработчика #332 (3 — 9 февраля) На этой неделе мы рассказываем про важные и интересные новости и статьи — “универсальные покупки”, единый магазин и платформу от Xiaomi, Huawei, Oppo и Vivo, про рисование муравьями и тех, кто играет в мобильные игры в России, про локализацию приложений и пробку из смартфоно...

[Из песочницы] Большое тестирование процессоров различных архитектур Предисловие Попытка сравнить производительность процессоров на разнородных архитектурах x86-64, e2k (Эльбрус), mips и arm. Все тесты написаны на языке C (взяты из исходных кодов, которые я не модифицировал и не оптимизировал) и компилируются под конкретную архитектуру с испо...

Открытый курс «Deep Learning in NLP» от создателей DeepPavlov на базе курса cs224n Всем привет! Вступление Меня зовут Алексей Клоков, я хочу рассказать о запуске классного курса по обработке естественного языка (Natural Language Processing), который очередной раз запускают физтехи из проекта DeepPavlov – открытой библиотеки для разговорного искусственного ...

Почему мы выбрали Kotlin целевым языком компании. Часть 1: Ретроспектива Компания ДомКлик существует с 2015 года, и за это время мы успели сменить целевой язык для разработки ключевых сервисов с Java на Kotlin. Меня зовут Александр Коцюруба, я IT Lead в компании ДомКлик. Отвечая на вопрос, почему мы перешли на Kotlin, я опубликую два материала:...

Эксперимент VTrade. Часть 1: Биржи и современные технологии Цикл статей освещает попытку создания реактивной системы силами одного человека с минимальным бюджетом и в кратчайшие сроки. Цели эксперимента: Более глубокое понимание предметной области и улучшение технической экспертизы Выявление сильных и слабых сторон использования фу...

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

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

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

А что, если без Python? Julia для машинного обучения и вообще Мы всегда хотим писать код быстро, но за это приходится платить. На обычных высокоуровневых гибких языках можно быстро разрабатывать программы, но после запуска они работают медленно. Например, чудовищно медленно cчитать что-то тяжелое на чистом Python. Си-подобные языки раб...

[Перевод] PEP 257 на русском. (Соглашение о Docstrings) Привет, Хабр. Бывают моменты, когда тебе хочется максимально погрузиться в язык и понять все его тонкости. В случае Python один из лучших способов это сделать — читать на официальном сайте документацию и PEP-ы. В своё время я этого не делал, поскольку не мог понять многих «т...

Памятка по работе с СИЗ КДПВ взята с Safety poster Я давно пользуюсь средствами защиты для бытовых нужд, в том числе чистки различной техники от окислов. Расходники к ним намного дешевле лекарств, которые могут понадобиться после работы без них. Да и комфортнее использовать тот же растворитель, н...

[Перевод] Какую нагрузку на серверы создают сетевые механизмы? Когда анализируют работу сетевой подсистемы серверов, внимание обычно обращают на такие показатели, как время задержки (latency), пропускная способность системы (throughput), количество пакетов, которое можно обработать за секунду (PPS, Packets Per Second). Эти показатели пр...

[Из песочницы] STM32MP1: U-Boot, Buildroot, Arch Linux и немного Debian Привет, Хабр! Некоторое время назад компания STMicroelectronics выпустила интересные процессоры серии STM32MP1. Когда у меня наконец-то дошли руки до отладочной платы на основе этого процессора, я с некоторым удивлением обнаружил, что для нее отсутствуют какие-либо сборки н...

Вентиляция с рекуперацией в квартире. Без воздуховодов и СМС Написать этот пост меня подтолкнула недавняя статья о приточной вентиляции в квартире. Я было хотел оставить развёрнутый комментарий, но понял что правильнее будет написать статью, т.к. мой опыт использования комнатных рекуператоров в качестве основной системы вентиляции мож...

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

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

Микросервисы на С++. Выдумка или реальность? В этой статье я расскажу о том, как создал шаблон (cookiecutter) и настроил окружение для написания REST API сервиса на С++ с использованием docker/docker-compose и пакетного менеджера conan. Во время очередного хакатона, в котором я участвовал в качестве бекенд-разработч...

Фильтр синего может провоцировать бессонницу: последнее исследование Последние исследования учёных из Университета Манчестера заставляют предположить, что использование ночных режимов, делающих экран более жёлтым, не помогает заснуть, а скорее провоцирует бессонницу. Подробнее об этом читайте на THG.ru.

Habr Weekly # 31 / Рамблер vs Nginx, Тинькофф всех уделал и «упал», налог на покупки дороже €20, редизайн Хабра В этом выпуске: 00:35 «Тинькофф» поставил конкурентам «шах и мат» и упал 06:39 Минфин предложил снизить порог беспошлинного ввоза интернет-покупок до 20 евро 11:58 В офисе Nginx проходят обыски по иску Рамблера. Пресс-служба Рамблера подтвердила наличие претензий, itsumma ...

Телескоп TESS нашел «невозможную» экзопланету #79: Лучшие материалы «Популярной механики» за 2019 год В рамках нового исследования ученые проанализировали наблюдения TESS за звездами HD 212771 и HD 203949, у которых ранее уже были обнаружены экзопланеты. Исследователи изучили колебания данных звезд (исследованием колеба...

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

PHP-Дайджест № 169 (26 ноября – 9 декабря 2019) Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.4, PhpStorm 2019.3, InfectionPHP и другие релизы, статистика версий PHP, об использовании FFI, видео с прошедших конференций и митапов, порция полезных инструментов, и многое другое. Приятного чтения! Чит...

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

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

Classplus: перевод обучения в онлайн AppCraft обозревает новые и интересные стартапы в своем Telegram-канале, говорит о том, как делать отличные сервисы и зарабатывать, решая проблемы клиентов.

Kudo — онлайн-конференция с переводом AppCraft обозревает новые и интересные стартапы в своем Telegram-канале, говорит о том, как делать отличные сервисы и зарабатывать, решая проблемы клиентов.

[Перевод] Стек технологий Shiro Games Наш игровой движок Heaps.io и набор инструментов и технологий, на котором он основан, являются результатом опыта, накопленного за двадцать лет, посвященных созданию игр: сначала в компании Motion-Twin (создатели Dead Cells), а с 2012 года в Shiro Games (Evoland, Northgard и ...

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

[Из песочницы] Компилятор Befunge на Python В процессе подготовки к курсу «Основы компиляторов» для студентов 4-го курса я изучал различные эзотерические языки программирования. Вот хорошая статья на эту тему. В статье самым интересным мне показался язык Befunge (Крис Пресс, 1993 год), особо отмечу три его особенности...

[Перевод] Советы и хитрости IntelliJ IDEA: 4. Синхронизация и обмен настройками Знаете ли вы, что IDEA предлагает два способа синхронизации ваших настроек между несколькими экземплярами вашей IDE? Вы можете использовать его при работе на нескольких компьютерах или для совместного использования унифицированных настроек в вашей команде. Этот перевод прод...

Apple отреагировала на сообщение о постоянно работающей геолокации в iPhone 11 На днях эксперт в области компьютерной безопасности обнаружил, что iPhone 11 Pro может отслеживать местоположение пользователя даже тогда, когда геолокация отключена в настройках. Сегодня купертиновцы официально прокомментировали эту «находку».Читать дальше... ProstoMAC.com...

Создание Python-обвязки для библиотек, написанных на C/C++, с помощью SIP. Часть 1 Иногда во время работы над проектом на языке Python возникает желание использовать библиотеку, которая написана не на Python, а, например, на C или C++. Причины для этого могут быть разные Во-первых, Python — язык замечательный, но в некоторых ситуациях недостаточно быстрый....

Онтол(=самое полезное) про удаленную работу [подборка 100+ статей] «Если не стыдно за первую версию продукта — вы вышли на рынок слишком поздно» Всем привет, я долго тянул, и вот решил выложить даже не MVP, а идею, над которой я сейчас работаю. Выкристаллизовалась она год назад, по итогам 7 лет писанины на Хабре. Многие слышали о пирами...

Конспект книги «Создание микросервисов» Я ничего не понимаю в микросервисной архитектуре, поэтому решил прочитать и законспектировать книгу Сэма Ньюмена «Создание микросервисов». На мой взгляд, получился неплохой вводный материал для людей, которые начинают погружаться в эту тему. Читать дальше →

Вызов кода Go из Dart с использованием cgo и Dart FFI на простом примере Ключевой мотивацией для написания данной статьи является факт сильного недостатка информации (особенно в русскоязычном сообществе) по использованию cgo и Dart FFI для использования Go из языка Dart.Язык Dart, не смотря на свою возрастающую популярность, на данный момент до с...

[Перевод] Новости из мира OpenStreetMap № 500 (11.02.2020-17.02.2020) Wochennotiz / weeklyOSM – Issue # 500 | Thank you О нас Вышел 500-й выпуск нашего еженедельного новостного проекта. Всё началось 23 июля 2010 года с небольшой заметки, в которой содержалось всего 14 новостей. Редакция проекта благодарит всех читателей, которые поддержива...

[Перевод] Визуальная теория информации (часть 2) Вторая часть перевода лонгрида посвященного визуализации концепций из теории информации. Во второй части рассматриваются энтропия, перекрестная энтропия, дивергенция Кульбака-Лейблера, взаимная информация и дробные биты. Все концепции снабжены прекрасными визуальными объяс...

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

Основы Data Vault В настоящее время, в сфере анализа данных и BI, уже не возможно не встретить такое понятия как DATA VAULT. Однако, на мой взгляд, есть некоторый недостаток информации по этой теме, особенно в русскоязычном сегменте интернета. Можно найти интересные статьи о применении DATA V...

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

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

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

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

Реверс API Сбербанка Зачем У меня есть pet-project, приложение для учета финансов. На мой взгляд одной из ключевых проблем подобных приложений является ручной ввод баланса. У банков, в частности сбера, есть информация о транзакциях которые я совершаю и даже есть неплохая аналитика. Но Банков н...

Опубликован отчет Huawei за 2019 год Компания Huawei опубликовала финансовый отчет за прошлый год. По отчету понятно, что все ключевые показатели деятельности по сравнению с 2018 годом выросли. Так, выручка от продаж по всему миру составила около 858,8 млрд юаней, что на 19,1% больше значения, зафиксирован...

[Перевод] Руководство по FFmpeg libav Долго искал книгу, в которой было бы разжёвано, как использовать FFmpeg в качестве библиотеки (в дальнейшем в тексте — libav, т.е. library audio video). Обнаружил учебник «Как написать видеоплеер и уложиться в менее чем тысячу строк». К сожалению, информация там устаревшая,...

За кулисами жизни модератора Stack Overflow Недавние статьи на Хабре про опыт пользования StackOverflow сподвигли меня на написание статьи, но с позиции модератора. Сразу хочу отметить, что речь пойдёт о Stack Overflow на Русском. Мой профиль: Suvitruf. Сначала хотелось бы рассказать о причинах, побудивших меня участв...

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

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

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

Маржа Xiaomi составляет менее 1% Сегодня Xiaomi Group опубликовала отчет о своей финансовой деятельности за четвертый квартал и за весь 2019 год, подтвердив, что общая маржа от всего оборудования, которое продает Xiaomi, не превышает 1%. Это интересное заявление, так как генеральный директор компании X...

Как писать музыку на Python — помогут три тематические библиотеки (для специалистов разного уровня) Продолжаем тему музыкального программирования — ранее мы говорили о языках Csound, SuperCollider и Pure Data, а сегодня рассказываем Python и библиотеках FoxDot, Pippi и Music-Code. Читать дальше →

[Из песочницы] Круглосуточная трансляции своих видео на YouTube Последнее время в качестве хобби снимаю на видео лекции знакомого психолога. Отснятый материал монтирую и публикую на своём сайте. Месяц назад я загорелся идеей организовать круглосуточную трансляцию этих лекций на YouTube в режиме 24/7. Этакий тематический «телеканал», посв...

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

Книга «Экстремальный Cи. Параллелизм, ООП и продвинутые возможности» Привет, Хаброжители! Для того чтобы овладеть языком C, знания одного лишь синтаксиса недостаточно. Специалист в области разработки должен обладать четким, научным пониманием принципов и методик. Книга «Экстремальный Cи» научит вас пользоваться продвинутыми низкоуровневыми в...

Как я искал хелпдеск среди 15 решений и… не нашёл Этой статьи не должно было быть: вроде как и Хабр не жалобная книга, и у меня частная история далеко не хабровской компании. Но именно на Хабре я получил не очень корректное отношение одной компании и познакомился аж с двумя другими в самый подходящий момент — в момент, когд...

Что не так с Хабром Ловлю себя на мысли, что все меньше и меньше читаю Хабр специально, теперь чаще просто из поиска попадаю или в рекомендациях выскакивает. Начал думать — почему? Ведь раньше были и подписки и прочее. Пришел к такому выводу: Очень длинные статьи, при этом часто очень замудр...

Swift 5.3: Что нового? Привет Хабр! Язык программирования Swift обладает большой популярностью ввиду его использования в написании приложений под iOS, поэтому его развитие представляет интерес для всех занятых в этой области. Давайте посмотрим что нового приготовил разработчикам Swift версии 5.3....

[Перевод] Автоматическое обновление кода до TensorFlow 2 В материале предоставлен перевод руководства по автоматическом обновлению кода с TensorFlow 1.x до Tensorflow 2 с помощью скрипта обновления tf_upgrade_v2. Читать дальше →

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

[Перевод] Использование паттерна BFF для создания общих типов в бэкенде и фронтенде Контракт между бэкендным сервисом и фронтендным потребителем (или клиентом) обычно является местом соединения двух миров. Такой контракт может принимать форму спецификации REST API, конечной точки GraphQL, или чего-то другого. Главное, чтобы он сообщал обеим сторонам, чего ...

O Tilling-wm в 2-х словах Немного расскажу о моем опыте использования тиллинговых менеджеров окон, а также рассмотрим кратко плюсы и минусы, которые я нашёл за 3 месяца использования. Читать дальше →

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

Разработка в Wargaming – встреча с Максимом Барышниковым, Head of Platform (ч.I) Все побежали, и я побежал. Недавно я запустил серию онлайн-митапов, куда приглашаю на дискуссию экспертов в области разработки крупных IT-проектов. Нашим первым гостем был Максим Барышников, Head of Platform из Wargaming. Ниже – расшифровка нашего разговора, вернее, её перва...

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

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

[Перевод] 17 сюрпризов за мой первый год использования Tesla Model 3 У меня Tesla Model 3 уже около года и она способна проезжать 260 миль без дополнительной зарядки. Когда я его покупал, у меня были догадки, на что она способна, а на что нет. Но я столкнулся с неожиданными сюрпризами, несмотря на то, что хорошо изучил эту тему и имею больш...

Эволюция декларативных UI-фреймворков: от динозавров к Jetpack Compose Проект Jetpack Compose привлёк много внимания в Android-мире, ещё когда был в альфа-версии. А недавно добрался до беты — так что теперь всем Android-разработчикам пора понимать, что он собой представляет. Поэтому мы сделали для Хабра текстовую версию доклада Матвея Малькова...

Из чего сделан самый лёгкий современный смартфон в мире? Да, если телефон Palm можно назвать самым легким в мире, то вы правы, мы выбрали не тот гаджет, о котором готовы прямо сейчас рассказать. Но стоит понимать, что телефон Palm — это лишь дополнительный аппарат, который станет компаньоном основному устройству. Мы же не б...

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

Я не настолько богат, чтобы покупать Samsung Когда-то устройства Apple считались премиальными и слишком дорогими на фоне конкурентов. Однако всё меняется. Если посмотреть на то, что нам предлагают другие производители, можно понять, что особо-то флагманы Apple не отличаются от флагманов остальных производителей в вопр...

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

Very Attacked Person: узнай, кто главная мишень киберпреступников в твоей компании Сегодня для многих из Хабровчан профессиональный праздник – день защиты персональных данных. И поэтому нам хотелось бы поделиться интересным исследованием. Компания Proofpoint подготовила исследование об атаках, уязвимостях и защите персональных данных в 2019 году. Его анали...

Легкости перевода. Cisco Webex получит поддержку русского языка Уже в начале 2021 года платформа для корпоративных коммуникаций Cisco Webex научится вести синхронный перевод видеоконференций с иностранного на русский язык и составлять протокол встречи для русскоязычной аудитории. Это – только одна из более чем 50 инноваций, которые компа...

[Перевод] The Ember Times — Выпуск 129 От переводчика: Хотя в последнее время js-фреймворк Ember переживает новый период роста, в русскоязычном js-сообществе сохраняется мнение, что его уже никто не использует и он переживает упадок, повторяя путь Backbone. Отчасти причиной этому является отсутствие материалов н...

Состоялся релиз мистического сюжетного приключения Beyond This Side Издатель Crescent Moon Games сообщил о релизе мобильного сюжетного приключения Beyond This Side. Первую его часть разработчик самостоятельно выпускал некоторое время назад, а теперь игрокам предлагают сразу два эпизода. Выход третьего запланирован на лето этого года. Игра пр...

IntelliJ IDEA 2020.1: Java 14, анализ потока данных в отладчике, новый режим LightEdit, и многое другое Привет, Хабр! На прошлой неделе состоялся релиз IntelliJ IDEA 2020.1, и в этом посте мы коротко расскажем о самом интересном в новой версии. Из крупного: мы добавили поддержку Java 14, анализ потока данных в отладчике, режим редактирования файлов без открытия проекта (LightE...

Mein Linux На Хабре в последнее время появилась серия холиварных статей: Семь причин, почему Линукс Главная причина, почему не Linux (от автора предыдущей статьи) Главная причина, почему все-таки Linux В этих статьях и комментариях к ним много говорили о коммунизме, цельности системы, ...

[Из песочницы] Коронавирус: мы все умрём? Что мы говорим Богу смерти? — Не сегодня. Сирио Форель, сериал «Игра престолов». Насколько действительно опасен коронавирус COVID-19? Сколько людей умрёт от коронавируса в мире? А сколько – в России? Так ли необходимы жесткие меры, принимаемые для борьбы с коронавирусом в ...

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

Реверс API по его android приложению Зачем У меня есть pet-project, приложение для учета финансов. На мой взгляд, одной из ключевых проблем подобных приложений является ручной ввод баланса. У банков есть информация о транзакциях которые я совершаю и даже есть неплохая аналитика. Но Банков несколько и они ничег...

Как подружить PyTorch и C++. Используем TorchScript Около года назад разработчики PyTorch представили сообществу TorchScript — инструмент, который позволяет с помощью пары строк кода и нескольких щелчков мыши сделать из пайплайна на питоне отчуждаемое решение, которое можно встроить в систему на C++. Ниже я делюсь опытом его ...

Переводчик на iPhone: Как пользоваться встроенной программой Перевод в iOS В iOS 14 (обзор всех новых функций) компания Apple добавила новое приложение «Перевод». Нетрудно догадаться, хотя бы по названию, что программа предназначена для перевода с одного языка на другой. Приложение «Перевод» имеет несколько полезных функций, которые окажутся удобны...

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

PostgreSQL Antipatterns: ударим словарем по тяжелому JOIN Продолжаем серию статей, посвященных исследованию малоизвестных способов улучшения производительности «вроде бы простых» запросов на PostgreSQL: редкая запись долетит до середины JOIN сизифов JOIN массивов вредные JOIN и OR CTE JOIN CTE Не подумайте, что я так сильно не л...

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

Как сбросить вес, не занимаясь спортом? Личный опыт Привет, Хабр! По моим наблюдениям, всех людей можно разделить на три категории: счастливчиков с нормальным телосложением, худых, кто не знает как бы поправиться, и полных, кто не знает как бы похудеть. Мне угораздило попасть в третью категорию, и всю взрослую жизнь мой вес ...

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

Angular для Vue разработчиков Сейчас во фронтенде среди фреймворков есть три явных лидера: Angular, React и Vue. Думаю, мы можем судить о любви разработчиков к проекту по количеству звезд на GitHub. На момент написания данной статьи у Vue уже 161 тысяча звезд, на втором месте находится React с 146 тысяча...

5 языков любви сделают ваши отношения крепче Чтобы сохранить отношения, научитесь говорить на языке партнёра.

[Перевод] “Чистый код”: пять ключевых моментов из обязательной к прочтению книги для программистов Недавно я написал о «Пять книг, которые изменили то как я кодирую». В комментариях несколько читателей рекомендовали «Чистый код» Роберта С. Мартина. В результате я прочитал книгу и нашел ее достойной углубленного обзора. Читать дальше →

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

Алгебраические типы данных и Python Возможно, кто-то из читателей, увидев заголовок этой статьи, подумает что-нибудь вроде:"Что?! Алгебраические типы данных?! Это же что-то из мира функциональных языков программирования. Python?! Ну нет... Где Python со своей динамической утиной типизацией, а где типы дан...

[Перевод] Первые впечатления от Amazon Neptune Салют, хабровчане. В преддверии старта курса «AWS для разработчиков» подготовили перевод интересного материала. Во многих юзкейсах, которые мы, как bakdata, видим на сайтах наших клиентов, релевантная информация сокрыта в связях между сущностями, например, при анализе от...

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

Дайджест интересных материалов для мобильного разработчика #289 (13-19 января) Возвращаемся к работе с новым дайджестом — в нем роутинг и компоненты, интеграционные тесты и языки программирования, годовой отчет App Annie и улучшения Duolingo.

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

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

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

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

Книга «Управление памятью в .NET для профессионалов» в правильном переводе команды DotNetRu Совсем недавно в издательстве ДМК-пресс на русском языке вышла замечательная книга Конрада Кокосы «Управление памятью в .NET для профессионалов». Это издание примечательно тем, что в переводе участвовали не только люди со стороны издательства, но и члены сообщества DotNet.R...

[Перевод] Chaos Engineering: искусство умышленного разрушения. Часть 3 Прим. перев.: Это продолжение цикла статей от технологического евангелиста из AWS (Adrian Hornsby) про довольно новую ИТ-дисциплину — chaos engineering, — в рамках которой инженеры проводят эксперименты, призванные смягчить последствия сбоев в системах. Первый материал этого...

Библиотеки для декодирования видео. Сравнение на Python и Rust Многие задаются вопросом — насколько медленный Python в операциях декодирования? Правда ли, что компилируемые языки дают прирост скорости во всем, чего касаются? Что быстрее: OpenCV или ничего? Ответы на эти и другие бесполезные вопросы под катом вы прочитать не сможете. Там...

Явка провалена: выводим AgentTesla на чистую воду. Часть 3 Этой статьей мы завершаем цикл публикаций, посвященных анализу вредоносного программного обеспечения. В первой части мы провели детальный анализ зараженного файла, который получила по почте одна европейская компания, и обнаружили там шпионскую программу AgentTesla. Во втор...

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

[Перевод] Обучение и оценка модели с Keras Это руководство охватывает обучение, оценку и прогнозирование (выводы) моделей в TensorFlow 2.0 в двух общих ситуациях: При использовании встроенных API для обучения и валидации (таких как model.fit(), model.evaluate(), model.predict()). Этому посвящен раздел «Использова...

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

[Перевод] Создание зомби-шутера от третьего лица с помощью DOTS Салют, хабровчане. Как мы уже писали январь богат на новые запуски и сегодня мы анонсируем набор на новый курс от OTUS — «Разработчик игр на Unity». В преддверии старта курса делимся с вами переводом интересного материала. Мы пересобираем ядро Unity с помощью нашего стек...

Презентации WWDC и Platforms State of the Union доступны с субтитрами на русском языке Русский язык впервые включён в список языков, на которые переводятся основные события конференции WWDC. Перевод содержит точные термины, названия элементов пользовательского интерфейса и многое другое.

Как оценить уровень владения Английским языком На Хабре много статей о том, как самостоятельно изучать английский язык. Но вот вопрос, а как оценить свой уровень при самостоятельном изучении? Понятно, что есть IELTS и TOEFL, но эти тесты почти никто не сдает без дополнительной подготовки и эти тесты, как говорят, оцени...

Лучшие смартфоны до 10000 рублей в 2020 году Итак, пришло время поделиться лучшими смартфонами до 10 тысяч рублей. В этом ценовом сегменте представлено немало интересных вариантов. Многим попросту не нужен дорогой телефон, и они ищут себе, как правило, устройство в ценовом сегменте до 10 тысяч. За эту сумму можно полу...

Язык программирования karasic Привет, друг. Как известно, каждый уважаемый кодер рано или поздно пишет свой логер, парсер json и язык программирования. Поскольку первое и второе мы уже написали, то нам ничего не остаётся, как представить наши наработки по новому инновационному языку программирования kara...

ChaiScript — скриптовый язык для C++ Когда возникает потребность внедрить скриптовый язык в проект на C++, первым делом большинство людей вспоминает Lua. В этой статье его не будет, я расскажу о другом, не менее удобном и легком в освоении языке под названием ChaiScript. Читать дальше →

Дайджест интересных материалов для мобильного разработчика #334 (17 — 23 февраля) В этом выпуске новый Android 11, открытая палеонтология, удаленная работа и проектирование темных тем, загадочное уведомление «1» от Samsung и разработка игр в Иране. С праздником! Читать дальше →

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

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

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

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

MLOps: DevOps в мире Machine Learning В 2018 году в профессиональных кругах и на тематических конференциях, посвященных AI, появилось понятие MLOps, которое быстро закрепилось в отрасли и сейчас развивается как самостоятельное направление. В перспективе MLOps может стать одной из наиболее востребованных сфер в I...

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

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

[Перевод] Что нового в Node.js 15? Делимся переводом статьи, в которой собраны подробности о новых функциях 15-й версии Node.js. Версия Node.js 15 была выпущена 20 октября 2020 года. Среди основных изменений: режим throw при необработанных отклонениях особенности языка V8 8.6 NPM 7 экспериментальная поддер...

Как выбрать школу иностранных языков или репетитора Выбирайте среди школ, в которых преподавателям много платят. Школами обычно руководят бизнесмены, и зарплата преподавателей в них примерно одинаковая. Ходил как-то на собеседование в школу английского, которая предлагала зарплату в 2(!) раза выше среднего по Москве. Методист...

[Перевод] Delta: Платформа синхронизации данных и обогащения В преддверии запуска нового потока по курсу «Data Engineer» подготовили перевод интересного материала. Обзор Мы поговорим о достаточно популярном паттерне, с помощью которого приложения используют несколько хранилищ данных, где каждое хранилище используется под свои цели,...

Декодируем сигнал метеоспутника NOAA в 50 строчек кода Привет, Хабр. Продолжим тему декодирования различных видов радиосигналов. Одним из интересных форматов, разработанных еще в прошлом веке, является APT (Automatic Picture Transmission). Он используется для передачи изображений Земли из космоса, и что для нас гораздо более ин...

Антикризисный раздел Хабра А вы знали, что если нажать на Хабре хоткей «/» и ввести запрос в квадратных скобках, то сработает поиск только по ключевым словам? Например, с тегом [covid-19] уже написано более 170 постов — только по одному этому числу можно сделать вывод, что тема вируса волнует наших чи...

[Перевод] Пришло ли время забыть о React и перейти на Svelte? Каждый год выходит исследование State of JavaScript, которое обобщает результаты опроса, изучающего текущее состояние экосистемы JavaScript. Это исследование затрагивает фронтенд-фреймворки, серверную и мобильную разработку, тестирование, популярные ресурсы для разработчиков...

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

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

[Перевод] Путь к Global Talent Visa в UK В мае 2021го я получил Talent Visa от правительства Великобритании, с одобрения Tech Nation как Exceptional Talent. В этой статье я хотел бы задокументировать свой путь к ней. Быть может это поможет кому-то еще. На Хабре уже была отличная статья на эту тему. Моя статья предс...

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

Доклады второго ROS Meetup по навигации роботов 30 ноября 2019 прошёл 2-й ROS Russian MeetUp, организатор — Лаборатория робототехники Сбербанка, собравший больше 200 ROS-разработчиков. В этом материале мы сделали подборки части интересных выступлений с этого MeetUp. Читать дальше →

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

Возвращение на остров Уэйк: детальный обзор карты "Остров Уэйк" для Battlefield V В данном обзоре мы поговорим о карте "Остров Уэйк" для Battlefield V, добавленной в игру в рамках 5 Главы "Война на Тихом Океане". Особенности игрового процесса, обзор добавленного в игру нового оружия, реальные исторические события и соответствие им того, что мы видим в игр...

[Перевод] Смотрим на Chapel, D, Julia на задаче вычисления ядра матрицы Введение Кажется, стоит вам отвернуться, и появляется новый язык программирования, нацеленный на решение некоторого специфического набора задач. Увеличение количества языков программирования и данных глубоко взаимосвязано, и растущий спрос на вычисления в области «Data Scien...

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

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

Опыт использования gRPC в Почте Mail.ru Привет, Хабр! Я работаю в команде Антиспама Почты Mail.ru. В этой статье я бы хотел рассказать про наш опыт запуска сервиса с пропускной способностью около 3 миллионов запросов в минуту на базе технологии gRPC. Это современная технология передачи данных по сети, которая реа...

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

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

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

Google выпустила 3 приложения, которые помогут избавиться от зависимости от смартфонов Google выпустила 3 приложения для любителей цифрового благополучия Google особенно подходит к вопросам психологического состояния владельцев Android-аппаратов. Ей важно, как себя чувствуют клиенты, именно поэтому компания в Android 9 добавила функцию цифрового благополучия, ...

[Из песочницы] Пишем на языке С/C++ в Linux под KolibriOS Вступление KolibriOS – миниатюрная операционная система, ядро и большинство программ которой написано на ассемблере. Это, конечно же, не значит, что на других языках программирования писать для KolibriOS нельзя. Данная статья — инструкция по настройке toolchain'а для Linux. ...

K8S Multicluster Journey Привет, Хабр! Мы представляем команду платформы компании Exness. Ранее наши коллеги уже писали статью про Production-ready images for k8s. Сегодня мы хотим поделиться опытом миграции сервисов в Kubernetes. Читать дальше →

Аэропорты способствуют распространению инфекций, но как это остановить? Мыть руки очень важно, особенно в аэропортах В 2018 году издание Business Insider опубликовало статью, в котором упоминалось, что после посещения туалета свои руки моют только 70% людей. По словам сотрудника Массачусетского университета Христоса Николаидеса (Christos Nicolai...

108-ваттный адаптер Satechi Pro USB-C PD может одновременно заряжать ноутбуки и смартфоны Компания Satechi, которая известная по различным аксессуарам, вчера на Consumer Electronic Show 2020 в Лас-Вегасе представила зарядное устройство Satechi Pro USB-C PD мощностью 108 Вт. 108-ваттный Satechi Pro USB-C PD может одновременно заряжать до 4 устройств через дв...

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

[Перевод] Webpack: руководство для начинающих Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «Webpack: A gentle introduction» автора Tyler McGinnis. Перед изучением новой технологии задайте себе два вопроса: Зачем нужен этот инструмент? Какие задачи он выполняет? Если вы не можете отв...

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

[Перевод] Что нового можно ожидать от Node.js в 2020 году? В 2019 году Node.js исполнилось 10 лет. Количество пакетов, доступных в реестре npm, пересекло отметку в 1 миллион. С каждым годом объём загрузок самой платформы Node.js увеличивается на 40%. Ещё одной важной вехой для Node.js стало то, что этот проект присоединился к OpenJS...

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

[Перевод] Докеризация приложения, построенного на базе React, Express и MongoDB Автор статьи, перевод которой мы публикуем сегодня, хочет рассказать о том, как упаковывать в контейнеры Docker веб-приложения, основанные на React, Express и MongoDB. Здесь будут рассмотрены особенности формирования структуры файлов и папок таких проектов, создание файлов D...

Новая QIWI Кухня — уже 5 марта. Москва, AGLOFT Привет! Через 2 недели, 5 марта, мы проведем нашу новую QIWI Кухню. . Как это было в 2019 В этот раз собираемся в AGLOFT, это м. Тульская, Варшавское шоссе, 33с3. Вход бесплатный, но регистрироваться лучше заранее (регистрация закрывается 29 февраля). Сделать это можно ...

Чего не хватает Google Play на фоне App Store? Google Play может быть лучше App Store, но не хочет Google Play и App Store любят сравнивать наравне с iOS и Android. И это логично, ведь оба приложения являются главными в обеих системах. Apple кардинально обновила App Store в 2017 году, Google Play же выпустила масштабное ...

Рейтинг языков программирования от DOU.UA: JavaScript опередил Java, а Python — PHP Профильный украинский ресурс DOU.UA представил результаты ежегодного опроса о языках программирования, составленного по результатам опроса 10 тыс. отечественных IT-специалистов. В коммерческой разработке JavaScript наконец существенно опередил Java и стал самым популярным яз...

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