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

[Перевод] Reflective Shadow Maps: Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «Reflective Shadow Maps» автора Eric Polman. Reflective Shadow Maps (RSM) (отражающие карты теней) ― это алгоритм, расширяющий “простые” shadow map. Алгоритм учитывает свет, рассеянный после первого попадания на пов...

Нужно ли закрывать пагинацию от индексации? Часть №2 — универсального ответа нет!

[Из песочницы] Криптография в Java Привет, Хабр! Представляю вашему вниманию перевод статьи "Java Cryptography" автора Jakob Jenkov. Данная публикация является переводом первой статьи Java Cryptography из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

Используем SQLite в Flutter Привет, Хабр! Представляем вашему вниманию перевод статьи «Using SQLite in Flutter». Сохранение данных очень важно для пользователей, так как нецелесообразно грузить одни и те же данные из сети. Разумнее будет сохранить их локально. В этой статье я продемонстрирую как с...

[Перевод] Разбираемся с асинхронностью в JavaScript [Перевод статьи Sukhjinder Arora] Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding Asynchronous JavaScript» автора Sukhjinder Arora. Читать дальше →

[Из песочницы] Лучшие практики React и советы, которые каждый разработчик должен знать. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «React Best Practices & Tips Every React Developer Should Know Pt.1» автора Alex Devero. React — одна из самых популярных библиотек для построения интерактивных пользовательских интерфейсов. В этой статье я пока...

[Перевод] Никогда больше не игнорируйте обучение с подкреплением Привет, Хабр! Представляю вашему вниманию перевод статьи «Don’t Ever Ignore Reinforcement Learning Again» автора Michel Kana, Ph.D. Обучение с учителем и обучение без учителя — это ещё не все. Все это знают. Начните с OpenAI Gym. Собираетесь победить чемпиона мира по шах...

[Из песочницы] Vue.js render-функции и переходы (перевод статьи Hajime Yamasaki Vukelic) Здравствуй, Хабр! Начать свою деятельность решил с перевода на русский статей, который мне самому принесли большую пользу. Надеюсь, вам пригодятся. Отмечу, что я старался переводить литературно, а не дословно. Первым вашему вниманию представляю перевод статьи «Vue.js rende...

[Из песочницы] Когда использовать var, let и const в Javascript [перевод статьи Tyler’а McGinnis] Привет, Хабр! Представляю вашему вниманию перевод статьи «var vs let vs const in JavaScript» автора Tyler McGinnis. В этой статье вы узнаете 2 новых способа для создания переменных в Javascript (ES6), let и const. На протяжении этой статьи мы рассмотрим разницу между var,...

[Из песочницы] Классификация покрова земли при помощи eo-learn. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи "Land Cover Classification with eo-learn: Part 1" автора Matic Lubej. Предисловие Примерно полгода назад был сделан первый коммит в репозиторий eo-learn на GitHub. Сегодня, eo-learn превратился в замечательную библиоте...

[Перевод] Разбираемся с промисами в JavaScript Доброго времени суток, Хабр! Представляю вашему вниманию перевод статьи «Understanding Promises in JavaScript» автора Sukhjinder Arora. Читать дальше →

[Из песочницы] Почему нельзя установить размер шрифта у посещенной ссылки Привет, Хабр! Представляю Вашему вниманию перевод статьи «Why can’t I set the font size of a visited link?» автора Jim Fisher. Посещенные ссылки отображаются фиолетовым; не посещенные — голубым. Это различие пришло к нам с времен появления веба. Но CSS позволяет нам перен...

[Перевод] Как сделать ваш HTML отзывчивым, добавив одну строку кода на CSS Привет, Хабр! представляю вашему вниманию перевод статьи «How to make your HTML responsive by adding a single line of CSS» автора Per Harald Borgen. В этой статье я научу вас, как использовать CSS Grid для создания крутой сетки изображений, которая изменяет количество сто...

На пути к ядру Питона Привет, Хабр! Представляю вашему вниманию перевод статьи Toward a “Kernel Python” автора Glyph Lefkowitz (создателя фреймворка Twisted). Подробнее — под катом. Читать дальше →

[Перевод] Envoy модель потоков (Envoy threading model) Привет, Хабр! Представляю вашему вниманию перевод статьи «Envoy threading model» автора Matt Klein. Данная статься показалась мне достаточно интересной, а так как Envoy чаще всего используется как часть «istio» или просто как «ingress controller» kubernetes, следовательно ...

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

[Из песочницы] 27 вещей, которые я хотел бы узнать заранее, прежде чем начинать программировать Привет, Хабр! Представляю вашему вниманию перевод статьи «27 things I wish I knew when I started programming» автора Ken Mazaika. Заранее, прежде чем начинать программировать, хотелось бы узнать массу вещей, но вот 27 из них, которые приходят на ум. Читать дальше →

[Из песочницы] Учебник по JavaFX: начало работы Привет, Хабр! Представляю вашему вниманию перевод статьи «JavaFX Tutorial: Getting started» автора Vojtech Ruzicka. Как настроить и начать работать с JavaFX, с помощью Maven, Gradle или JavaFX SDK. Читать дальше →

[Из песочницы] Как создать простой микросервис на Golang и gRPC и выполнить его контейнеризацию с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Go, gRPC and Docker» автора Mat Evans. Существует множество статей о совместном использовании Go и Docker. Создавать контейнеры, способные взаимодействовать с клиентами и между собой, очень легко. Далее следует небол...

[Перевод] Обмен данными между React-компонентами с использованием библиотеки RxJS Перед вами перевод статьи Chidume Nnamdi, опубликованной на blog.bitsrc.io. Перевод публикуется с разрешения автора. Появление библиотеки RxJS открыло массу новых возможностей в мире JS. Цель RxJS — достигать многого, используя небольшое количество кода. Прочитав эту стат...

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

[Из песочницы] Proof-Of-Work эффективен Привет, Хабр! Представляю вашему вниманию перевод статьи «PoW is Efficient» автора Dan Held. Вступление Большинство людей думает, что энергия, потраченная на Proof-Of-Work (далее PoW), тратится впустую. В этой статье я расскажу, почему все основано на энергии, включая деньг...

[Из песочницы] Почему Swift может стать большим событием в глубинном обучении Здравствуй, Хабр! Представляю вашему вниманию перевод заинтересовавшей меня статьи «Why Swift May Be the Next Big Thing in Deep Learning» автора Max Pechyonkin, в которой автор рассуждает о языке на котором будет осуществляться глубокое обучение в ближайшие годы. Читать дал...

[Из песочницы] Краткое введение в рекурсию. JavaScript Перевод: Привет, Хабр! Представляю вашему вниманию перевод статьи "A Quick Intro to Recursion in Javascript" Yazeed Bzadough. Примечание. Рекурсия не единожды обсуждалась на хабре, но данная статья даёт базовое понимание рекурсии. Это будет полезно начинающим разр...

[Из песочницы] Бесконечный и нелепый список того, что вам нужно знать, чтобы безопасно использовать публичные сети Wi-Fi Привет, Хабр! Представляю вашему вниманию перевод статьи «The Complete, Endless, Ridiculous List of Everything You Need to Be Safe on Public Wi-Fi» автора Patrick F. Wilbur. Wi-Fi сети, вебсайты, протоколы, которые мы используем, не обеспечивают нам необходимой безопасност...

[Перевод] Сервисная сеть, «Плоскость данных» и «Плоскости управления» (Service mesh data plane vs. control plane) Привет, Хабр! Представляю вашему вниманию перевод статьи «Service mesh data plane vs control plane» автора Matt Klein. В этот раз «захотелось и перевелось» описание обоих компонентов service mesh, data plane и control plane. Это описание мне показалось самым понятным и ин...

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

[Из песочницы] Как сэкономить в AWS до полумиллиона долларов? Привет, Хабр! Представляю вашему вниманию перевод статьи «How to reduce your AWS costs? Save up to $500k with these guidelines!» автора George Batschinski. В этой статье мы в подробностях расскажем, как Back4App уменьшила свои расходы в AWS с $55,492 в месяц до $20,074 в ...

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

[Перевод] Криптография в Java. Утилита Keytool Привет, Хабр! Представляю вашему вниманию перевод 10 статьи "Java Keytool" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Из песочницы] Как создать 2D игру с Python и аркадной библиотекой Привет, Хабр! представляю вашему вниманию перевод статьи How to create a 2D game with Python and the Arcade library автора Paul Vincent Craven Как создать 2D игру с Python и аркадной библиотекой Узнайте, как начать работу с Arcade, простой в использовании библиотеки Python д...

[Из песочницы] WWDC19: Приступим к работе с Test Plan для XCTest Привет, Хабр! Представляю вашему вниманию перевод статьи «WWDC19: Getting Started with Test Plan for XCTest» автора Shashikant Jagtap. На прошедшей конференции WWDC компания Apple показала новые классные фичи для разработчиков. В Xcode 11 так же добавлено несколько потряс...

[Перевод] Криптография в Java. Класс Certificate Привет, Хабр! Представляю вашему вниманию перевод заключительной статьи "Java Certificate" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Перевод] Криптография в Java. Класс Signature Привет, Хабр! Представляю вашему вниманию перевод пятой статьи "Java Signature" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

Криптография в Java. Класс MessageDigest Привет, Хабр! Представляю вашему вниманию перевод третьей статьи "Java MessageDigest" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Перевод] Криптография в Java. Класс Mac Привет, Хабр! Представляю вашему вниманию перевод четвертой статьи "Java Mac" автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Из песочницы] Что значит unsafe в Rust? Привет, Хабр! Представляю вашему вниманию перевод статьи "What Is Rust's unsafe?" автора Nora Codes. Мне доводилось видеть много недопониманий относительно того, что значит ключевое слово unsafe для полезности и правильности языка Rust и его продвижения как "б...

Так что же будет с аутентификацией и паролями? Вторая часть отчета Javelin «Состояние строгой аутентификации» Недавно исследовательская компания «Javelin Strategy & Research» опубликовала отчёт «The State of Strong Authentication 2019». Его создатели собрали информацию о том какие способы аутентификации используются в корпоративной среде и пользовательских приложениях, а также...

[Из песочницы] Знакомство с Sass модулями Привет, Хабр! Представляю вашему вниманию перевод статьи «Introducing Sass Modules» автора Miriam Suzanne. Недавно в Sass появилась функциональность, которая вам знакома по другим языкам: модульная система. Это большой шаг вперед для @import, одной из наиболее часто использ...

[Из песочницы] Руководство пользователя Kibana. Визуализация. Часть 1 Доброго времени суток. Всем пользователям ElasticStack рано или поздно нужно визуализировать данные. Большинство использует Kibana. Под катом перевод официальной документации для версии 6.6. Ссылка на оригинальный материал: Kibana User Guide [6.6] » Visualize Читать дальше...

[Перевод] Визуализируем и разбираемся с Hash Match Join Этот пост является третьей частью серии, посвященной операторам соединения (обязательно прочитайте часть 1 — nested loops joins, и часть 2 — merge joins). Перевод статьи подготовлен специально для студентов курса «MS SQL Server разработчик». Hash Match Joins — это надежные ...

[Из песочницы] Изучить отзывчивый веб-дизайн за 5 минут Привет, Хабр! Представляю вашему вниманию перевод статьи «Learn responsive web design in 5 minutes» автора Per. В этой статье я научу вас многим приёмам отзывчивого дизайна за 5 минут. Этого, очевидно, недостаточно для правильного изучения, но здесь вы найдёте обзор на след...

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

[Из песочницы] Забота о себе во время написания кода Привет, Хабр! Представляю Вашему вниманию перевод статьи «Developer health — taking care of yourself as you code» автора Christopher Kad. Недавно мне поставили диагноз «тендинит», и, конечно, в этом нет ничего особенного, и его можно вылечить, но я понял, что не слишком хор...

[Из песочницы] Arduino и прерывания таймера Привет, Хабр! Представляю вашему вниманию перевод статьи "Timer interrupts" автора Предисловие Плата Arduino позволяет быстро и минимальными средствами решить самые разные задачи. Но там где нужны произвольные интервалы времени (периодический опрос датчиков, высок...

[Из песочницы] Вещи, которых я не знаю в 2018 Привет, Хабр! Представляю вашему вниманию перевод статьи "Things I Don’t Know as of 2018" автора Дэна Абрамова. Люди обычно думают, что я знаю многое, но это не так на самом деле. Это не так плохо и я совсем не жалуюсь. (Некоторая малая часть людей часто страдает от предвзят...

[Из песочницы] Учебное пособие по TensorFlow: 10 минутное практическое занятие по TensorFlow для начинающих [перевод] Привет, Хабр! Представляю вашему вниманию перевод статьи "TensorFlow Tutorial: 10 minutes Practical TensorFlow lesson for quick learners" автора Ankit Sachan. Этот туториал по TensorFlow предназначен для тех, кто имеет общее представление о машинном обучении и пыта...

[Из песочницы] Практичный гайд по переменным окружения в Go Привет, Хабр! Представляю вашему вниманию перевод статьи A no-nonsense guide to environment variables in Go автора Enda Phelan. Переменные окружения — лучший способ хранения конфигурации приложения, поскольку они могут быть заданы на системном уровне. Это один из принципов ...

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

[Из песочницы] Восстановление когнитивных способностей 100 пациентов (перевод статьи Дейла Бредесена) Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи Дейла Бредесена, директора отдела нейродегенеративных заболеваний медицинского факультета Калифорнийского университета в Лос-Анджелесе (UCLA), автора «The End of Alzheimer's: The First Program to Prevent...

[Из песочницы] Языковые слои Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Language Layers» автора Robert C. Martin (Uncle Bob). Читать дальше →

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

Псевдо Lens Flare Привет, Хабр! Представляю вашему вниманию перевод статьи «Pseudo Lens Flare» автора John Chapman. Lens flare (блики на линзах) ― это фотографический артефакт, возникающий при рассеивании и преломлении света в системе линз. Хотя он является артефактом, существует множество...

[Перевод] Авария Boeing 737 Max глазами разработчика ПО Представляю вашему вниманию перевод статьи «How the Boeing 737 Max Disaster Looks to a Software Developer» Грега Трэвиса. Речь пойдет о том, как желание Боинга сэкономить и «срезать углы» для коммерческой выгоды, а также культура «некомпетентности и неэтичности» в сообществе...

[Из песочницы] Планирование в Go: Часть I — Планировщик ОС Привет, Хабр! Представляю вашему вниманию перевод статьи «Scheduling In Go: Part I — OS Scheduler» автора Билла Кеннеди, о том, как работает внутренний планировщик Go. Это первый пост в серии из трех частей, который даст представление о механике и семантике, лежащей в осно...

[Из песочницы] Переносим проект с Swift 4.2 на Swift 5.0 Привет, Хабр! Представляю вашему вниманию перевод статьи «Swift 5.0: How to migrate your project and frameworks» автора Antoine Van Der Lee. Swift 5.0 был выпущен в марте 2019 года и является первым стабильным выпуском ABI Swift. Несмотря на то, что многие ресурсы освещают ...

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

Сравнительное тестирование PostgreSQL на FreeBSD, CentOS, Ubuntu Debian и openSUSE Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «PostgreSQL benchmark on FreeBSD, CentOS, Ubuntu Debian and openSUSE» автора Martin Kováčik. В ней рассматриваются тесты СУБД PostgreSQL 10.1 в приближенных к реальным условиям средах на различных unix-сис...

[Из песочницы] Простота Hickey Привет, Хабр! Предлагаю вашему вниманию перевод статьи "Simple Hickey" автора Robert C. Martin (Uncle Bob). Рич Хики выступил с отличной лекцией в «Strange Loop» под названием «Простое, сделанное легко». Я настоятельно рекомендую вам потратить час и послушать её. Это вы...

[Из песочницы] Создание Redux-подобного глобального хранилища, используя React Hooks Привет, Хабр! Представляю вашему вниманию перевод статьи "Build a Redux-like Global Store Using React Hooks" автора Ramsay. Давайте представим, что я написал интересное предисловие к этой статье и теперь мы сразу можем перейти к по-настоящему интересным вещам. Если...

[Из песочницы] Почему плохо, когда Интернет знает о вас всё? Привет, Хабр! Предлагаю вашему вниманию перевод статьи "The Dangers of Overpersonalization" авторов Kim Flaherty и Kate Moran. Итог: Излишняя персонализация контента приводит к однородному и безразличному восприятию пользователем информации и может вызывать усталос...

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

[Из песочницы] Объектно-ориентированное программирование в Java и Python: сходства и отличия Привет, Хабр! Представляю вашему вниманию перевод статьи “Object-Oriented Programming in Python vs Java” автора Джона Финчера. Реализация объектно-ориентированного программирования (ООП) в языках Java и Python отличается. Принцип работы с объектами, типами переменных и прочи...

[Из песочницы] Какую роль могут сыграть технологии в древнем искусстве смешивания специй? Привет, Хабр! Представляю вашему вниманию перевод статьи «AI and spices: Would you put cumin on a pizza?» автора Dhruti Shah. Что общего между тосканской курицей, стейком-бурбоном и новоорлеанской колбасой? Все они представляют собой новые ароматы специй, разработанные кру...

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

SamsPcbGuide, часть 10: Технологии, пайка бессвинцовых компонентов Данная статья – первая статья о технологиях сборки печатных плат. Последний семинар от PCB SOFT был посвящён проектированию, обеспечивающему технологичность изготовления печатной платы (англ. DFM, design for manufacture). Был поднят вопрос о целесообразности реболлинга бессв...

[Перевод] Ускорение instagram.com. Часть 2 Сегодня мы представляем вашему вниманию перевод второго материала из серии, посвящённой оптимизации instagram.com. Здесь речь пойдёт об улучшении механизма заблаговременного выполнения GraphQL-запросов и о повышении эффективности передачи HTML-данных клиенту. → Читать, за...

[Из песочницы] Лицензия для проектов с открытым исходным кодом, которая обязывает пользователей «не причинять вред» Привет, Хабр! Представляю вашему вниманию перевод статьи «An Open Source License That Requires Users to Do No Harm» автора Klint Finley. Китай использует технологии распознавания лиц, чтобы вычислять уйгурских мусульман. Военные США используют дроны для убийства подозрева...

RE: Боль и слёзы в Svelte 3 Вместо предисловия Данный пост является ответом на вчерашнюю статью «Боль и слёзы в Svelte 3» и появился как следствие сильно «располневшего» комментария к оригинальной статье, который я решил оформить в виде поста. Ниже я буду использовать слово автор для отсылки к автору о...

[Из песочницы] Глубокое ранжирование для сравнения двух изображений Привет, Хабр! Представляю вашему вниманию перевод статьи «Image Similarity using Deep Ranking» автора Akarsh Zingade. Алгоритм Deep Ranking Понятия "сходства двух изображений" — введено не было, поэтому давайте введем данное понятие хотя бы в рамках статьи. Сходс...

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

Перевод «Подготовьте ваши приложения к 64-бит требованиям» Перевод статьи Get your apps ready for the 64-bit requirement блога «Android Developers Blog». Современные 64-бит процессоры увеличивают скорость и обогащают опыт ваших пользователей. Добавление 64-бит версии приложения даёт улучшение производительности, открывает пути для...

[Из песочницы] HTML, который мы потеряли Привет, Хабр! Представляю вашему вниманию перевод статьи "The HTML we never had" автора Сергея Кучерова. В этом году исполняется 30 лет с тех пор, как Бернерс-Ли начал разрабатывать язык HTML. С тех пор мы прошли долгий путь, начиная с восхищения новой технологией,...

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

[Перевод] Исчерпывающий список различий между VB.NET и C#. Часть 1 Согласно рейтингу TIOBE в 2018 году VB.NET обогнал по популярности C#. Совпадение или нет, но в феврале Эрик Липперт, один из создателей C#, призвал читателей обратить внимание на блог его друга, бывшего коллеги по команде компилятора Roslyn и, по совместительству, ярого ф...

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

[Из песочницы] Создание REST API с Node.js и базой данных Oracle Привет, Хабр! представляю вашему вниманию перевод статьи «Creating a REST API: Web Server Basics». Часть 1. Создание REST API: основы веб-сервера Веб-сервер является одним из наиболее важных компонентов REST API. В этом посте вы начнете свой проект API REST, создав нескольк...

[Из песочницы] Как хакеры используют Microsoft Excel против самого себя Привет, Хабр! представляю вашему вниманию перевод статьи «How Hackers Turn Microsoft Excel's Own Features Against It» автора Лили Хэй Ньюман. Elena Lacey, getty images Наверняка для многих из нас Microsoft Excel – программа скучная. Она много чего умеет, но всё-таки это н...

[Перевод] Слишком чисто? Привет, Хабр! Предлагаю вашему вниманию перевод статьи "Too Clean?" автора Robert C. Martin (Uncle Bob). Я только что посмотрел выступление Сары Мэй: Жизнеспособный код. Это было очень хорошо. Я полностью согласен с основными моментами ее выступления. С другой стороны, темо...

[Из песочницы] Устранение рекурсии в Python Привет, Хабр! Представляю вашему вниманию перевод статьи "Removing a recursion in Python, part 1" автора Эрика Липперта (Eric Lippert). На протяжении последних 20 лет я восхищался простоте и возможностям Python, хотя на самом деле никогда не работал с ним и не изуч...

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

[Из песочницы] Ограничения машинного обучения Привет, Хабр! Представляю вашему вниманию перевод статьи “The Limitations of Machine Learning“ автора Matthew Stewart. Большинство людей, читающих эту статью, вероятно, знакомы с машинным обучением и соответствующими алгоритмами, используемыми для классификации или прогнози...

[Из песочницы] Amazon: 25 лет успеха на поприще электронной коммерции Привет, Хабр! Представляю вашему вниманию перевод статьи автора «AMAZON: 25 years of success in ecommerce». От гаража до самой дорогой компании мира Понедельник. Утро. Сиэтл. Новые сотрудники Amazon выстраиваются в очереди, чтобы пройти посвящение и пополнить ряды гиганта...

[Перевод] Учебник по JavaFX: основные макеты Перевод статьи «JavaFX Tutorial: Basic layouts» автора Vojtech Ruzicka. Как организовать и разместить GUI компоненты в приложении JavaFX. Это четвертая статья в серии о JavaFX. В предыдущей статье я описал, как использовать FXML и SceneBuilder для создания вашего пользоват...

[Перевод] Функциональное программирование: дурацкая игрушка, которая убивает производительность труда. Часть 2 Сегодня мы представляем вашему вниманию продолжение перевода материала о вреде так называемого «функционального» программирования. Читать дальше →

Возможно ли без Redux? На сегодняшний день можно найти уйму позиций, где требуется react/redux. React прекрасен, вопросов нет. Вопрос к Redux — возможно ли без него. Если погуглить чуть-чуть, найдется добротная статья на хабре (https://habr.com/ru/post/350850/), где автор задается таким же вопросо...

[Перевод] Криптография в Java. Класс KeyPair Привет, Хабр! Представляю вашему вниманию перевод 6, 7 и 8 статей автора Jakob Jenkov из серии статей для начинающих, желающих освоить основы криптографии в Java. Читать дальше →

[Из песочницы] Самая дорогая ошибка в моей жизни: подробно об атаке на порт SIM-карты Привет, Хабр! Представляю вашему вниманию перевод статьи «The Most Expensive Lesson Of My Life: Details of SIM port hack» автора Sean Coonce. В прошлую среду я потерял более 100000 долларов. Деньги испарились в течение 24 часов в результате «атаки на порт SIM-карты», котора...

Garbage Collector. Полный курс + перевод из BOTR В данной статье вы встретите сразу два источника информации: Полный курс по работе Garbage Collector на русском языке: CLRium #6 (текущий семинар здесь) Перевод статьи из BOTR "Устройство сборщика мусора" от Маони Стевенс. Читать дальше →

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

[Из песочницы] Перевод руководства по Stream API от Benjamin Winterberg Привет, Хабр! Представляю вашему вниманию перевод статьи "Java 8 Stream Tutorial". Это руководство, основанное на примерах кода, представляет всесторонний обзор потоков в Java 8. При моем первом знакомстве с Stream API, я был озадачен названием, поскольку оно очень созвучно...

Pentaho Data Integration (PDI), Python и глубокое обучение Привет, Хабр! Представляю вашему вниманию перевод статьи «Pentaho Data Integration (PDI), Python and Deep Learning». Глубокое Обучение (DL) — почему вокруг него столько шума? По данным Zion Market Research, рынок глубокого обучения (DL) увеличится с 2,3 млрд долларов в 201...

[Из песочницы] В чем разница между 4G и 5G? Привет, Хабр! Я учусь по специальности радиотехника. В последнее время многие знакомые спрашивают меня, зачем переходить на технологию 5G и в чем разница между 4G и 5G. Поэтому сегодня представляю вашему вниманию перевод статьи на эту тему. Читать дальше →

[Из песочницы] Как написать легко описываемый код Привет, Хабр! Часто ли у вас было, что вы или ваши коллеги не могли описать свой собственный код парочкой фраз? Предлагаю вашему вниманию перевод статьи "How to write easily describable code" автора Cedd Burge, в которой он делится советом, как избежать таких ситуа...

[Из песочницы] Новые рубежи в Физике Здравствуй, уважаемый читатель! Представляю вашему вниманию перевод с английского языка статьи «Physics, The Next Frontier» авторства Chris Hecker. Я, начинающий Java-разработчик, столкнулся с тем, что материалы по созданию физического внутриигрового движка представлены ли...

[Перевод] UDB. Что же это такое? Часть 3. Datapath FIFO Продолжаем делать перевод фирменной документации фирмы Cypress на блоки UDB. Тем более, что всё очень удачно совпадает. Для продолжения практической статьи по UDB понадобится использование FIFO, а в теоретической части мы подобрались как раз к их описанию. Поэтому начинаем...

[Перевод] 6 уроков, извлечённых из поиска решения масштабной проблемы на gitlab.com. Часть 2 Представляем вашему вниманию вторую часть перевода материала о борьбе команды gitlab.com с тиранией времени. → Вот, кстати, первая часть. Читать дальше →

[Перевод] Что есть и чего нет в Go. Часть 2 Всем привет! Cегодня делимся заключительной частью перевода статьи «Что есть и чего нет в Go». Напоминаем, в первой части речь шла о элементах, которые есть в Go, сегодня же поговорим о том, чего в Go нет. Перевод данного материала подготовлен в преддверии старта нового пот...

[Из песочницы] 40 лучших инструментов и ресурсов Laravel Привет, Хабр! Представляю вашему вниманию подборку, которая является переводом оригинальной статьи с моего блога. Если есть идеи что добавить в подборку — буду рад пообщаться в комментах. Наслаждайтесь! Читать дальше →

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

[Перевод] MVC в Unity со Scriptable Objects. Часть 1 MVC (Model-View-Controller) — это схема, предполагающая разделение данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента, чтобы каждый из них можно было независимо модифицировать. Разработчик Cem Ugur Karacam поделился своим опытом ...

[Из песочницы] GIT изнутри: введение (перевод) Привет, Хабр! Представляю вашему вниманию перевод статьи "Git for Computer Scientists" автора Tommi Virtanen. GIT изнутри: введение От себя: Периодически почитываю статьи, как различные популярные технологии устроены под капотом, наткнулся вот на этот материал. Ста...

[Из песочницы] 10 советов для того, чтобы быть хорошим техническим лидером Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Tips for Being a Good Tech Lead» автора VijayDeveloper. Лидерство это не услуга, это умение. Профессионалы, работающие разработчиком программного обеспечения в течение нескольких лет, получают шанс стать технолог...

[Перевод] Указатели сложны, или Что хранится в байте? Привет, Хабр! Представляю вашему вниманию перевод статьи "Pointers Are Complicated, or: What's in a Byte?" авторства Ralf Jung. Этим летом я снова работаю над Rust фуллтайм, и я снова буду работать (помимо прочих вещей) над "моделью памяти" для Rust/MIR. Однако, прежде чем я...

Первое знакомство с Home Assistant Home Assistant – популярное приложение с открытым исходным кодом для организации умного дома. Первый опыт автора в работе с Home Assistant основывается на попытке интеграции в него ‘умной рисоварки‘. Автор постарается описать основные компоненты и возможности данного прило...

[Перевод] Почему в основе каждого нового веб-приложения в PayPal лежит TypeScript? Недавно мы опубликовали материал, в котором Эрик Эллиот критиковал TypeScript. Сегодня мы представляем вашему вниманию перевод статьи Кента Доддса. Тут он рассказывает о том, почему в PayPal перешли с Flow на TypeScript. Читать дальше →

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

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

[Перевод] 10 советов и приемов, которые помогут вам стать лучшим разработчиком на VueJS Перед вами вольный перевод статьи 10 Tips & Tricks to make you a better VueJS Developer с сайта Dev.to. Автор расскажет нам об интересных и полезных вариантах применения привычных нам средств VueJS. Введение Мне действительно нравится работать с VueJS и каждый раз, когда...

[Из песочницы] Инстансы по информационной безопасности на платформе attackdefense.com … Мы живем в эпоху больших событий и маленьких людей … Уинстон Черчилль Сегодня вашему вниманию представляем первую статью из цикла о разборе и прохождении лабораторных работ с ресурса attackdefense.com с поддержкой известного организатор конференций (Black Hat и Pentes...

[Из песочницы] «Статья про минет»: ученые обработали 109 часов орального секса, чтобы разработать ИИ, который сосет член Привет, Хабр! Представляю вашему вниманию перевод статьи Саманты Коул (Samantha Cole) c motherboard.vice.com. Анонимные специалисты по машинному обучению написали «статью про минет», чтобы сделать эту машинку для отсоса более реалистичной. Autoblow AI, секс-игрушка для поль...

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

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

Уточняем описание функций системы с помощью диаграммы Sequence Уточняем описание функций системы с помощью диаграммы Sequence (продолжение "Белки") В данной статье рассмотрим, как можно детализировать (уточнить) описание автоматизируемой функции с помощью UML Sequence Diagram — диаграммы последовательности. В данном примере я использую ...

[Из песочницы] 12 социальных навыков, которые совершенствуют работу руководителей ИТ-проектов Привет, Хабр! Представляю вашему вниманию перевод статьи: «12 Soft Skills That Make IT Project Managers Unstoppable» автора Pavel_Ku. Растущая конкуренция на рынке труда свидетельствует о том, что одной лишь работы, основанной на технических навыках, уже недостаточно. В реа...

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

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

Часть вторая. Как проходить code review по версии Google Возможно вы читали первую часть статьи про код ревью со стороны ревьювера (кстати, мы уже успели ее обсудить в последнем выпуске подкаста "Цинковый прод"). Так как статья набрала много лайков, пишу обещанное продолжение про код ревью с другой стороны — со стороны автора из...

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

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

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

[Из песочницы] Вам есть, что скрывать Привет, Хабр! Представляю вашему вниманию перевод статьи автора «You don’t have nothing to hide» автора Sharon Flitman. Кажется, приватность в 21м веке становится все более размытым понятием. В не столь далеком прошлом лишь несколько моих друзей знали, где я нахожусь в ...

Все свое: туториал по созданию новых действий для UiPath RPA Данная статья – обучающий материал, который позволяет по шагам пройтись по процессу создания и публикации нового компонента для платформы UiPath RPA. Это удобно в разных случаях, например, для простой интеграции с системами компании или в ситуациях, когда компания хочет помо...

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

[Из песочницы] Система Управления Тесткейсами QuAck — простые радости тестирования Привет, Хабр! Представляю вашему вниманию перевод статьи «QuAck — the joy of testing» автора Aziz Namazov. Сегодня я затрону непростую тему жизненного цикла программного обеспечения. Тема эта достаточно сложная и многогранна, включающая в себя все этапы, начиная от дизайн...

[Из песочницы] Как подключить Raspberry PI к Azure IoT: пошаговая инструкция Привет, Хабр! Представляю вашему вниманию перевод статьи Connecting Raspberry PI via Azure IoT: Step-By-Step Tutorial. В этом посте мы расскажем, как подключить Raspberry Pi как периферийное устройство для передачи сигналов к светодиодной панели, использовав модуль Azure Io...

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

[Из песочницы] Сказ о полукольцах Привет, Хабр! Предлагаю вашему вниманию перевод статьи "A tale on Semirings" автора Luka Jacobowitz. Когда-нибудь задумывались, почему сумма типов называется суммой типов. Или, может, вы всегда хотели узнать, почему оператор <*> записывается именно так? И что...

[Перевод] Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик» Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопрос...

[Перевод] Топ 20 навигационных фич в IntelliJ IDEA. Часть 2 Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Продвинутый курс». И хотя в данном материале речь пойдет преимущественно о Java, материал будет полезен Android-разработчикам Первая часть тут Читать дальше →

Резервное копирование, часть 4: Обзор и тестирование zbackup, restic, borgbackup В данной статье будут рассматриваться программные средства для резервного копирования, которые путем разбиения потока данных на отдельные компоненты (chunks), формируют репозиторий. Компоненты репозитория могут дополнительно сжиматься и шифроваться, а самое главное — при по...

[Из песочницы] Создаем элементы интерфейса программно с помощью PureLayout Привет, Хабр! Представляю вашему вниманию перевод статьи Creating UIViews Constraints Programmatically Using PureLayout автора Aly Yaka. Сегодня я проведу вас через создание простого пользовательского интерфейса мобильного приложения кодом, без использования раскадровок и...

[Из песочницы] Комплексный подход к визуализации событий безопасности и измерению её эффективности Привет, Хабр! Представляем вашему вниманию перевод статьи "A Full-Scale Security Visualization Effectiveness Measurement and Presentation Approach". От автора перевода Визуализация оказывает неоценимую помощь экспертам в получении выводов и знаний об объекте исследований,...

[Из песочницы] Что такое программное обеспечение и почему так важно это понимать? Привет, Хабр! Представляю вашему вниманию перевод статьи «What is software and why is understanding it important?» автора Эдриана Бонфьюеса (Adrian Bbonfues). Позвольте мне перефразировать слова Марка Андреессена (Marc Andreessen) «программное обеспечение пожирает мир» в «...

[Перевод] Создание игры «Крестики-нолики» при помощи TypeScript, React и Mocha Представляем вам перевод статьи Josh Kuttler, опубликованной на blog.bitsrc.io. Узнайте, как создать приложение «Крестики-нолики», используя React и TypeScript. Простая игра в крестики-нолики создана по модульному принципу и загружена на сайт Bit. Вы можете изменять компо...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 3 Представляем вашему вниманию третью часть перевода материала о пути, который прошла компания Dropbox, внедряя у себя систему проверки типов Python-кода. → Предыдущие части: первая и вторая Читать дальше →

[Из песочницы] Применение формальных методов валидации моделей для UI Привет, Хабр! Представляю вашему вниманию перевод статьи «FORMALLY SPECIFYING UIS» автора Hillel Wayne. От автора Относительно недавно я наткнулся на статью про Инженерные методы в разработке ПО, где vasil-sd рассказал про формальную валидацию спецификаций к создаваемым пр...

Настройка Warnings Next Generation плагина для интеграции PVS-Studio Релиз PVS-Studio 7.04 совпал c релизом плагина Warnings Next Generation 6.0.0 для Jenkins. Как раз в этом релизе Warnings NG Plugin добавил поддержку статического анализатора PVS-Studio. Этот плагин визуализирует данные о предупреждениях компилятора или других инструментов ...

[Из песочницы] Изучение комбинаторных парсеров с Rust Привет, Хабр! Представляю вашему вниманию перевод статьи "Learning Parser Combinators With Rust". Эта статья учит основам комбинаторных парсеров людей, которые уже знакомы с Rust. Предполагается, что никаких других знаний не требуется, а всё, что не имеет прямого о...

[Перевод] Posit-арифметика: победа над floating point на его собственном поле. Часть 1 Часть 2 От переводчика: Тема формата Posit уже была на хабре здесь, но без существенных технических подробностей. В этой публикации я предлагаю вашему вниманию перевод статьи Джона Густафсона (автора Posit) и Айзека Йонемото, посвящённой формату Posit. Так как статья имеет ...

[Перевод] Лямбды: от C++11 до C++20. Часть 1 Добрый день, друзья. Сегодня мы подготовили для вас перевод первой части статьи «Лямбды: от C++11 до C++20». Публикация данного материала приурочена к запуску курса «Разработчик C++», который стартует уже завтра. Лямбда-выражения являются одним из наиболее мощных дополнений...

Разработка цифровых продуктов с помощью ментальных моделей Привет, Хабр! Предлагаю вашему вниманию перевод статьи Designing Digital Products with Mental Models автора дизайнера Тима Шеинера. Лучший способ добиться взаимопонимания в проектной команде. Перевод — это сложно Когда-то, путешествуя по Индии, я купил недорогую книжку — ...

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

[Из песочницы] Как создать идеальное техническое портфолио Привет, Хабр! представляю вашему вниманию перевод статьи «How To Build A Great Technical Portfolio» автора Emma Wedekind. Портфолио — это отображение вашей личности, обычно первое впечатление о вас и вашей работе складывается именно благодаря портфолио. Таким образом, крайн...

[Из песочницы] Подключение сторонних аудио и видео решений к Microsoft Teams Привет, Хабр! Представляю вашему вниманию перевод-адаптацию статьи «Integrating Third-Party Voice & Video with Microsoft Teams» автора Brent Kelly, в которой он рассматривает проблему интеграции Microsoft Teams с другими продуктами. 9 июля 2018 г. Пригодится ли теперь ваша...

[Перевод] Приёмы в проектировании пользовательского интерфейса, которые сэкономят время В переводе этой статьи автор приводят ряд советов и приёмов, которые упростят жизнь при проектировании дизайна пользовательского интерфейса. В статье даны сведения о полезных и экономящих время возможностях работы таких программ как Sketch, Adobe Illustrator, Figma, Adobe XD...

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

[Перевод] Чем занимается геймдизайнер? Привет, Хабр! Представляю вам перевод статьи "What Does a Game Designer do?" автора Kai Wüest. Kai Wüest — продюсер из Исландии, работавший раньше тестировщиком, а затем — геймдизайнером. День в роли геймдизайнера Легендарный геймдизайнер. Человек, миф, легенда, стоящая за ...

Создание своего jsfiddle, часть 2 Привет всем читателем Habr. В данной статье мы будем продолжать писать свой онлайн редактор кода. В этой статье мы сделаем функцию сохранения кода в localStorage и по обновлению страницы этот код будет вставляться в эти 3 поля, а также сделаем функцию скачивания этого кода...

[Из песочницы] KVM (недо)VDI с одноразовыми виртуальными машинами с помощью bash Кому предназначена данная статья Данная статья может быть интересна системным администраторам, перед которыми вставала задача создать сервис «одноразовых» рабочих мест. Пролог В отдел ИТ сопровождения молодой динамично развивающейся компании с небольшой региональной сетью,...

Построение поведенческих воронок на языке R, на основе данных полученных из Logs API Яндекс.Метрики Анализ воронки продаж — типичная задача для интернет маркетинга, и в частности электронной коммерции. С её помощью вы можете: Выяснить на каком из шагов к покупке вы теряете потенциальных клиентов. Моделировать объём дополнительного притока выручки, в случае расширения каж...

[Перевод] GCP: Разбор вычислительного стека Google Cloud Platform Перевод статьи подготовлен специально для студентов курса «Облачные сервисы». Интересно развиваться в данном направлении? Смотрите запись профессионального мастер-класса «AWS EC2 сервис», который провёл Егор Зуев — TeamLead в компании InBit и автор образовательной программы...

На пути к физическим принципам биологической эволюции. Окончание + полный текст перевода Сокращенный перевод статьи М. Кацнельсона, Ю. Вольфа и Е. Кунина Towards physical principles of biological evolution Mikhail I. Katsnelson, Yuri I. Wolf, Eugene V. Koonin Оригинал статьи (Две предыдущие части уже были опубликованы: начало и продолжение ) Возможна ли конвер...

[Перевод] Руководство пользователя Kibana. Визуализация. Часть 2 Вторая часть перевода официальной документации по визуализации данных в Kibana. Ссылка на оригинальный материал: Kibana User Guide [6.6] » Visualize Ссылка на 1 часть: Руководство пользователя Kibana. Визуализация. Часть 1 Читать дальше →

[Перевод] Знакомство с HealthKit В этой статье про HealthKit вы узнаете, как запрашивать разрешение на доступ к данным HealthKit, а также считывать и записывать данные в центральный репозиторий HealthKit. В статье используется Swift 4, iOS 11, Xcode 9 версии. HealthKit — это API, которое было представлено...

[Перевод] Представляем «CLI Builder»‎-ы В этой статье мы рассмотрим новый API Angular CLI, который позволит вам расширять существующие возможности CLI и добавлять новые. Мы обсудим, как работать с этим API, и какие существуют точки его расширения, позволяющие добавлять новый функционал в CLI. Читать дальше →

[Перевод] Почему вам следует использовать pathlib От переводчика: Привет, хабр! Представляю вашему вниманию перевод статьи Why you should be using pathlib и её продолжения, No really, pathlib is great. Много внимания нынче уделяется таким новым возможностям Python, как asyncio, оператору :=, и опциональной типизации. При э...

CI\CD для стартапа: какие есть инструменты, и почему ими пользуются не только крупные и известные компании Разработчики CI\CD-инструментов часто указывают в качестве клиентов крупные компании — Microsoft, Oculus, Red Hat, даже Ferrari и NASA. Казалось бы, что такие бренды работают только с дорогими системами, которые не сможет позволить себе условный стартап из пары разработчиков...

[Перевод] Программный поиск общего кода с помощью oEmbed Всем доброго времени суток! Хочу поделиться переводом статьи ""Programmatically Discovering Sharing Code With oEmbed" автора Drew McLellan. Введение На многих сайтах размещены мультимедиа и контент, которыми можно поделиться в другой платформе с помощью некоторого HTML-кода...

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

[Из песочницы] 10 самых распространенных ошибок Spring Framework Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Most Common Spring Framework Mistakes» автора Toni Kukurin. Spring, вероятно, один из самых популярных Java-фреймворков, а также могучий зверь для укрощения. Хотя его базовые концепции довольно легко понять, д...

[Перевод] Приключения неуловимой малвари, часть V: еще больше DDE и COM-скриплетов Эта статья является частью серии «Fileless Malware». Все остальные части серии: Приключения неуловимой малвари, часть I Приключения неуловимой малвари, часть II: скрытные VBA-скрипты Приключения неуловимой малвари, часть III: запутанные VBA-скрипты для смеха и прибыли ...

[Перевод] Пользователи и авторизация RBAC в Kubernetes Прим. перев.: Продолжая недавно затронутую нами тему безопасности Kubernetes в целом и RBAC — в частности, публикуем перевод этого материала от французского консультанта из международной компании Big Data-компании Adaltas. Автор в деталях показывает, как создавать пользовате...

[Из песочницы] Прагматическое функциональное программирование Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Pragmatic Functional Programming» автора Robert C. Martin (Uncle Bob). Переход к функциональному программированию всерьез развился только около десяти лет назад. Мы видим, что такие языки, как Scala, Clojure и F# прив...

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

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание ...

Amazon выпустила Open Distro for Elasticsearch Эта статья — обзор новостей о том, как — Amazon выпустила Open Distro for Elasticsearch — почему они это сделали? — что это значит для компании Elastic и для Open Source вообще? Elastic Жила была компания Elastic. Было у них несколько Open Source продуктов: — Сам Elast...

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

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

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

[Перевод] Детальный разбор новых возможностей React 16+, часть 1: общие сведения Сегодня мы представляем вам первую часть перевода этого большого материала. Он посвящён детальному разбору новых возможностей React, которые появились в этой библиотеке начиная с версии 16. Автор этого материала уже 5 лет занимается программированием. В прошлом он был дизайн...

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

AMP-страницы получили ряд улучшений Разработчики проекта Google AMP опубликовали обзор новых возможностей, запущенных для страниц с ускоренной загрузкой в первом квартале 2019 года. Видео Минимизация видео. Теперь для AMP можно настроить минимизацию угла просмотра видео при прокрутке страницы. Это позволит пол...

[Перевод] Как обучать детей правильно пользоваться технологиями, если в вашем детстве такого не было? Привет, Хабр! Предлагаю вашему вниманию перевод статьи "Children's Exposure to Digital Technology Causes Parental Anxiet" от Kim Flaherty и Kate Moran. Читать дальше →

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

От ежедневных аварий к стабильности: Informatica 10 глазами админа ETL-компонента хранилища данных часто оказывается в тени самого хранилища и ей уделяется меньше внимания, чем главной базе данных или фронт-компоненте, BI, формировании отчётов. При этом с точки зрения механики наполнения хранилища данными, ETL играет ключевую роль и требу...

Cоздание визуальных компонентов в Unity UI. Система частиц Привет! Эта статья о создании собственных визуальных компонентов в UI на примере компонента для визуализации системы частиц в Canvas’e. Данная информация будет полезна для реализации различных эффектов в пользовательском интерфейсе, а также может использоваться для генераци...

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

[Перевод] Делаем приложение доступным, используя библиотеку тестирования доступности aXe Представляем вам перевод статьи Indrek Lasn, опубликованной на Medium.com. Под катом вы узнаете, как сделать приложение или сайт более доступными при помощи aXe — средства тестирования доступности веб-сайтов и других пользовательских интерфейсов. react-axe показывает резул...

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

Как дебажить фронтенд и бекенд: пошаговая инструкция Привет, Хабр! Представляю вам перевод статьи "How to debug javascript in Chrome quick and easy ". В этом посте мы научимся дебажить JavaScript на фронт- и бекенде с помощью Chrome DevTools и VS Code. Читать дальше →

Рекомендательная система для Directum Club. Часть первая, коллаборативная Каждый день пользователи по всему миру получают большое количество различных рассылок — только через сервис MailChimp ежедневно рассылают миллиард писем. Из них открывают 20.81%. Ежемесячно пользователи наших сайтов получают рассылки с отобранными редактором материалами. Эти...

Как мы разогнали САПР КОМПАС-3D → Часть 3 Это заключительная часть статьи об ускорении КОМПАС-3D v18 (Часть 1, Часть 2). Она посвящена доработкам в расчетах массо-центровочных характеристик и тому, что сделано для ускорения КОМПАСа на стороне нашего геометрического ядра C3D. И еще немного расскажем о том, какое желе...

Как убедить всех, что у тебя защищённый ЦОД? Преамбула. Статья носит исключительно информационный характер. Предназначена для потенциальных клиентов ЦОД, которые слышали про 152-ФЗ, 149-ФЗ, хотят потратить бюджетные средства и не знают, что такие схемы бывают. Для удобства восприятия материала автор будет излагать схем...

RTOS или не RTOS вот в чем вопрос На написание данной статьи меня побудила длинная ветка комментариев (дискуссией это я назвать, к сожалению, не могу) к моей недавней статье “Многообразный мир embedded systems и место Embox в нем”. Меня в нескольких местах упрекнули в том, что я путаю RTOS и Embedded OS, чт...

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

Заворачиваем весь трафик ОС в Tor Все описанное в статье реализовано в виде инструмента Toroxy, доступного на GitHub В последнее время анонимность в сети является предметом горячих споров. Ни для кого не секрет, что данные о посещениях Интернет-ресурсов с локального устройства могут собираться на разных у...

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

[Из песочницы] Как научиться учиться Привет, Хабр! Представляю вашему вниманию перевод статьи «HOW TO LEARN HOW TO LEARN». Заметки и наблюдения о том, как лучше организовать свой учебный процесс. Мы, IT-шники, обречены на постоянное обучение до конца жизни. Еще 10-15 лет назад знания Java и JSP-серверлетов б...

Основы движков JavaScript: общие формы и Inline кэширование. Часть 1 Привет, друзья. В конце апреля мы запускаем новый курс «Безопасность информационных систем». И уже сейчас хотим поделиться с вами переводом статьи, которая непременно будет очень полезной для курса. В статье описаны ключевые основы, они являются общими для всех движков Jav...

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

[Перевод] Руководство пользователя Kibana. Визуализация. Часть 4 Четвертая часть перевода официальной документации по визуализации данных в Kibana. Ссылка на оригинальный материал: Kibana User Guide [6.6] » Visualize Ссылка на 1 часть: Руководство пользователя Kibana. Визуализация. Часть 1 Ссылка на 2 часть: Руководство пользователя Kiban...

[Из песочницы] Мышь, поставившая крест на проводных собратьях Развеиваем миф о том, что проводная мышь лучше Привет, Хабр! Представляю вашему вниманию перевод статьи «The mouse to end all mice» автора Dave Gershgorn. Logitech Chaos Spectrum беспроводной Bluetooth «свисток» Концепция новой мыши утверждает, что она так же хороша или ...

[Перевод] io_submit: альтернатива epoll, о которой вы никогда не слышали Недавно внимание автора привлекла статья на LWN о новом интерфейсе ядра для опроса (polling). В ней обсуждается новый механизм опроса в Linux AIO API (интерфейс для асинхронной работы с файлами), который добавили в ядро версии 4.18. Идея довольно интересная: автор патча пр...

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

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

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

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

[Перевод] Паттерны и анти-паттерны CI/CD. Часть 3 И снова здравствуйте. Сегодня хотим поделиться с вами переводом третьей части статьи «Паттерны и анти-паттерны CI/CD», предыдущие части которой можно прочитать здесь и здесь. Напомним, данная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инс...

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

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

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

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

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

[Из песочницы] Новичку only: 10 вещей, которые вы должны знать как веб-разработчик Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Things You Should Know As a Web Developer» автора Anuupadhyay. Написание тысячи строк кода и превращение в веб-сайт — одна из творческих и сложных вещей для веб-разработчиков. Если вы в этом деле новичок, увидели ...

[Из песочницы] Умная лампа Привет, Хабр! Предлагаю вашему вниманию перевод статьи «DIY Smart Lamp» автора Maciej Matuszewski. Пошаговое руководство по переходу от придуманной идеи к работающему продукту. Ожидание против реальности Вы когда-нибудь задавали себе следующие вопросы? Может ли горяч...

Патенты в дизайне: часть вторая (примеры от Microsoft, Snapchat, Samsung, Netflix, Airbnb, Tinder) Под катом — вторая часть перевода статьи о том, как крупные, известные компании защищают свои дизайн-решения (и какие именно). Примерное представление о том, как происходит процесс оформления прав на тот или иной интерфейс, можно получить в первой части. Читать дальше →

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

[Перевод] Вся правда об ОСРВ. Статья #25. Каналы передачи данных: введение и базовые службы После небольшого перерыва мы продолжаем публиковать переводы статей «Вся правда об ОСРВ» Колина Уоллса. В этот раз поговорим о каналах передачи данных (далее – каналы), которые были уже были упомянуты в одной из предыдущих статей, а именно в #5. Каналы, по сравнению с почт...

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

[Из песочницы] Поймут даже дети: простое объяснение async/await и промисов в JavaScript Привет, Хабр! Представляю вашему вниманию перевод статьи «JavaScript Async/Await and Promises: Explained like you’re five years old» автора Jack Pordi. Каждый, кто считает себя JavaScript-разработчиком, в какой-то момент должен был столкнуться с callback-функциями, промисам...

[Перевод] Руководство пользователя Kibana. Визуализация. Часть 5 Пятая часть перевода официальной документации по визуализации данных в Kibana. Ссылка на оригинальный материал: Kibana User Guide [6.6] » Visualize Ссылка на 1 часть: Руководство пользователя Kibana. Визуализация. Часть 1 Ссылка на 2 часть: Руководство пользователя Kibana. В...

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

Алгоритм мышления и сознания, часть 2 Данный текст содержит пояснения к алгоритму из моей первой статьи “Алгоритм мышления и сознания”. Тезисы первой статьи: Феномен субъективного мышления можно алгоритмизовать. Предъявленный в статье алгоритм мыслит и этим можно воспользоваться практически. С помощью алгорит...

[Перевод] Введение в детерминированные сборки на С/С++. Часть 2 Перевод статьи подготовлен специально для студентов курса «Разработчик С++». → Читать первую часть Читать дальше →

[Из песочницы] Права в Linux (chown, chmod, SUID, GUID, sticky bit, ACL, umask) Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300. От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания. Итак, поехали. Читать дальше →

[Перевод] Reflective Shadow Maps: Часть 2 ― Реализация Привет, Хабр! В данной статье представлена простая реализация Reflective Shadow Maps (алгоритм описан в предыдущей статье). Далее я объясню, как я это сделал и какие подводные камни были. Также будут рассмотрены некоторые возможные оптимизации. Рисунок 1: Слева направо: бе...

Язык и органы чувств Привет, Хабр! Представляю вашему вниманию перевод статьи "How your language reflects the senses you use" автора Sophie Hardach. Что вам проще описать: цвет травы или ее запах? Ответ может зависеть от того, откуда вы родом, и, в частности, от того, на каком языке вы с детств...

РНР-безопасность: где и как хранить пароли. Часть 2 Всем привет! На прошлой неделе мы опубликовали первую часть данной статьи, чем вызвали нешуточный холивар. Одной из главных претензий было отсутствие в статье упоминания password_hash, как мы и обещали, вторую часть данного материала начнем как раз таки с хеширования парол...

Выпуск Rust 1.36.0: Трейт Future, стабилизация alloc и MaybeUninit<T> Представляю вашему вниманию перевод публикации о новой версии всеми любимого языка программирования Rust. Введение Команда по разработке языка программирования Rust рада анонсировать новую версию, 1.36.0. Rust — это язык программирования, позволяющий каждому разрабатывать на...

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

[Перевод] Мертв ли Hadoop? Часть 2 Перевод статьи подготовлен специально для студентов курса «Data Engineer». Читать первую часть Никому не нужна Big Data Когда вы услышите «Никому не нужна Big Data», посмотрите на резюме докладчика. Африканский телекоммуникационный оператор, переживающий удивительные уро...

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

[Перевод] Настройка НА-кластера Kubernetes на «голом железе», мониторинг, логи и примеры использования. Часть 3/3 Часть 1/3 тут. Часть 2/3 тут. Всем привет! А вот и третья часть руководства «Kubernetes на «голом железе»! Я уделю внимание мониторингу кластера и сбору логов, также мы запустим тестовое приложение для использования предварительно настроенных компонентов кластера. Затем про...

[Из песочницы] Топ 20 ошибок при работе с многопоточностью на С++ и способы избежать их Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Top 20 C++ multithreading mistakes and how to avoid them» автора Deb Haldar. Сцена из фильма «Петля времени (2012) Многопоточность— одна из наиболее сложных областей в программировании, особенно в C++. За годы разраб...

[Перевод] 8 лучших трендов International Conference on Learning Representations (ICLR) 2019 Тема анализа данных и Data Science в наши дни развивается с поразительной скоростью. Для того, чтобы понимать актуальность своих методов и подходов, необходимо быть в курсе работ коллег, и именно на конференциях удается получить информацию о трендах современности. К сожалени...

Представляем Tartiflette: реализацию GraphQL с открытым исходным кодом для Python 3.6+ Друзья, в преддверии майских праздников мы решили не заваливать вас сложными техническими статьями, поэтому нашли довольно интересный, а главное, легкий в прочтении материал, переводом которого с радостью делимся с вами. Данный материал мы хотим приурочить к запуску курса «W...

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

Ученые создали прозрачный имплантат для изучения живого мозга в реальном времени Ученые из Миннесотского университета создали уникальный имплантат See-Shells для черепа, который поможет разгадать причины развития болезней Альцгеймера и Паркинсона и, что не менее важно, найти способы лечения эти, а также других опасных заболеваний. Имплантат представляет...

Конечные React Компоненты Чем мне нравится экосистема React, так это тем, что за многими решениями сидит ИДЕЯ. Различные авторы пишут различные статьи в поддержку существующего порядка и обьясняют почему все "правильно", так что всем понятно — партия держит правильный курс. Через некоторые время ИДЕЯ...

[Перевод] Руководство пользователя Kibana. Визуализация. Часть 6 Пятая часть перевода официальной документации по визуализации данных в Kibana. Ссылка на оригинальный материал: Kibana User Guide [6.6] » Visualize Ссылка на 1 часть: Руководство пользователя Kibana. Визуализация. Часть 1 Ссылка на 2 часть: Руководство пользователя Kibana....

[Из песочницы] Длинные имена слишком длинные Привет, Хабр! Представляю вашему вниманию перевод статьи "Long Names Are Long" автора Bob Nystrom. Одно из умных вещей которые делает Google это строгие code review. Каждое изменение, прежде чем вам разрешат его внести в основную ветку, рассматривается как минимум ...

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

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

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

Как реализовать язык программирования на JavaScript. Часть 1: Парсер Здравствуйте! Представляю вам любительский перевод руководства реализации своего языка программирования на JavaScript — PL Tutorial. От переводчика Мы создадим свой язык программирования — λзык (в оригинале — λanguage). В процессе создания мы будем использовать достаточно мн...

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

[Из песочницы] TON: рекомендации и лучшие практики Эта статья является переводом документа, опубликованного на странице блокчейна TON: smc-guidelines.txt. Возможно кому-то это поможет сделать шаг в сторону разработки для этого блокчейна. Также, в конце я сделал краткое резюме. Читать дальше →

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

Один день из жизни модели ресторана Данная статья описывает новые компоненты фреймворка для имитационного моделирования, ранее представленного в статье «Простая система имитационного моделирования на Go». По мере расширения фреймворка появилась возможность моделировать более сложные системы, например, провест...

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

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

[Перевод] Как реализовать язык программирования на JavaScript. Часть 3: CPS-интерпретатор Здравствуйте! Представляю вам третью часть моего перевода руководства реализации своего языка программирования на JavaScript — PL Tutorial. От переводчика Мы создадим свой язык программирования — λзык (в оригинале — λanguage). В процессе создания мы будем использовать достат...

[Из песочницы] Как устроена локализация в Netflix — перевод Привет, Хабр! Представляю вашему вниманию перевод материала «Localization Technologies at Netflix», написанного командой Netflix про внутренние процессы локализации и программы, разработанные специально для этого. Программа локализации в Netflix базируется на трех принци...

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

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

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

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

[Из песочницы] Цензурирование китайского интернета Привет, Хабр! Представляю вашему вниманию перевод статьи "Learning China’s Forbidden History, So They Can Censor It". Тысячи низкооплачиваемых работников на так называемых «фабриках цензуры» прочесывают онлайн-мир на предмет запрещенного контента, где даже фотогра...

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

Импортозамещение на практике. Часть 3.1. «QP ОС». Первый в своем роде обзор операционной системы До этого момента обзоров данной ОС не было. Авторы и разработчики хранят свои тайны, и не хотят, что бы вся их работа утекла в сеть и стала достоянием общественности. В связи с этим, тестирование QP ОС возможно лишь по договору, и, на данный момент времени, только для юр.ли...

Java, Spring, Kurento и медиасервисы Существует уже немало медиа сервисов, но люди продолжают их создавать. Решил и я заняться изобретением своего велосипеда. Натолкнувшись на проект Kurento, понял что это то, что мне надо. Данная статья является частично переводом Kurento Documentatin, частично это заметки...

Лабораторная работа: настраиваем lvm, raid на linux Небольшое отступление: данная л\р является синтетической. Некоторые задания которые здесь описаны можно сделать гораздо проще, но поскольку задача л/р — познакомиться с функционалом raid, lvm то некоторые операции искусственно усложнены. Требования к инструментам для выполне...

[Перевод] Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации Представляем вам перевод статьи Sm0ke, опубликованной на сайте dev.to. Автор рассказывает о своем опыте генерации веб-приложений и способе автоматизации процесса их создания. Привет, кодеры! Я — разработчик-фрилансер, и я сгенерировал более 100 приложений на различных язык...

[Перевод] Программная архитектура и проектирование систем: общая картина и путеводитель по ресурсам Здравствуйте, коллеги. Сегодня на ваш суд предлагается перевод статьи Тугберка Уруглу (Tugberk Uruglu), который взялся в сравнительно небольшом объеме изложить принципы проектирования современных софтверных систем. Вот что автор сообщает о себе в сухом остатке: Поскольку ...

[Из песочницы] Как создать свое первое веб-приложение с помощью Go Привет, Хабр! Представляю вашему вниманию статьи "How to build your first web application with Go" автора Ayooluwa Isaiah. Это руководство к вашему первому веб-приложению на Go. Мы создадим новостное приложение, которое использует News API для получения новостных с...

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

MPPT контроллер заряда на STM32F334C8T6 В комментариях под моими предыдущими статьями неоднократно возникал вполне резонный вопрос: "Зачем делать dc/dc преобразователи на микроконтроллере, когда есть готовые?" и я в качестве ответа постоянно упоминал, как наиболее яркий пример, контроллер заряда с алгоритмом MPPT....

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

[Из песочницы] Согласие на обработку данных по GDPR: подробный разбор GDPR (или «Регламент») содержит несколько оснований для обработки персональных данных. Эти основания можно условно разделить на две большие группы. Это обработка на основании личного согласия носителя (владельца) персональных данных, и обработка на иных основаниях. В данно...

Автостопом по доступности: Ссылки для пропуска навигации и секции Привет, Хабр. Предлагаю вашему вниманию перевод статьи «The Hitchhiker’s Guide to Accessibility: Skiplinks and Landmarks» автора Attila Vágó о паре незаменимых инструментов UI и их особенностях. Ссылки для пропуска навигации (далее skiplinks) — невоспетые герои каждого уважа...

[Перевод] Svelte 3: Переосмысление реактивности Буквально на днях произошло большое событие в сообществе SvelteJS, да и вообще, как мне кажется, для всего современного фронтенда — долгожданный релиз Svelte 3! Посему, под катом перевод статьи автора Svelte и прекрасное видео с его доклада на YGLF 2019. Читать дальше →

Релиз InterSystems IRIS 2019.1 В середине марта вышла новая версия платформы данных InterSystems IRIS 2019.1 Представляем вашему вниманию список изменений на русском языке. Полный список изменений и Upgrade Checklist на английском языке можно найти по ссылке. Читать дальше →

[Перевод] Как полиморфизм реализован внутри JVM Перевод данной статьи подготовлен специально для студентов курса «Разработчик Java». В моей предыдущей статье Everything About Method Overloading vs Method Overriding (“Все о перегрузке и переопределении методов”) были рассмотрены правила и различия перегрузки и переопре...

Устанавливаем Vmware ESXi на Mac Pro 1,1 В статье описываю свой опыт установки VMware ESXi на старинный Apple Mac Pro 1,1. От заказчика поставлена задача – расширить файловый сервер. Как создавался файловый сервер компании на PowerMac G5 в 2016, и какого было обслуживать созданное legacy достойно отдельной стать...

[Из песочницы] Настройка NextCloud + ONLYOFFICE на одном сервере с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Setting up NextCloud and ONLYOFFICE on a single server with Docker». Сложно недооценивать пользу онлайновых пакетов офисных приложений наподобие Google Docs и облачных хранилищ в жизни технически ориентированных люде...

[Перевод] Раскрывая 140-летний секрет в физике Перевод статьи авторов из IBM Research. Важный прорыв в физике позволит изучить физические характеристики полупроводников в гораздо больших подробностях. Возможно, это поможет ускорить развитие полупроводниковой технологии следующего поколения. Авторы: Oki Gunawan — Staff M...

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

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

JSON-RPC? Возьмите хитрый REST Уверен, что заголовок вызвал здоровую реакцию — “ну опять началось…” Но позвольте завладеть вашим вниманием на 5-10 минут, и я постараюсь не обмануть ожидания. Структура статьи будет такова: берется стереотипное утверждение и раскрывается “природа” возникновения этого стер...

Хабрарейтинг 2018: лучшие материалы за 2018 год Привет Хабр. Данный пост является логическим завершением публикаций про жизненный цикл статьи на Хабре (первая и вторая части), в результате чего был сделан достаточно интересный инструмент для статистического анализа. Методика оказалась весьма полезной, и позволяет находит...

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

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

[Из песочницы] В списке угроз: «Игра престолов» – одно из самых популярных прикрытий для киберпреступников Привет, Хабр! Представляю вашему вниманию перевод статьи «ThreatList: Game of Thrones, a Top Malware Conduit for Cybercriminals» автора Tara Seals. В то время, как 8-ой сезон Игры престолов готовится к старту, новые исследования демонстрируют, что в прошлом году популярн...

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

Как управлять React Data Grid через Redux Это продолжение предыдущей статьи: Зачем писать свой React Data Grid в 2019 Для чего нужен Redux? Ответов много. Например, чтобы работать с общими данными в разных React-компонентах. Но можно воспринимать Redux еще как способ манипулирования компонентой. Сам взгляд интересны...

SamsPcbGuide, часть 9: Гальваническая изоляция, безопасность и печатные платы Данная статья продолжает рассмотрение вопроса, поднятого @olartamonov, а именно, обеспечение безопасности в высоковольтных приложениях. В статье будут рассмотрены физические основы пробоя диэлектриков, а также новый стандарт безопасности. Читать дальше →

[Из песочницы] Секретная программа США по изучению НЛО занималась также исследованиями червоточин и дополнительных измерений Привет, Хабр! Представляю вашему вниманию перевод статьи «The Government’s Secret UFO Program Funded Research on Wormholes and Extra Dimensions» автора Sarah Emerson. Министерство обороны США опубликовало документы, где раскрываются подробности работы печально известной «Пр...

[Перевод] Лямбды: от C++11 до C++20. Часть 2 Привет, хабровчане. В связи со стартом набора в новую группу по курсу «Разработчик C++», делимся с вами переводом второй части статьи «Лямбды: от C++11 до C++20». Первую часть можно прочитать тут. В первой части серии мы рассмотрели лямбды с точки зрения C++03, C++11 и C+...

[Из песочницы] Разработка под Docker. Локальное окружение. Часть 1 Возможно, одна из самых основных причин почему мне нравится докер это то, что он позволяет избавиться от необходимости установки на компьютер различных сервисов. К их числу можно отнести и сам веб-сервер Apache или Nginx, базы данных и прочие компоненты инфраструктуры прилож...

Обнаружена опасная многолетняя уязвимость в Android Эксперт Positive Technologies Сергей Тошин выявил критически опасную уязвимость в актуальных версиях операционной системы Google Android (7.0, 8.0, 9.0) и ее более ранних редакциях. Ошибка обнаружена в компоненте WebView. Она позволяет получать доступ к конфиденциальным данн...

[Перевод] Конфиденциальность данных, IoT и Mozilla WebThings От переводчика: краткий пересказ статьиЦентрализация устройств умного дома (вроде Apple Home Kit, Xiaomi и прочих) — это плохо, потому что: Пользователь становится зависим от определённого вендора, ведь устройства не могут общаться между собой за пределами одного произво...

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

[Перевод] Детальный разбор AWS Lambda Перевод статьи подготовлен специально для студентов курса «Облачные сервисы». Интересно развиваться в данном направлении? Смотрите мастер-класс Егора Зуева (TeamLead в компании InBit) «AWS EC2 сервис» и присоединяйтесь к ближайшей группе курса: старт 26 сентября. Все больш...

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

Как ускорить шифрование по ГОСТ 28147-89 на процессоре Байкал-Т1 за счет SIMD-блока В статье на примере описания реализации алгоритма шифрования по ГОСТ 28147–89, построенного на сети Фейстеля, показаны возможности двухъядерного процессора BE-T1000 (aka Байкал-Т1) и проведены сравнительные испытания реализации алгоритма с помощью векторных вычислений с сопр...

Computex 2019: приложение ASUS Glamorfy позволяет изменять внешность пользователя На этой неделе в Тайбэе прошла крупнейшая в мире компьютерная выставка Computex 2019. Здесь же Советом по развитию внешней торговли Тайваня (Taiwan External Trade Development Council, TAITRA) и Компьютерной ассоциацией Тайбэя (Taiреi Computer Association, TCA) была организов...

[Из песочницы] Преобразование черно-белых изображений в ASCII-графику при помощи неотрицательного матричного разложения В общем случае преобразование изображения в ASCII-графику представляет собой довольно трудоемкую задачу, однако существуют алгоритмы, позволяющие автоматизировать данный процесс. В данной статье рассматривается подход, предложенный исследователями Paul D. O’Grady и Scott T....

Chrome для компьютеров получит режим чтения без рекламы На портале Chromium.org появилась информация о том, что Google добавит в фирменный браузер Chrome для компьютеров поддержку режима чтения — базовой для многих веб-обозревателей функции, позволяющей просматривать текстовое содержание веб-сайтов в удобном формате без рекламных...

[Перевод] 12 возможностей ES10 в 12 простых примерах Перед вами перевод статьи из блога Carlos Caballero на сайте Medium.com. Автор расскажет нам о функциях, которые появились в версии ES10 2019 года. ES10 — это версия ECMAScript, актуальная для 2019 года. Она содержит не так много нововведений, как версия ES6, выпущенная в...

[Перевод] Разработка приложения для потокового вещания с помощью Node.js и React Автор материала, перевод которого мы сегодня публикуем, говорит, что работает над приложением, которое позволяет организовывать потоковое вещание (стриминг) того, что происходит на рабочем столе пользователя. Приложение принимает от стримера поток в формате RTMP и преобра...

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

[Перевод] Нейросети и глубокое обучение: онлайн-учебник, глава 1 Примечание Перед вами – перевод свободной онлайн-книги Майкла Нильсена «Neural Networks and Deep Learning», распространяемой под лицензией Creative Commons Attribution-NonCommercial 3.0 Unported License. Мотивацией к его созданию послужил успешный опыт перевода учебника по п...

Обзор Thermaltake Toughpower GF1 ARGB 750W (PS-TPD-0750F3FAGE-1). Блок питания с 10-летней гарантией Сегодня в центре внимания новая серия блоков Toughpower GF1 ARGB, созданной с использованием высококачественных компонентов и продвинутых технологических решений. В этих блоках питания используются новые вентиляторы Riing Duo 14 RGB с 18 светодиодами. Поддерживается синхрони...

[Перевод] Простое объяснение алгоритмов поиска пути и A* Часть 1. Общий алгоритм поиска Введение Поиск пути — это одна из тех тем, которые обычно представляют самые большие сложности для разработчиков игр. Особенно плохо люди понимают алгоритм A*, и многим кажется, что это какая-то непостижимая магия. Цель данной статьи — объясн...

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

Пишем свой язык программирования, часть 4: Представление структур и классов, генерация аллокаторов Доброго времени суток тем, кто решил ознакомиться с моей очередной статьёй. Первым делом выкладываю ссылки на предыдущие части: Часть 1: пишем языковую ВМ Часть 2: промежуточное представление программ Часть 3: Архитектура транслятора. Разбор языковых структур и математиче...

[Перевод] Обзор AI & ML решений в 2018 году и прогнозы на 2019 год: Часть 1 — NLP, Computer Vision Всем привет! Представляю вам перевод статьи Analytics Vidhya с обзором событий в области AI / ML в 2018 году и трендов 2019 года. Материал довольно большой, поэтому разделен на 2 части. Надеюсь, что статья заинтересует не только профильных специалистов, но и интересующихся т...

Улучшение агента на основе Q-Learning, торгующего stocks, путем добавления рекуррентности и формирования наград Напоминание Привет, Хабр! Предлагаю вашему вниманию ещё один перевод моей новой статьи с медиума. В прошлый раз (первая статья) (Habr) мы создали агента на технологии Q-Learning, который совершает сделки на имитированных и реальных биржевых временных рядах и пытались провер...

[Перевод - recovery mode ] Типичные ошибки при логгировании Привет, Хабр! Я думаю, практически в каждой программе есть логгирование. Более того, в ряде уже неновых приложений (а значит с морем нетривиальных условий) зачастую логи становятся жизненно важными на боевом сервере. Однако, несмотря на всю важность и распространенность подо...

Паттерны и анти-паттерны CI/CD. Часть 2 Всех с пятницей, друзья. Сегодня делимся с вами переводом второй части статьи «Паттерны и анти-паттерны CI/CD», первую часть которой можно прочитать здесь. Напомним, даная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инструменты». 1.3 Патт...

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

[Перевод] Обход подводных камней Angular и экономия времени С помощью Angular можно сделать всё что угодно. Или почти всё. Но иногда это коварное «почти» приводит к тому, что разработчик губит время, создавая обходные решения, или пытаясь понять, почему что-то происходит, или почему что-то не работает так, как ожидается. Автор ста...

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

[recovery mode] История слона Slonik, логотипа PostgreSQL Привет, Хабр! Всегда думал, что логотип для продукта придумать если не пару пустяков, то дело небольшого количества времени. Однако на примере PostgreSQL видно, что это совершенно не так. Предлагаю вашему вниманию перевод статьи Патрисии Дыбки, комьюнити менеджера компани...

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

[Перевод] Опасности конструкторов Привет, Хабр! Представляю вашему вниманию перевод статьи "Perils of Constructors" автора Aleksey Kladov. Один из моих любимых постов из блогов о Rust — Things Rust Shipped Without авторства Graydon Hoare. Для меня отсутствие в языке любой фичи, способной выстрелить в ногу, о...

[Перевод] Внутренности JVM, Часть 1 — Загрузчик классов Перевод статьи подготовлен специально для студентов курса «Разработчик Java». В этой серии статей я расскажу о том, как работает Java Virtual Machine. Сегодня мы рассмотрим механизм загрузки классов в JVM. Читать дальше →

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

[Из песочницы] VPN на роутере Билайн для обхода блокировок Билайн активно вводит в своих домашних сетях технологию IPoE. Данный подход позволяет авторизовать клиента по MAC-адресу его оборудования без применения VPN. При переводе сети на IPoE VPN-клиент роутера становится незадействованным и продолжает настойчиво стучаться в отключе...

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

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

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

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

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

Об ошибках, возникающих ниоткуда и в которых некого винить: Феномен Размазывания Ответственности В статье не пойдет речь о безответственных сотрудниках, как можно было бы предположить по заголовку статьи. Мы обсудим одну реальную техническую опасность, которая возможно поджидает и вас, если вы создаёте распределённые системы. В одной Enterprise системе жила-была комп...

Citymobil — пособие для стартапов по увеличению стабильности на фоне роста. Часть 2. Какие бывают виды аварий? Это вторая статья из цикла про то, как мы в Citymobil увеличивали стабильность сервиса (первую можете почитать здесь). В этой статье я углублюсь в конкретику разбора аварий. Но перед этим я освещу один момент, о котором я должен был подумать заранее и осветить в первой ста...

[Перевод] Обзор AI & ML решений в 2018 году и прогнозы на 2019 год: Часть 2 — Инструменты и библиотеки, AutoML, RL, этика в AI Всем привет! Представляю вам перевод статьи Analytics Vidhya с обзором событий в области AI / ML в 2018 году и трендов 2019 года. Материал довольно большой, поэтому разделен на 2 части. Надеюсь, что статья заинтересует не только профильных специалистов, но и интересующихся т...

GraphQL Voyager как инструмент для поиска уязвимостей В настоящее время все больше компаний начинают использовать GraphQL. Это относительно новая технология (если быть более точным, то это язык запросов), которая призвана решить существующие проблемы REST. Если вы еще не знакомы с GraphQL, то рекомендую начать с ресурсов: ...

[recovery mode] Домашняя BigData. Часть 1. Практика Spark Streaming на кластере AWS Здравствуйте. В интернете много сервисов, предоставляющих возможности облачных сервисов. С их помощью можно осваивать технологии BigData. В данной статье мы в домашних условиях произведем установку на платформу EC2 AWS (Amazon Web Services) Apache Kafka, Apache Spark, Zook...

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

[Перевод] Пошаговое руководство по настройке DNS-сервера BIND в chroot среде для Red Hat (RHEL / CentOS) 7 Перевод статьи подготовлен для студентов курса «Безопасность Linux». Интересно развиваться в данном направлении? Смотрите запись трансляции мастер-класса Ивана Пискунова «Безопасность в Linux в сравнении с Windows и MacOS» В этой статье я расскажу о шагах по настройке DNS-с...

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

Первые опыты использования потокового протокола на примере связи ЦП и процессора в ПЛИС комплекса REDD В предыдущих статьях мы уже познакомились с шиной Avalon-MM, где MM означает Memory Mapped, то есть проецируемая на память. Эта шина вполне себе универсальная. К ней может быть подключено несколько ведущих (Master) и несколько ведомых (Slave) устройств. Мы уже подключали с...

[Перевод] Есть ли в CSS случайные числа? CSS позволяет создавать динамические макеты страниц и интерфейсы веб-проектов. Но CSS — статический язык. После того, как задано некое значение, изменить его нельзя. Идея случайного изменения неких значений здесь не рассматривается. Генерирование случайных чисел — это тер...

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

Особенности тестирования веб-приложения для видеосервиса Услуги потокового вещания по запросу (VOD) стали неотъемлемой частью нашей повседневной жизни. Video on Demand — это система доставки видеоконтента, которая позволяет зрителям выбирать контент (видео) и просматривать его в удобное время (по запросу) на любом устройстве, пр...

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

«Прикладной» ASCII-арт Привет, Хабр! Автор недавней статьи рассказал о разновидности ASCII-арта, которая вроде как и не совсем «арт», т.е., искусство. Ибо служит практическим целям: показать небольшой эскиз, график, электрическую или иную схему… Решил и я вспомнить на эту тему что-нибудь. WA1-o-o...

Основы формата GLTF и GLB, часть 2 Данная статья является продолжением рассмотра основ GLTF и GLB форматов. Вы можете найти первую часть статьи здесь. В первой части мы рассмотрели с вами зачем изначально планировался формат, а также такие артефакты и их атрибуты GLTF формата как Scene, Node, Buffer, BufferVi...

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 10 Эксфильтрация или утечка данных (Exfiltration) Ссылки на все части: Часть 1. Получение первоначального доступа (Initial Access) Часть 2. Выполнение (Execution) Часть 3. Закрепление (Persistence) Часть 4. Повышение привилегий (Privilege Escalation) Часть 5. Обход защиты (Defe...

[Перевод] Механизмы расширяемых расширений в JavaScript Здравствуйте, коллеги! Напоминаем, что не так давно у нас вышло 3-е издание легендарной книги «Выразительный JavaScript» (Eloquent JavaScript) — на русском языке напечатано впервые, хотя качественные переводы предыдущих изданий встречались в Интернете. Тем не менее, ни J...

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

[Перевод] Основы движков JavaScript: прототипы оптимизации. Часть 1 Всем привет. Все меньше времени остается до запуска курса «Безопасность информационных систем», поэтому сегодня мы продолжаем делиться публикациями, приуроченными к запуску данного курса. Кстати, нынешняя публикация является продолжением вот этих двух статей: «Основы движков...

Перевод книги «Using Google Analytics with R» (Michal Brys) Электронная книга «Using Google Analytics with R» (Michal Brys) представляет собой практическое руководство по анализу данных из Google Analytics в R. Написана дата-сайентистом в 2014 году, но ничуть не теряет своей актуальности и сегодня. Читать дальше →

[Перевод] Шесть навыков, которые выведут вашу карьеру в Data Science на новый уровень Перед вами перевод статьи Genevieve Hayes, Data Scientist с 15-летним опытом работы. Автор рассказывает о том, какие навыки стоит развивать, чтобы значительно увеличить шансы найти работу в Data Science. Чтобы определить эти навыки, она проанализировала 100 вакансий, размеще...

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

Natas Web. Прохождение CTF площадки, направленной на эксплуатацию Web-уязвимостей. Часть 2 В данной статье мы разберемся с эксплуатацией некоторых WEB-узвимостей на примере прохождения варгейма Natas. Каждый уровень имеет доступ к паролю следующего уровня. Все пароли также хранятся в файлах /etc/natas_webpass/. Например, пароль для natas5 хранится в файле /etc/n...

[Перевод] Стандартный браузерный API Payment Request Знаете ли вы о том, что во многих современных браузерах имеется встроенный API, который называется Payment Request? Этот API описан в стандарте W3C, который направлен на поддержку работы с платёжной и контактной информацией. Вот обзор стандарта на ресурсе developers.google.c...

[Перевод] Service mesh для микросервисов. Часть III. Более глубокий взгляд на Istio Перевод статьи подготовлен специально для студентов курса «Инфраструктурная платформа на основе Kubernetes». Это третья статья из серии публикаций, посвященных  Kubernetes и технологии service mesh (также известной как «сеть микросервисов» и «mesh-сеть микросервисов»). В ...

Ускорение программы для синтезированного процессора комплекса Redd без оптимизации: замена тактового генератора До сих пор мы рассматривали тему, как повысить быстродействие системы, применяя какие-то интенсивные методы. Но на самом деле, есть методы и экстенсивные. Сейчас мы работаем на тактовой частоте 50 МГц, что связано с использованием компонента из набора для университетской про...

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

Sagи из жизни Доброго времени суток. У вас тоже есть знакомый react-разработчик, который рассказывает восхитительные истории о сайд-эффектах в redux? Нет?! Могу я стать этим человеком? Автор взял на себя смелость не писать вводную часть о том, что же из себя представляет библиотека redux...

[Перевод] Актуальна ли книга «Java Concurrency in Practice» во времена Java 8 и 11? Здравствуйте, коллеги! Статья, перевод которой мы предлагаем сегодня, в очередной раз напоминает о важности нестареющей книги "Java Concurrency in practice" под авторством Брайана Гёца (Brian Goetz). Даты комментариев к этой статье в оригинале подсказывают, что автор об...

Методика D.I.Y. проекта. Часть вводная Данная статья написана радиолюбителем, имеющим опыт руководства проектами по разработке и постановке на производство сложной радиоэлектронной аппаратуры. Цель данной статьи: помочь энтузиастам в организации их проектной деятельности, а также обозначить различия в подходах ...

Пишем Reverse socks5 proxy на powershell.Часть 3 История об исследовании и разработке в 3-х частях. Часть 3 — практическая. Буков много — пользы еще больше Предыдущие статьи из цикла можно найти тут и здесь =) Проверка боем Давайте теперь проверим работу нашего скрипта на практике. Для этого попробуем выбросить обратный ...

Natas Web. Прохождение CTF площадки, направленной на эксплуатацию Web-уязвимостей. Часть 5 В данной статье мы разберемся с эксплуатацией некоторых WEB-узвимостей на примере прохождения варгейма Natas. Каждый уровень имеет доступ к паролю следующего уровня. Все пароли также хранятся в файлах /etc/natas_webpass/. Например, пароль для natas5 хранится в файле /etc/n...

Natas Web. Прохождение CTF площадки, направленной на эксплуатацию Web-уязвимостей. Часть 4 В данной статье мы разберемся с эксплуатацией некоторых WEB-узвимостей на примере прохождения варгейма Natas. Каждый уровень имеет доступ к паролю следующего уровня. Все пароли также хранятся в файлах /etc/natas_webpass/. Например, пароль для natas5 хранится в файле /etc/n...

Natas Web. Прохождение CTF площадки, направленной на эксплуатацию Web-уязвимостей. Часть 3 В данной статье мы разберемся с эксплуатацией некоторых WEB-узвимостей на примере прохождения варгейма Natas. Каждый уровень имеет доступ к паролю следующего уровня. Все пароли также хранятся в файлах /etc/natas_webpass/. Например, пароль для natas5 хранится в файле /etc/n...

Мониторинг производительности запросов PostgreSQL. Часть 1 — репортинг Инженер — в переводе с латыни — вдохновенный. Инженер может всё. (с) Р.Дизель. Эпиграфы. Или история о том, зачем администратору баз данных вспоминать свое программистское прошлое. Предисловие Все имена изменены. Совпадения случайны. Материал представляет собой исключител...

[Перевод] Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 2. ActiveMQ Продолжение перевода небольшой книги: «Understanding Message Brokers», автор: Jakub Korab, издательство: O'Reilly Media, Inc., дата издания: June 2017, ISBN: 9781492049296. Перевод выполнен Предыдущая часть: Понимание брокеров сообщений. Изучение механики обмена сообщениям...

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

[Перевод] С помощью 3D-принтера удалось сохранить автомобиль участвовавший в Гран-при 1914 Технология 3D-печати позволила сохранить классический винтажный автомобиль. Статья ABC News переведена для вас Top 3D Shop. Австралия – родина единственной сохранившейся на данный момент машины участвовавшей в Гран-при 1914 года – это авто модели “Delage Type-S”. Благода...

[Перевод] Использование AD Federation Service для авторизации пользователей на AWS с раздачей прав Вольный перевод статьи Jeff Wierer "Enabling Federation to AWS Using Windows Active Directory, ADFS, and SAML 2.0" с добавлениями и уточнениями. 1. Исходные данные 2. Подготовка 3. Конфигурирование AD 4. Установка ADFS 5. Конфигурирование ADFS 6. Конфигурирование AWS 7. ...

Как мы сделали PHP 7 в два раза быстрее PHP 5. Часть 2: оптимизация байт-кода в PHP 7.1 В первой части рассказа по мотивам выступления Дмитрия Стогова из Zend Technologies на HighLoad++ мы разбирались во внутреннем устройстве PHP. Детально и из первых уст узнали, какие изменениях в базовых структурах данных позволили ускорить PHP 7 более чем в два раза. На этом...

[Перевод] Среда, лексическая область видимости и замыкания в JavaScript Перевод JavaScript Environment, Lexical Scope and Closures. Поговорим о среде. Наша огромная планета одна на всех. При строительстве нового химического завода было бы неплохо его изолировать, чтобы все внутренние процессы не покидали его пределы. Можно сказать, что среда ...

Небольшой обзор SIMD в .NET/C# Вашему вниманию предлагается небольшой обзор возможностей векторизации алгоритмов в .NET Framework и .NETCORE. Цель статьи познакомить с этими приёмами тех, кто их вообще не знал и показать, что .NET не сильно отстаёт от "настоящих, компилируемых" языков для нативной разрабо...

[Перевод] Введение в Redis с использованием Spring Boot Перевод статьи подготовлен специально для студентов курса «Разработчик на Spring Framework». В этой статье мы рассмотрим основы использования Redis через Spring Boot с помощью библиотеки Spring Data Redis. Мы создадим приложение, которое демонстрирует, как выполнять CR...

[Перевод] Топ-5 JS-фреймворков для фронтенд-разработки в 2020 году. Часть 1 Вероятно, фронтенд-разработчикам знакомо нечто подобное: вводишь в поисковике «лучшие JavaScript-фреймворки» и получаешь в ответ целую гору результатов, из которой очень непросто выбрать именно то, что нужно. Что лучше всего подходит для разработки клиентских частей веб-про...

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

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

[Из песочницы] Визуализация времени возрождения Рошана В данной статье рассматривается перехват функций графического API на примере DirectX 9 под x64 применительно к игре Dota 2. Будет подробно рассказано, как внедриться в процесс игры, как изменить поток выполнения, приведено краткое описание внедряемой логики. В конце поговор...

EFORTH для МК-161: Структуры данных Эта статья — окончание цикла статей про eForth на программируемом калькуляторе. Начало здесь: habr.com/ru/post/452398 Команды входного языка «Электроники МК-161» занимают только половину файла eForth0.mkl. Вторую половину занимают таблицы, разработать которые был не меньший...

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

[Из песочницы] Вступление в архитектуру React Fiber Привет, Хабр! Предлагаю вашему вниманию перевод статьи "React Fiber Architecture" автора Andrew Clark. Вступление React Fiber — прогрессивная реализация ключевого алгоритма React. Это кульминационное достижение двухгодичных исследований команды разработчиков React. Цель Fibe...

[Из песочницы] Анализ скроллинга страниц в Google Data Studio Добрый день, меня зовут Чакканбаев Ильхом я автор блога SeoPulses, хотел бы поделиться переводом и реализацией на практике статьи michaelhoweely.com. Для того чтобы создать полноценный и понятный отчет для блога или статейного сайта в Google Data Studio потребуется использов...

Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 2/2: Trusted Web Activity В первой части мы превратили наш сайт в Progressive Web App. Там же было сказано, что совсем недавно, 6 февраля 2019 года, Google предоставили простую возможность выкладывать PWA в Google Play при помощи Trusted Web Activity. Всё, что нужно сделать, это написать небольшую ...

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

[Из песочницы] Настройка GitLab CI для загрузки java проекта в maven central Данная статья рассчитана на java разработчиков, у которых возникла потребность быстро публиковать свои продукты в репозиториях sonatype и/или maven central с использованием GitLab. В данной статье я расскажу про настройку gitlab-runner, gitlab-ci и maven-plugin для решения д...

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

[Перевод] Тестирование многопоточного и асинхронного кода Привет! На неделе встала задача написать интеграционный тест для Spring Boot приложения, использующего асинхронное взаимодействие с внешними системами. Освежил много материала про отладку многопоточного кода. Привлекла внимание статья «Testing Multi-Threaded and Asynchronous...

[Перевод] Шардинг в Блокчейне Всем привет, я один из разработчиков Near Protocol, который, среди прочего, реализует шардинг, и в этой статье хочу подробно рассказать что вообще такое шардинг в блокчейне, как он работает, и коснуться ряда проблем, которые возникают при попытке его построить. Хорошо извест...

[Из песочницы] Использование let объявлений переменных и особенности образуемых при этом замыканий в JavaScript Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё...

Meeting Room L̶i̶t̶t̶l̶e̶ Helper v 2 Данная статья подробно описывает этапы разработки мобильного приложения Meeting Room Helper: от зарождения идеи до релиза. Приложение написано на Kotlin и построено по упрощённой MVVM архитектуре, без использования data binding. Обновление UI-части происходит с помощью LiveD...

[Из песочницы] Домашняя BigData. Часть 1. Практика Spark Streaming на кластере AWS Здравствуйте. В данной статье мы в домашних условиях произведем установку на платформу EC2 AWS (Amazon Web Services) Apache Kafka, Apache Spark, Zookeeper, Spark-shell и научимся всем этим пользоваться. Читать дальше →

[Из песочницы] SVG индикатор загрузки на Vue.js Привет! Учусь на front-end, и параллельно, в учебном проекте, разрабатываю SPA на Vue.js для back-end, который собирает данные от поискового бота. Бот нарабатывает от 0 до 500 записей, и я должен их: загрузить, отсортировать по заданным критериям, показать в таблице. Ни back...

[Из песочницы] Машинное обучение для всех, кто изучал математику в восьмом классе Привет, Хабр! Представляю вашему вниманию перевод статьи "Machine Learning for Anyone Who Took Math in Eighth Grade" автора Kyle Gallatin. Я обычно замечаю, что искусственный интеллект объясняется одним из двух способов: через все более сенсационную призму различн...

Коренные микробы на пике моды Indibiome – is the new black (что-то очень стильное) — так называется статья на английском (ссылка на Хабр), здесь приводится перевод моего собственного текста. Коренные микробы на пике моды, точно так же как в электронной и компьютерной индустриях, конструкторские бюро микр...

[Перевод] Учебный курс по React, часть 13: компоненты, основанные на классах Сегодня мы публикуем перевод очередного занятия учебного курса по React. Оно посвящено компонентам, основанным на классах. Такие компоненты создают с использованием ключевого слова class. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функци...

[Перевод] Использование UIViewPropertyAnimator для создание пользовательских анимаций Создание анимаций это здорово. Они являются важной частью iOS Human Interface Guidelines. Анимации помогают привлечь внимание пользователя к важным вещам или попросту делают приложение не таким скучным. Существует несколько способов реализовать анимацию в iOS. Вероятно, са...

[Из песочницы] Три парадигмы Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Three Paradigms» автора Robert C. Martin (Uncle Bob). За последние 40 лет технологии аппаратного обеспечения увеличили вычислительную мощность наших устройств более чем на двадцать порядков. Теперь мы играем в Angry ...

[Перевод] Десять заповедей React компонентов Написано Kristofer Selbekk, в сотрудничестве с Caroline Odden. Основано на лекции с таким же названием и с теми же людьми, состоявшейся на встрече ReactJS в Осло в июне 2019 года.От переводчика — оригинальное название The 10 Component Commandments не упоминает React, но бол...

[Из песочницы] Эффективное создание компонентов с помощью styled system Для стилизации react компонентов наша команда использует styled-components. О styled-components уже есть статьи на Хабре, поэтому подробно останавливаться на этом не будем. Знакомство с Styled components Лучше, быстрее, мощнее: styled-components v4 Написав много компоне...

[Перевод] Сила дженериков в Swift. Часть 2 Добрый день, друзья. Специально для студентов курса «iOS Разработчик. Продвинутый курс» мы подготовили перевод второй части статьи «Сила дженериков в Swift». Связанные типы, условия where, сабскрипты и прочее… В статье «Сила дженериков в Swift. Часть 1» описывались gene...

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

Промышленные неуправляемые коммутаторы Advantech серии EKI-2000 При построении сетей Ethernet используются различные классы коммутирующего оборудования. Отдельно стоит выделить неуправляемые коммутаторы – простые устройства, позволяющие быстро и эффективно организовать работу небольшой Ethernet-сети. В данной статье приводится подробны...

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

[Из песочницы] Асинхронный PHP и история одного велосипеда После выхода PHP7 появилась возможность сравнительно небольшой ценой писать долгоживущие приложения. Для программистов стали доступны такие проекты, как prooph, broadway, tactician, messenger, авторы которых берут на себя решение наиболее частых проблем. Но что если сделать ...

[Из песочницы] Почему вы должны думать о функциональном программировании Привет, Хабр! Представляю вашему вниманию перевод своей статьи «Why you should think about functional programming», посвященной функциональному программированию. Почему вы должны думать о функциональном программировании? Давайте ответим на следующие вопросы: всегда ли в...

[Перевод] Подготовка к Spring Professional Certification. Spring Security Эта статья является переводом статьи по подготовке к Spring Professional Certification. В ней будет рассмотрена тема Spring Security и основные вопросы по ней. Ее также можно использовать для подготовки к собеседованию. ↓ Остальные статьи доступны по ссылкам в оглавлении ↓ ...

Ускоряем PHP-коннекторы для Tarantool с помощью Async, Swoole и Parallel В экосистеме PHP на данный момент существует два коннектора для работы с сервером Tarantool ― это официальное расширение PECL tarantool/tarantool-php, написанное на С, и tarantool-php/client, написанный на PHP. Я являюсь автором последнего. В этой статье я хотел бы подели...

Уязвимость софта для телеконфенций Zoom позволяет любым сайтам шпионить за пользователями через веб-камеру Изображение: Medium.com Исследователь безопасности обнаружил уязвимость в софте для проведения телеконференций Zoom. При использовании программы на компьютерах Mac, любой открытый пользователем сайт может активировать камеру на устройстве без запроса разрешения на данное ...

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

[Из песочницы] Универсальное DRO на базе Arduino Nano — shDRO Дамы и господа, здравствуйте. В данной статье я расскажу о разработке устройства для снятия показаний с цифровых линеек и других датчиков, размещенных на токарных и фрезерных станках. Разработка ещё не завершена и будет описано то, что сделано на данный момент. Кому интер...

[Из песочницы] Создание минимального Docker-контейнера для Go-приложений Привет, Хабр! Предлагаю вашему вниманию перевод статьи основателя сервиса Meetspaceapp Nick Gauthier «Building Minimal Docker Containers for Go Applications». Время чтения: 6 минут Существует множество, как официальных, так и поддерживаемых сообществом контейнеров для разл...

Как оптимизировать pandas при работе с большими datasetами (очерк) Когда памяти вагоны и/или dataset небольшой можно смело закидывать его в pandas безо всяких оптимизаций. Однако, если данные большие, остро встает вопрос, как их обрабатывать или хотя бы считать. Предлагается взглянуть на оптимизацию в миниатюре, дабы не вытаскивать из сети...

Простая реализация небольших CAM на ПЛИС Введение Как-то раз мне потребовалось по работе реализовать небольшой блок ассоциативной памяти. Почитав, как это делается у Xilinx на BlockRAM (BRAM) или на SRL16, я несколько опечалился, так как их реализации занимали довольно много места. Решил попробовать сделать его сам...

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

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

[Перевод] Использование strict-модулей в крупномасштабных Python-проектах: опыт Instagram. Часть 1 Публикуем первую часть перевода очередного материала из серии, посвящённой тому, как в Instagram работают с Python. В первом материале этой серии речь шла об особенностях серверного кода Instagram, о том, что он представляет собой монолит, который часто меняется, и о том, ка...

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

[Из песочницы] Руководство по организации архитектуры Android приложения Привет, Хабр! Представляю вашему вниманию вольный перевод «Руководство по архитектуре приложения (Guide to app architecture)» из JetPack. Все замечания по переводу прошу оставлять в комментариях, и они будут исправлены. Так же для всех будут полезны комментарии от тех кто ис...

StealthWatch базовые понятия и минимальные требования. Часть 1 Данная статья посвящена довольно новому продукту мониторинга сети Cisco StealthWatch. Основываясь на данных телеметрии вашей инфраструктуры, StealthWatch может выявлять самые разные кибератаки, включая: APTs DDoS атаки нулевого дня наличие ботов в сети кража данных (da...

[Перевод] Полное руководство по массивам и срезам в Golang Перевод статьи подготовлен специально для студентов курса «Разработчик Golang», занятия по которому начинаются уже сегодня! Поначалу легко воспринимать массивы и срезы как одно и то же, но с разными названиями: и то и другое является структурой данных для представления ко...

[Из песочницы] Интервалы: грядущая эволюция C++ Уже скоро появится стандарт C++20, в который, скорее всего, добавят концепцию интервалов (ranges), однако мало кто знает, что они из себя представляют и с чем их едят. Доступных широкой аудитории русскоязычных источников про этого зверя мне найти не удалось, вследствие чего ...

[Перевод] Продуктивность связана не с управлением временем, а с управлением вниманием Управление временем – это на самом деле не решение, а часть проблемы Автор статьи: Адам М. Грант, американский ученый-психолог и писатель; профессор Уортонской школы бизнеса; автор трёх бестселлеров Нью-Йорк Таймс, а также книги «Глубокая работа: секрет достижения максималь...

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

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

[Перевод] Deno — новый Node.js? В нашем проекте, IDE для работы с API TestMace, в качестве основного языка используется TypeScript, поэтому мы активно интересуемся проектами, связанными с данным языком. Сегодня вашему вниманию представляется перевод статьи об инструменте Deno — runtime для TypeScript (но э...

И Google туда же. У поискового гиганта есть такое же приложения для сбора данных, как и у Facebook Только вчера мы успели узнать о том, что Facebook платила пользователям за установку приложения, собиравшего различную личную информацию, как сегодня стало известно, что этим же уже давно занимается и Google. Приложение поискового гиганта называется Screenwise Meter и о...

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

Управление персонажем с помощью SharedEvents Ссылка на проект В данной статье я хочу показать, как можно использовать SharedEvents для управления персонажем от третьего лица, который предлагает стандартный набор ассетов. О SharedEvents я писал в предыдущих статьях (этой и в этой). Добро пожаловать под кат! Читать да...

[Перевод] Интервью — 10 вопросов про Swift. Часть 3 Профессиональная программа «iOS Разработчик» — 5 месяцев Best Practice по разработке мобильных приложений с помощью Swift 5. Лучших выпускников ждут на собеседованиях 12 компаний-партнёров OTUS, поэтому публикуем перевод заключительной статьи из серии «iOS Interview Question...

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

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

[Перевод] Ускорение instagram.com. Часть 3 Сегодня публикуем перевод третьей части серии материалов об ускорении instagram.com. В первой части мы говорили о предварительной загрузке данных, во второй — об отправке данных клиенту по инициативе сервера. Здесь речь пойдёт о кэшировании. Читать дальше →

[Перевод] Что такое Zero Trust? Модель безопасности Zero Trust («нулевое доверие») – это модель безопасности, разработанная бывшим аналитиком Forrester Джоном Киндервагом в 2010 году. С тех пор модель «нулевого доверия» стала наиболее популярной концепцией в сфере кибербезопасности. Недавние массовые утечки данных только по...

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

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

YouTube тестирует «карточки профилей» — по ним авторы каналов смогут узнать, какие комментарии оставляет тот или иной пользователей под их видео YouTube тестирует функцию «карточки профилей» (profile cards), которая позволит владельцам каналов просматривать историю комментариев пользователя. На эксперимент обратило внимание издание TechCrunch. Нажав на имя комментатора, владелец канала сможет увидеть его комментарии ...

[Из песочницы] Особенности атрибута inputmode для мобильных ОС и браузеров Привет, Хабр! Представляю вашему вниманию перевод статьи «Everything You Ever Wanted to Know About inputmode» Christian Oliff. Примечание переводчика: Первоначальное название статьи «Всё, что вы когда-либо хотели знать об inputmode» изменено на «Особенности атрибута inputmo...

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

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

[Из песочницы] ClusterJ — работаем с MySQL NDB Cluster из Java Привет, Хабр! В этой статье я хочу рассмотреть такую библиотеку для Java, как ClusterJ, которая позволяет очень просто работать с движком MySQL NDBCLUSTER из Java кода, которая представляет собой высокоуровневое API, схожее по концепции с JPA и Hibernate. В рамках статьи со...

[Из песочницы] Управление состоянием и событиями между компонентами в GameObject Управление состоянием и событиями между компонентами в GameObject Ссылка на проект Как известно всем, более или менее знакомых с платформой Unity, каждый игровой объект GameObject состоит из компонентов (встроенных или пользовательских, который обычно называют «скрипт»). Ко...

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

[Из песочницы] Workflow 3D-художника. Как не утонуть в тонне информации. Часть 1 Всем привет, Хабр сообщество! Хочу сегодня рассказать Вам о workflow 3D-художников, как в это вникнуть и остаться со стабильной нервной системой. Статья нацелена на новичков в данной области, опытные акулы могут предаться ностальгии, вспомнить, как все начиналось. Читать дал...

[Перевод] Глючный код на Python: 10 самых распространенных ошибок, которые допускают разработчики О Python Python — это интерпретируемый, объектно-ориентированный язык программирования высокого уровня с динамической семантикой. Встроенные структуры данных высокого уровня в сочетании с динамической типизацией и динамическим связыванием делают его очень привлекательным для...

[Из песочницы] Закон ускоряющейся отдачи (часть 1) Привет, Хабр! Представляю вашему вниманию перевод труда «The Law of Accelerating Returns» автора Рэймонда Курцвейла. 7 марта 2001 Анализ истории техники показывает, что количество технологических изменений возрастает экспоненциально, хотя интуитивно, с точки зрения «здравого...

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

[Из песочницы] 10 понятий для дизайнера в 2019-м Среда работы UI/UX дизайнеров стремительно расширяется и растет: появляется уйма новых продуктов и инструментов для разработки интерфейсов, крутых возможностей благодаря развитию гибких языков программирования и, конечно же, в дизайнерскую экосферу внедряется множество новых...

Отправка сообщений peer-to-peer при помощи PeerJS Приветствую вас, уважаемые читатели. В предыдущей статье я рассказал, как сделать простую звонилку в браузере при помощи PeerJS. А сегодня планирую рассмотреть, как обмениваться сообщениями между двумя пользователями напрямую без задержек. Кому это интересно? Если Вы разраб...

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

[Перевод] Jupyter Notebook в Netflix В последнее время Jupyter Notebook стал очень популярен среди специалистов Data Science, став де-факто стандартом для быстрого прототипирования и анализа данных. В Netflix, стараемся раздвинуть границы его возможностей еще дальше, переосмысливая то, чем может быть Notebook, ...

Cмарт розетка REDMOND SkyPort 100S Это продолжение моей первой статьи на смарт цоколь Redmond. В этой статье речь пойдет о другом девайсе компании Redmond — Cмарт розетка REDMOND SkyPort 100S. Данное устройство тоже базируется на чипе nRF51822 и как говорится тут сам бог велел попробовать. Итак, была куплена ...

Грузовой модуль «Заря»: 20 лет на орбите Специалисты центра им. Хруничева обращают внимание на очень долгий срок работы функционального грузового блока «Заря». Об этом говорится в статье из сборника тезисов XLIII Академических чтений по космонавтике (стр. 263−265 в сборнике). «Анализ данных по расходу ресурса ра...

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

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

[Перевод] Ленивая загрузка изображений средствами браузера Автор материала, перевод которого мы сегодня публикуем, Эдди Османи из Google, говорит, что уже в Chrome 75 вполне может появиться поддержка нового атрибута элементов <img> и <iframe> loading. Это означает, что данные элементы будут поддерживать стандартные возмо...

Разработка сайта на WebAssembly с помощью NetCore 3 и Blazor Мое мнение, что WebAssembly будущее интернета. Данная технология на текущий момент уже интегрирована в большинство современных браузерах (а точнее в их движках) на ПК и мобильных устройствах. В таких браузерах как Chrome, Edge, Firefox, и WebKit. В данной статье я опишу как ...

Работа с API КОМПАС-3D → Урок 13 → Параграфы Прежде чем перейти к рассмотрению документированных способов создания составных строк, нам нужно познакомиться с таким объектом, как параграф. Он представляет собой автоматически форматируемый блок текста, состоящий из нескольких строк. На данном уроке мы рассмотрим вопросы ...

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

[Перевод] Утечка 809 миллионов email адресов сервиса Verifications.io из-за публично открытой MongoDB Примечание переводчика — поводом для перевода статьи стало получение уведомления Have I Been Pwned о том, что мои данные оказались в этой утечке. На прошлой неделе исследователи безопасности Bob Diachenko и Vinny Troia обнаружили незащищенную базу данных MongoDB, содержащую...

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

Oracle APEX. Отчеты В этой статье описываются три типа отчетов апекса: Classic Report, Interactive Report (IR) и Interactive Grid (IG). Classic Report — самый простой из них, но в сочетании с другими компонентами позволяет делать достаточно неожиданные вещи. IR и IG обладают намного более широк...

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

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

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

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

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 2 Эта статья продолжает цикл переводных заметок об OpenWhisk от автора Priti Desai. Сегодня будут рассмотрены примеры развертывания GitHub webhook, периодических сигналов, а также приведено простейшее приложение для отправки сообщений в Slack. Читать дальше →

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

[Перевод] Удалённая разработка в VS Code: ваша жизнь никогда не будет прежней У нас в TestMace Visual Studio Code является одним из самых популярных инструментов. И тем более отрадно, что он развивается семимильными шагами. Вашему вниманию предлагается перевод статьи об еще одной вкусной фиче, которая доступна пока только в VS Code Insiders. Согласен,...

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

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

Публикация приложения в Microsoft Store: некоторые изменения за год Вот уже год прошел с момента выхода статьи об особенностях публикации в MS Store. За прошедший год произошло много событий – GDPR, выход VS 2019 и прочие изменения. В сегодняшней небольшой статье мне бы хотелось немного рассказать о том, какие изменения произошли в особенно...

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

[Перевод] Анонимность – иллюзия. По данным из обезличенных датасетов можно идентифицировать реальных людей Theguardian.com опубликовал выводы из исследования, сделанного двумя именитыми вузами: Бельгийским университетом CLouvain и Imperial College London: ученые подтверждают, что существует множество способов связать любые анонимные данные с реальными людьми. К примеру, данные...

[Перевод] Smem – Отчеты о распределении памяти между процессами и пользователями в Linux И снова здравствуйте. Друзья, хотим поделиться с вами переводом полезного материала о мониторинге использования памяти в Linux. Данный материал подготовлен специально для студентов курса «Администратор Linux». Управление памятью в вопросах мониторинга ее использования – о...

[Перевод] Интерфейс и выбор (2014) Joe Edelman Аннотация Теории выбора из экономики и философии предлагают информационные требования для правильного выбора (requirements for good choices). Принимая во внимание эти требования, мы можем понять, почему современные меню ведут к прискорбному и изолированному вы...

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

[Перевод - recovery mode ] Веб скрапинг для веб разработчиков: краткое резюме Знание только одного подхода к веб скрапингу решает проблему в краткосрочной перспективе, но все методы имеют свои сильные и слабые стороны. Осознание этого экономит время и помогает решать задачу эффективнее. Многочисленные ресурсы рассказывают об единственно верном мето...

[Перевод] Учебник по JavaFX: FXML и SceneBuilder Перевод статьи «JavaFX Tutorial: FXML and SceneBuilder» автора Vojtech Ruzicka. Как создать графический интерфейс с JavaFX, используя разметку FXML и SceneBuilder. Все посты в серии о JavaFX: Учебник по JavaFX: начало работы Учебник по JavaFX: Hello world! Учебник по Jav...

Как выглядит zip-архив и что мы с этим можем сделать. Часть 2 — Data Descriptor и сжатие Продолжение статьи Как выглядит zip-архив и что мы с этим можем сделать. Предисловие Доброго времени суток. И снова в эфире у нас нетрадиционное программирование на PHP. В прошлой статье уважаемых читателей заинтересовала тема сжатия в ZIP и сохранение потоков в zip. Попробу...

[Перевод] Управление ЖК-матрицей F-51543NFU-LW-ADN / PWB51543C-2-V0 (от ленточной библиотеки) И снова привет, Хабр! Сделав перевод статьи об управлении ЖК-модулем с драйвером, но без собственного видео-ОЗУ, я решил перевести ещё одну публикацию на ту же тему. Здесь модуль уже попроще, монохромный, но «оживить» его не менее интересно. Читать дальше →

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

[Из песочницы] Как совместить преимущества ноутбука и стационарного компьютера? Разбор проблемы и идеи решения В данный момент ноутбуки и персональные компьютеры сильно отличаются друг от друга. Под системным блоком стационарного компьютера, как правило, понимается «башня» преимущественно стандарта midi-tower, весом килограмм в 15-20 (или больше), занимающий огромное пространство под...

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

[Из песочницы] Два процента «кота» или кто сфотографировал Мастера Йоду? В 2016 из-за давней мечты о видео-играх и «хайпа» вокруг AI я начал изучать Python. Computer Science is Fun потому только неделю назад я обучил первую recognition модель, но без использования Python (в computer science много соблазнов). Как и предсказывал Андрей Себрант (Ya...

[Перевод] Тренды программирования: чего можно ожидать в 2020 году? Как бы безумно это не звучало, но 2020 год наступит уже очень скоро. «2020 год» — это похоже на фразу из научно-фантастического романа. Но это не фантастика. Нас от этой даты отделяет всего несколько месяцев. Автор материала, перевод которого мы публикуем сегодня, говорит...

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 11 Командование и управление (Command and Control) Ссылки на все части: Часть 1. Получение первоначального доступа (Initial Access) Часть 2. Выполнение (Execution) Часть 3. Закрепление (Persistence) Часть 4. Повышение привилегий (Privilege Escalation) Часть 5. Обход защиты (Def...

Связный список на Python: Коты в коробках И снова здравствуйте! В преддверии старта курса «Разработчик Python» подготовили для вас небольшой авторский материал о связных списках на Python. Python очень удобный и многогранный язык, но по умолчанию не имеет такой структуры данных как связный список или LinkedList. ...

[Из песочницы] Управление состоянием приложения в Flutter Привет, Хабр! Представляю перевод статьи, Let me help you to understand and choose a state management solution for your app, которая попалась мне и заинтересовала в процессе изучения азов управления состоянием во Flutter. Буду рад услышать любую критику касательно данного пе...

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

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

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

Обработка исключений ASP.NET при помощи IRO.Mvc.MvcExceptionHandler Если вы являетесь c# бекенд разработчиком, наверняка рано или поздно появилась необходимость найти унифицированный способ обработки исключительных ситуаций. Хотя, даже если вы довольствуетесь кодом 500 в ответе, эта статья все равно поможет улучшить ваш способ, при этом не...

[Перевод] Vue.js: 3 анти-паттерна Вероятно, Vue.js — это один из приятнейших JavaScript-фреймворков. У него имеется интуитивно понятный API, он быстрый, гибкий, им легко пользоваться. Однако гибкость Vue.js соседствует с определёнными опасностями. Некоторые разработчики, работающие с этим фреймворком, склонн...

[Из песочницы] Принцип открытости-закрытости Привет, Хабр! Перед вами перевод статьи Роберта Мартина Open-Closed Principle, которую он опубликовал в январе 1996 года. Статья, мягко говоря, не самая свежая. Но в рунете статьи дяди Боба про SOLID пересказывают только в урезанном виде, поэтому я подумал, что полный перево...

[Перевод] Аппаратные «характеристики» в .NET Core (теперь не только SIMD) Введение Несколько лет назад, мы решили, что настало время поддержать SIMD код в .NET. Мы представили пространство имен System.Numerics с типами Vector2, Vector3,Vector4 и Vector<T>. Эти типы представляют API общего назначения для создания, доступа и оперирования векто...

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

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

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

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

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

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

ECMAScript Proposal: Array.prototype.{flat,flatMap} Нововведения в ECMAScript Здравствуйте читатели Хабр. Предлагаю вашему вниманию интересную штуку которая в скором времени появится в стандарте ECMAScript. Она уже доступна почти во всех браузерах и весь функционал. Это нововведение всего лишь сахар-обертка и ее можно решить...

[Перевод] Как мы изменили состояние «всегда на связи», чтобы предотвратить профессиональное выгорание Перевод статьи подготовлен специально для студентов курса «DevOps практики и инструменты». Миссия Intercom заключается в том, чтобы сделать бизнес в интернете персонализированным. Но персонализировать продукт невозможно, когда он не работает как надо. Работоспособность к...

[Из песочницы] Лучшие практики Node.js — советы по структуре проектов Привет, Хабр! Представляю вашему вниманию адаптированный перевод первой главы "Node.js Best Practices" автора Yoni Goldberg. Подборка рекомендаций по Node.js размещена на github, имеет почти 30 т. звезд, но до сих пор никак не упоминалась на Хабре. Предполагаю, чт...

[Перевод] В Android и Google Photos обнаружены новые уязвимости, позволяющие украсть данные о пользователях Недавно исследователи обнаружили две несвязанные друг с другом уязвимости в продуктах Google. Imperva нашла способ провести атаку по сторонним каналам на Google Фото, которая позволяет злоумышленникам собирать информацию о местонахождении, времени и информации из личных учет...

Безопасные push-уведомления: от теории к практике Привет, Хабр! Сегодня расскажу о том, чем мы с коллегами заняты уже несколько месяцев: о пуш-уведомлениях для мобильных мессенджеров. Как я уже говорил, в нашем приложении главный упор сделан на безопасность. Поэтому мы выясняли, есть ли у пуш-уведомлений “слабые места” и ...

Стоит ли обращать внимание на OnePlus 7 Pro? OnePlus 7 Pro представили вместе с младшей моделью OnePlus 7 ещё 15 мая. В этот раз компания не стала делать разбивку на 2 события, по выделенному на каждое устройство. Не стали тянуть время, сразу нафаршировав Pro-версию самыми современными «железками» и технологиями, а о...

[Из песочницы] Выпуск Rust 1.34 Привет, Хабр! Представляю вашему вниманию перевод статьи "The Rust Release Team "Announcing Rust 1.34.0". Команда разработчиков Rust рада сообщить о выпуске новой версии Rust, 1.34.0. Rust — это язык программирования, который даёт возможность каждому создавать...

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

[Перевод] Решение алгоритмических задач: возможность бронирования отеля Перевод статьи подготовлен специально для студентов курса «Алгоритмы для разработчиков». Эта статья является частью серии о том, как решать алгоритмические задачи. Исходя из своего личного опыта, я обнаружил, что большинство ресурсов просто подробно описывают решение. Объ...

[Перевод] Cтажировка в Haxe Foundation Представляю вам перевод еще одного доклада с HaxeUp Sessions 2019 Linz, считаю что он хорошо дополняет предыдущий, т.к. продолжает тему изменений в Haxe, произошедших в 2019 году, а также немного рассказывает о его будущем. Немного об авторе доклада: Аурел Били познакомился ...

[Перевод] Чтобы вести разработку быстрее, необходимо замедлиться Примечание переводчика: Начало года — отличное время, чтобы вдумчиво оценить прошедший год. Окинуть широким взглядом происходящее и понять, как сделать 2019 год лучше, спокойнее и продуктивнее. В этом деле нам показалась полезной статья How To Slow Down to Go Faster Than E...

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

Thermaltake Toughpower PF1 ARGB Platinum: блоки питания с подсветкой мощностью до 1200 Вт Компания Thermaltake представила блоки питания Toughpower PF1 ARGB Platinum (TT Premium Edition), получившие сертификацию 80 PLUS Platinum. В семейство вошли три модели — мощностью 850 Вт, 1050 Вт и 1200 Вт. В новинках применяются высококачественные японские конденсаторы. Бл...

[Перевод] История Vim и руководство по его эффективному использованию Примечание от переводчика: это первая часть монументальной (на самом деле монументальной) статьи о Vim и его возможностях от разработчика из Миннеаполиса и автора проекта PostgREST Джо begriffs Нельсона. Первая часть статьи отводится на знакомство с историей Vim как редакт...

[Перевод] Inception bar: новый метод фишинга Доброго времени суток, Хабр! На просторах Интернета мне попалась статья на английском «The inception bar: a new phishing method» автора Jim Fisher. В ней описывается занимательный способ фишинга, механизм которого заключён в использовании экранного пространства строки отобра...

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