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

2. Типовые сценарии использования Check Point Maestro Совсем недавно компания Check Point презентовала новую масштабируемую платформу Maestro. Мы уже публиковали целую статью о том, что это такое и как оно работает. Если коротко — позволяет почти линейно увеличивать производительность шлюза безопасности путем объединения неск...

4. Нагрузочное тестирование Check Point Maestro Продолжаем цикл статей по решению Check Point Maestro. Мы уже опубликовали три вводных статьи: Check Point Maestro Hyperscale Network Security Типовые сценарии использования Check Point Maestro Типовой сценарий внедрения Check Point Maestro Теперь самое время перейти к ...

Check Point Falcon Acceleration Cards — ускоряем обработку трафика Относительно недавно мы публиковали статью про Check Point Maestro, новую масштабируемую платформу, которая позволяет практически линейно наращивать “мощность” шлюзов Check Point. Однако это не единственная технология увеличения производительности. Еще в 2018 году были ано...

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

Wargaming Platform: Hello World WTF is Platform? В Wargaming есть отдельное подразделение, которое занимается… занимается разработкой некой «платформы» для издания игр. Объяснить, что такое Платформа, чем она является и не является, весьма сложно — но я попробую. Почему появилась статья Привет! Меня зовут ...

[Из песочницы] .NET зоопарк под призмой NET Core Всем привет! Сегодня мы рассмотрим разные фишки и изменения, которые появились в .NET Core платформе и сравним их с Framework. Я разбил статью на модули для более лучшего понимания. Эта статья будет интересна тем кто собирается переходить на .NET Core или уже использует его....

Обеспечение надежной работы Zextras Team в сложных корпоративных сетях В прошлой статье мы рассказали вам о Zextras Team — решении, которое позволяет добавить в Zimbra Collaboration Suite Open-Source Edition функциональность корпоративных текстовых и видео-чатов, а также возможность проводить видеоконференции с большим числом участников, без не...

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

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

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

Категории выражений в C++ Категории выражений, такие как lvalue и rvalue, относятся, скорее, к фундаментальным теоретическим понятиям языка C++, чем к практическим аспектам его использования. По этой причине многие даже опытные программисты достаточно смутно представляют себе, что они означают. В это...

SNA Hackathon 2019: усложняем архитектуру — упрощаем признаки В этой статье я расскажу про свое решение текстовой части задачи SNA Hackathon 2019. Какие-то из предложенных идей будут полезны участникам очной части хакатона, которая пройдет в московском офисе Mail.ru Group с 30 марта по 1 апреля. Кроме того, этот рассказ может быть ин...

Как взять сетевую инфраструктуру под свой контроль. Глава третья. Сетевая безопасность. Часть третья Эта статья является пятой в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь. Эта часть будет посвящена Campus (Office) & Remote access VPN сегментам. Может показаться, что дизайн офисной сети...

ИБ из облака: Единая платформа сервисов кибербезопасности В конце прошлого года, после сделки с «Ростелекомом», мы получили в свое распоряжение облачную SD-WAN/SDN-платформу для предоставления заказчикам ИБ-сервисов. Мы подключили к проекту вендоров, поставляющих свои решения в виртуализованном виде, и получилась огромная махина, ...

Оптимизация Unity UI В этой статье разбираются вопросы оптимизации UI-элементов проектов, сделанных в ​Unity​. На основании информации из официальной документации и личного опыта я постарался наглядно объяснить принципы работы UI-элементов. Также здесь вы найдёте практические советы, которые по...

Балансировка нагрузки в Openstack В крупных облачных системах особенно остро стоит вопрос автоматической балансировки или выравнивания нагрузки на вычислительные ресурсы. Озаботились данным вопросом и в Тиониксе (разработчик и оператор облачных услуг, входим в группу компаний Ростелекома). И, поскольку наш...

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его ...

Балансировка нагрузки в Openstack (Часть 2) В прошлой статье мы рассказали о попытках использовать Watcher и представили отчет испытаний. Такие испытания мы периодически проводим для балансировки и других критических функций большого корпоративного или операторского облака. Высокая сложность решаемой задачи, возможно...

Гиперконвергентное решение AERODISK vAIR. Основа — файловая система ARDFS Привет, читатели Хабра. Этой статьей мы открываем цикл, который будет рассказывать о разработанной нами гиперконвергентной системе AERODISK vAIR. Изначально мы хотели первой же статьей рассказать всё обо всём, но система довольно сложная, поэтому будем есть слона по частям....

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

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

[Перевод] Кеширование в Laravel: основы плюс tips&tricks Техника кеширования позволяет создавать более масштабируемые приложения, запоминания результаты некоторых запросов в быстрое in-memory хранилище. Однако, некорректно реализованное кеширование может сильно ухудшить впечатление пользователя о вашем приложении. Эта статья содер...

Рекомендации по настройке AFA AccelStor при работе с VMware vSphere В рамках данной статьи хотелось бы рассказать об особенностях работы All Flash массивов AccelStor с одной из популярнейших платформ виртуализации – VMware vSphere. В частности, акцентировать внимание на тех параметрах, которые помогут получить максимальный эффект от использо...

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

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

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

Аудит безопасности облачной платформы MCS SkyShip Dusk by SeerLight Построение любого сервиса обязательно включает в себя постоянную работу над безопасностью. Безопасность — это непрерывный процесс, который включает в себя постоянный анализ и улучшение защищенности продукта, мониторинг новостей про уязвимости и мн...

[Перевод] Фотографии из грубых набросков: как именно работает нейросеть NVIDIA GauGAN В прошлом месяце на NVIDIA GTC 2019 компания NVIDIA представила новое приложение, которое превращает нарисованные пользователем простые цветные шарики в великолепные фотореалистичные изображения. Приложение построено на технологии генеративно-состязательных сетей (GAN), в ...

20 проектов, 20 языков, срок вчера. Часть 3 Заключительная статья об интеграции Serge+Smartcat. В этой статье я расскажу, как мы масштабируем Serge на всю компанию, рассмотрю 4 нестандартных интеграции и, в качестве бонуса, расскажу о 2 фичах которые могут упростить вам жизнь. Предыдущие статьи: 20 проектов, 20 язык...

Хватит спорить про функциональное программирование и ООП Пост содержит некоторое количество стёба, минздрав убедительно просит неподготовленного читателя воздержаться от прочтения. Статьи на тему «ФП лучше» или «ООП лучше» напоминают дебаты, что же лучше для обеда, вилка или ложка. Традиционно джуны начинали с ложки, но кто-то оче...

Dell и Alienware на CES 2019: гайд по всем основным новинкам Совсем недавно в Лас-Вегасе завершилась выставка Consumer Electronics Show 2019. Так сложилось, что это одна из главных площадок для анонсов новых компьютеров. Разумеется, Dell и наша дочерняя компания Alienware не могли остаться в стороне – на CES мы представили очень много...

3. Типовой сценарий внедрения Check Point Maestro В прошлых двух статьях (первая, вторая) мы рассмотрели принцип работы Check Point Maestro, а также технические и экономические преимущества этого решения. Теперь хотелось бы перейти к конкретному примеру и описать возможный сценарий внедрения Check Point Maestro. Я покажу ...

Байт-машина для форта (и не только) по-индейски (часть 4) И снова я несколько переоценил объем статьи! Планировал, что это будет заключительная статья, где сделаем компилятор и выполним тестирование. Но объем оказался велик, и я решил разбить статью на две. В этой статье мы сделаем практически все основные функции компилятора. ...

О том как я подготовился и сдал сертификацию Oracle Database SQL (1Z0-071) Зачем написана статья? Когда я готовился к OCA и OCP по Java 8, то нашел много статей на Хабре, благодаря которым выбрал оптимальный путь и сэкономил много времени. Однако по подготовке именно к OCA Oracle Database SQL (1Z0-071) материалов на Хабре нет и в интернете тоже о...

Технические отличия BI систем (Power BI, Qlik Sense, Tableau) Время необходимое на прочтение 11 минут Мы и Квадрат Гартнера 2019 BI :-) Целью данной статьи является сравнение трёх ведущих BI платформ, которые находятся в лидерах квадранта Gartner: — Power BI (Microsoft) — Tableau — Qlik Рисунок 1. Gartner BI Magic Quadrant 2019 М...

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

[Из песочницы] Direct routing и балансировка с помощью NFT vs Nginx При разработке высоконагруженых сетевых приложений возникает необходимость в балансировке нагрузки. Популярным инструментом L7 балансировки является Nginx. Он позволяет кешировать ответы, выбирать различные стратегии и даже скриптить на LUA.  Несмотря на все прелести Ngin...

AERODISK Engine: Катастрофоустойчивость. Часть 2. Метрокластер Привет, читатели Хабра! В прошлой статье мы рассказали о простом средстве катастрофоустойчивости в системах хранения AERODISK ENGINE – о репликации. В этой статье мы погрузимся в более сложную и интересную тему – метрокластер, то есть средство автоматизированной защиты от к...

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

Хитрости в Machine Learning — работа с несколькими моделями в Keras Это моя первая статья по теме Машинное обучение. С недавнего времени я профессионально занимаюсь машинным обучением и компьютерным зрением. В этой и будущих статьях я буду делиться наблюдениями и решениями специфических проблем при использовании TensorFlow и Keras. В этой ст...

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

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

[Из песочницы] Thimble (Mozilla) переезжает на Glitch С середины декабря 2018 года на сайте проекта Thimble от Mozilla появилось объявление о переезде на платформу проекта Glitch. Переезд должен полностью состояться до 16 декабря 2019 года. Обе платформы уже обсуждались на Хабре. Статьи о Thimble – статья 1, статья 2. Статья о ...

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

[Перевод] Knative — платформа как услуга на основе k8s с поддержкой serverless Доминирующей платформой для развертывания контейнеров, несомненно, стал Kubernetes. Он предоставляет возможность управлять практически всем, используя свои API и пользовательские контроллеры, расширяющие его API посредством пользовательских ресурсов. Тем не менее пользовате...

2. Анализ зловредов с помощью форензики Check Point. SandBlast Agent Продолжаем наш цикл статей по форензике от Check Point. В предыдущей статье мы рассмотрели новый отчет сетевой песочницы, которая помогает ловить 0-day атаки на периметре сети. К сожалению (для “безопасников”), периметр уже давно потерял четкие границы. Мобильные устройств...

[Перевод] Service mesh для микросервисов. Часть II, основы работы с Istio Перевод статьи подготовлен специально для студентов курса «Инфраструктурная платформа на основе Kubernetes». Настройка базового микросервиса в Kubernetes обманчиво проста. В одной из последних статей мы рассказали, как легко начать работать с контейнерами. Мы скомпоновали п...

7. Check Point Getting Started R80.20. Access Control Добро пожаловать на 7-й урок, где мы уже начнем работу с политиками безопасности. Сегодня мы первый раз установим политику на наш шлюз, т.е. наконец сделаем «install policy». После этого через шлюз уже сможет ходить трафик! Вообще, политики, с точки зрения Check Point, д...

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

[Из песочницы] OBD2 reader — диагностика автомобиля При создании приложения мы столкнулись с множеством выборов, проблем и так далее, с которыми попробуем ознакомить вас в этой статье. Как оказалось с автомобилем можно вести диалог, причем довольно таки продуктивный. Естественно для того чтобы организовать общение с автомобил...

В шлюзе ENET IPSec VPN ПО с открытым кодом Libreswan работает на высокопроизводительной аппаратной платформе на FPGA Компания Ethernity Networks, называющая себя «ведущим новатором в области технологий и продуктов сетевой обработки», представила шлюз VPN, позволяющий объединять несколько туннелей VPN. Программируемый шлюз ENET IPSec VPN полностью высвобождает хост от функц...

Работа с сервисом Managed Databases от Digital Ocean в .NET Core В том время, как у других облачных платформ уже давно есть свои решения для баз данных, Digital Ocean в этом сегменте до сегодняшнего дня ничего не предлагал. Но 14 февраля, в день всех влюбленных, компания решила сделать подарок своим клиентам и в режиме Limited Availabil...

Hyperledger Fabric для Чайников A Blockchain Platform for the Enterprise Добрый день, дорогие читатели, меня зовут Николай Нефедов, я технический специалист компании IBM, в этой статье я хотел бы познакомить вас с блокчейн платформой – Hyperledger Fabric. Платформа предназначена для построения бизнес прил...

[Из песочницы] Что ты такое, замыкания в JavaScript? В этой статье я постараюсь разобрать механизм реализации замыканий в JavaScript. Для этого я буду использовать браузер Chrome. Начнем с определения: Замыкания  - это функции, ссылающиеся на независимые (свободные) переменные. Другими словами, функция, определённая в замыка...

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

Идея о поиске людей в лесу Эта статья описание небольшой идеи возникшей после прочтения недавней статьи «Обыскать 314 км² за 10 часов — финальное сражение инженеров-поисковиков против леса» Сразу предупрежу, что у меня маловато опыта в радиотехнике, и совсем нет оного в поиске пропавших людей, так чт...

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

CodeFest X. Назад в будущее Никогда такого не было, и вот опять — в Новосибирске наступает бархатный сезон, а значит, CodeFest близко! На этот раз десятый, юбилейный, по-прежнему улётный. В честь юбилея мы постарались выйти за рамки и слегка преобразиться. В этом году нас ждёт 3000 участников, главн...

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

Введение в Spring, или что делать, если по всему проекту @Autowired и @Component, а вы не понимаете, что это Приветствую тебя, Хабр! Эта статья будет полезна тем, кто уже начал изучать Java и даже успел добиться некоторых успехов в понимании Java Core, и вот услышал слово Spring. И, возможно, даже не один раз: знание Spring Framework, как минимум, фигурирует в описаниях множества ...

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

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

Как могли бы выглядеть регистры в 1С при наличии ООП В 1С одним из ключевых элементов системы являются регистры. Этот термин имеет свой аналог в английском языке — ledger. Он первоначально появился в бухгалтерской практике, но со временем его логика начала использоваться и в других сферах. В отличие от 1С, где регистры явля...

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

Пишем краулер на раз-два 1.0 Веб-краулер (или веб-паук) — это важная составная часть поисковых систем для обхода веб-страниц с целью занесения информации о них в базы данных, в основном, для их дальнейшей индексации. Такая штука есть у поисковиков (Google, Yandex, Bing), а также у SEO-продуктов (SEMrush...

[Из песочницы] SSEGWSW: Server-Sent Events Gateway by Service Workers Привет! Меня зовут Саша и я работаю архитектором в Тинькофф Бизнес. В этой статье хочу рассказать о том, как преодолеть ограничение браузеров на количество открытых долгоживущих HTTP-соединений в рамках одного домена при помощи service worker. Если хотите — смело пропуска...

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

Безопасность Helm Эмоджи классные, с их помощью можно даже отразить всю суть рассказа о самом популярном пакетном менеджере для Kubernetes: коробка — это Helm (это самое подходящее, что есть в последнем релизе Emoji); замок — безопасность; человечек — решение проблемы. Конечно, построить...

WISE-PaaS — облачная платформа для промышленного интернета вещей WISE-PaaS — (Platform as a Service) облачная платформа Advantech для промышленного интернета вещей, объединяющая в себе различные инструменты для сбора, обработки, и визуализации данных, автоматизации, управления устройствами и системами искусственного интеллекта и машинно...

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

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

Типичные ошибки при работе с PostgreSQL Чуть более месяца назад в Москве состоялась крупнейшая конференция постгресового сообщества PGConf.Russia 2019, собравшая в МГУ свыше 700 человек. Мы решили выложить видео и расшифровку лучших докладов. Выступление Ивана Фролкова с разбором типичных ошибок при работе с Postg...

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

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

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

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

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

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

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

Кадровая алхимия: каков оптимальный состав команды центра ГосСОПКА? Эта статья пригодится тем, кто работает в компании, признанной субъектом критической информационной инфраструктуры (КИИ), а значит — обязанной выполнить требования №187-ФЗ и построить центр ГосСОПКА (Государственной системы обнаружения, предупреждения и ликвидации последст...

Кастомизация резолвинга зависимостей в Spring Привет! Меня зовут Андрей Неведомский и я главный инженер в СберТехе. Я работаю в команде, которая занимается разработкой одного из системных сервисов ЕФС (Единой Фронтальной Системы). В своей работе мы активно используем Spring Framework, в частности его DI, и время от врем...

Как проводить A/B-тестирование на 15 000 офлайн-магазинах Привет! На связи команда Ad-hoc аналитики Big Data из X5 Retail Group. В этой статье мы расскажем о нашей методологии A/B-тестирования и сложностях, с которыми мы ежедневно сталкиваемся. В Big Data Х5 работает около 200 человек, среди которых 70 дата сайентистов и дата ан...

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

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

Что нам стоит IoT построить? Свой IoT на Amazon за один день Начать разбираться с IoT (Internet of Things) платформами меня останавливало отсутствие IoT устройства, которое было бы совместимо по протоколам и способам доступа. Но когда я понял, что в качестве устройства можно использовать обыкновенный смартфон, то реализация работающей...

AERODISK Engine: Катастрофоустойчивость. Часть 1 Привет, читатели хабра! Темой этой статьи будет реализация средств катастрофоустойчивости в системах хранения AERODISK Engine. Изначально мы хотели написать в одной статье про оба средства: репликацию и метрокластер, но, к сожалению, статья получилась слишком большой, поэто...

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

Окей, Google: как пройти капчу? Здравствуйте. Меня зовут Ибадов Илькин, я студент Уральского федерального университета. В данной статье я хочу рассказать о своем опыте автоматизированного решения капчи компании «Google» — «reCAPTCHA». Хотелось бы заранее предупредить читателя о том, что на момент написани...

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

Работа с MS SQL из Powershell на Linux Эта статья чисто практическая и посвящена моей грустной истории Готовясь к Zero Touch PROD для RDS (MS SQL), про который нам прожужжали все уши, я сделал презентацию (POC — Proof Of Concept) автоматизации: набора powershell скриптов. После презентации, когда стихли бурные, п...

Как устроено A/B-тестирование в Авито Всем привет. Меня зовут Данила, я работаю в команде, которая развивает аналитическую инфраструктуру в Авито. Центральное место в этой инфраструктуре занимает А/B-тестирование. А/B эксперименты — ключевой инструмент принятия решений в Авито. В нашем цикле продуктовой разработ...

Как настроить Continuous Deployment для своего проекта: личный опыт Перевели для вас статью Юлиуса Минмо о настройке непрерывной интеграции (Continuous Deployment) для своего проекта. Автоматизация позволяет сэкономить кучу времени и сил. Статья будет полезна, в первую очередь, начинающим программистам. Непрерывная интеграция — отличная ...

Собираем свой Nginx парой команд Привет! Меня зовут Сергей, я работаю инфраструктурным инженером в команде API платформы tinkoff.ru. В этой статье я расскажу о проблемах, с которыми сталкивалась наша команда при подготовке балансировщиков на основе Nginx для различных проектов. Также расскажу об инструмен...

AR-креаторы: зарождение новой профессии В августе этого года на свет появилась новая профессия. А все потому, что Facebook вывел из бета версии Spark AR — платформу для создания масок для Instagram и Facebook. Так получилось, что я оказался в водовороте процесса становления этой профессии и сам стал AR-креатором. ...

Как улучшить защиту периметра сети? Практические рекомендации для Check Point и не только Мы продолжаем цикл статей, посвященных оптимизации security настроек средств защиты периметра сети (NGFW). Хочу сразу заметить, что приведенные рекомендации подходят не только для владельцев Check Point. По сути, если разобраться, угрозы одинаковы для всех, просто каждый N...

[Перевод] 56 проектов на Python с открытым исходным кодом 1. Flask Это микро-фреймворк, написанный на Python. Он не имеет валидаций для форм и уровня абстракции базы данных, но позволяет вам использовать сторонние библиотеки для общих функций. И именно поэтому это микро-фреймворк. Flask предназначен для простого и быстрого создан...

Импортозамещение, или как «Вертолеты России» сделали что-то не так В связи с тем, что близится 2020 год и «час хэ», когда нужно будет отчитаться об исполнении приказа Минсвязи о переходе на отечественное ПО (в рамках импортозамещения), мне прилетела задача о разработке плана, собственно, по исполнению приказа Министерства связи и массовых к...

ЧПУ выжигатель с нихромовой проволокой часть 3. Прошивки и ПО. Всем привет. Давайте продолжим. Начало здесь и здесь .  Есть группа в VK Немного отклонюсь от порядка написания, начнем с различного ПО и прошивки. Плюс в следующей статье, добавим пару плюшек с помощью двух релюшек )) Как было известно из первой статьи станок работает ...

Построение отказоустойчивого решения на базе Oracle RAC и архитектуры AccelStor Shared-Nothing Немалое число Enterprise приложений и систем виртуализации имеют собственные механизмы для построения отказоустойчивых решений. В частности, Oracle RAC (Oracle Real Application Cluster) представляет собой кластер из двух или более серверов баз данных Oracle, работающих совме...

Apple собирается объединить приложения для iPhone, iPad и macOS в одну платформу до 2021г Apple продолжает усиленно работать над тем, чтобы максимально облегчить разработчикам программного обеспечения оптимизацию их приложений для iOS и macOS. Идея состоит в том, чтобы создать платформу, которая унифицирует код и позволит программам работать на обеих платформах б...

HP покупает компанию Bromium, работающую в области компьютерной безопасности Компания HP на этой неделе сообщила о покупке компании Bromium, работающей в сфере компьютерной безопасности. Говоря точнее, Bromium ориентируется на корпоративный сегмент и продвигает решения на основе собственной разработки — технологии microVM. Опираясь на техн...

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

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

[Перевод] Всегда ли Node.js будет медленнее, чем Golang? Возникает такое ощущение, что буквально каждую неделю появляется новый «веб-фреймворк» для Node.js, который называют чем-то таким, что работает быстрее, чем всё, что было до него. Всем известно, что Express — это медленно, но способен ли очередной фреймворк по-настоящему улу...

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

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

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

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

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

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

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

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

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

Балансировка красно-чёрных деревьев — Три случая Двоичные деревья поиска — эта структура данных для хранения элементов с возможностью быстрого поиска. Идея проста и гениальна: «меньше – налево, больше – направо». На этом простота заканчивается и начинаются сложные вопросы балансировки дерева, чтобы оно не превратилось в дл...

Устанавливаем GUI на Windows Server Core В прошлом нашем посте мы рассказали как готовим стандартные клиентские виртуальные машины и показали на примере нашего нового тарифа Ultralight за 120 рублей, как мы создавали стандартный образ Windows Server 2019 Core. В службу поддержки стали поступать заявки как работать...

Реализация пула соединений в WCF для .Net Core с использованием HttpClientFactory Наш продукт разрабатывается на платформе .Net Core 2.2 с использованием WCF 4.5 для взаимодействия с SOAP сервисом клиента. В процессе работы сервиса разработчики шины данных заметили высокую нагрузку на сервер. Далее стали появляться проблемы с доступом к сервису. В результ...

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

[Перевод] Процедурные дороги в Houdini и Unity Для моей постапокалиптической игры Frameshift мне нужно было заполнить очень большой открытый мир разнообразными городами. В нашей команде всего 3 человека, поэтому я, разумеется, воспользовался процедурной мощью Houdini! Раньше, когда не знал о Houdini, я писал на C# соб...

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

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

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

Антирейтинг 2018 Эта статья написана по аналогии со статьей «Как не надо писать на Хабр: Антирейтинг 2017». Статьи взяты за 2018 год, точнее, начиная с индекса 345000. Кроме отрицательных значений рейтинга, есть список по абсолютному количеству минусов (видимо, самые обсуждаемые темы, в бо...

Сравнение производительности виртуальных машин 6 облачных платформ: Selectel, MCS, Я.Облако, Google Cloud, AWS и Azure Давеча на глаза мне тут попалось аж две статьи из одного корпоративного блога, касающиеся облаков — одна про Kubernetes, а во второй была попытка замера производительности по методике, которая мне показалась сомнительной (спойлер — и не зря). Про K8s мне тоже есть что сказат...

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

Безопасность в облаках. Изучаем безопасность облачных сервисов на примере инфраструктуры Яндекса Существует несколько методов построения корпоративной IT-инфраструктуры. Развертывание всех ресурсов и сервисов на базе облачной платформы — лишь один из них. Однако преградой на этом пути часто становятся предрассудки, касающиеся безопасности облачных решений. В этой статье...

Чем Xiaomi Mi 9 отличается от моделей Mi 9 SE и Mi 9 TE Хоть смартфоны Xiaomi Mi 9, Mi 9 SE и Mi 9 Transparent Edition (TE) не считаются модификациями одного и того же устройства, а являются отдельными моделями, все они довольно схожи между собой. В рамках этой статьи мы расскажем, в чём кроются отличия между данными смартфонами ...

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

Опыт использования flatten-maven-plugin для упрощения версионирования в maven-проектах О нас В 1С мы разрабатываем не только платформу 1С: Предприятие на С++ и JavaScript, но и приложения на Java – в частности новую среду разработки Enterprise Development Tools на базе Eclipse и сервер глубоко интегрированного с платформой мессенджера – Системы Взаимодействия....

Как мы переложили управление инфраструктурой на Terraform — и начали жить У нас было 4 Amazon-аккаунта, 9 VPC и 30 мощнейших девелоперских окружений, стейджей, регрессий — всего более 1000 EC2 instance всех цветов и оттенков. Раз уж начал коллекционировать облачные решения для бизнеса, то надо идти в своем увлечении до конца и продумать как все э...

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

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

[Из песочницы] Опыт установки Apache Airflow на Windows 10 Преамбула: волею судьбы из мира академической науки (медицины) я попала в мир информационных технологий, где мне приходится использовать свои знания о методологии построения эксперимента и стратегиях анализа экспериментальных данных, однако, применять новый для меня стек тех...

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

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

[recovery mode] ShIoTiny: часы без пружины или реальное время и как с ним работать О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этот статье рассказано о часах реального времени в контроллере ShIoTiny, синхронизации времени и использовании узлов работы с часами. Сайт проекта ShIoTiny...

[Из песочницы] Что дает объединение ручного и автоматизированного тестирования: опыт Wrike Читая статьи на тему web-тестирования, вырисовываются условно две темы: 1) ручное тестирование вымирает, автотесты (здесь и далее под автотестами имеются в виду Selenium UI и REST-тесты) – наше все; 2) автоматическое тестирование – не панацея, без ручного тестирования не об...

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

[Из песочницы] Аппаратный bit banding CortexM3/M4(ARM), архитектура ядра, ассемблер, С/C++14 и капля мета программирования Введение Внимание, это не очередная «Hello world»статья о том как помигать светодиодом или попасть в свое первое прерывание на STM32. Однако, я постарался дать исчерпывающие объяснения по всем затрагиваемым вопросам, поэтому статья будет полезна не только многим профессионал...

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

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

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

Какие игры лучше работают на консолях, а какие - только на компьютере Как человек, у которого есть PlayStation 4 Pro, Xbox One X, Nintendo Switch и мощный игровой комп, ответственно заявляю - идеальной игровой платформы не существует. У каждой есть свои преимущества и свои недостатки - как чисто технические, так и с точки зрения набора различн...

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

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

Edition-Based Redefinition. Часть 2 Привет! Как и обещала в предыдущем посте про Edition-Based Redefinition — вот вторая часть. Итак, с чем мы работаем? Наш основной production сервер — это Oracle 12С, Enterprise Edition. И, что важно отметить, на нем работает несколько десятков приложений одновременно. Поч...

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

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

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

RxSwift и корутины в Kotlin — факультатив по мобильной разработке от AGIMA и GeekBrains Знания — это хорошо, просто отлично. Но нужна еще и практика, чтобы можно было использовать полученные данные, переведя их из статуса «пассивное хранение» в статус «активное использование». Каким бы хорошим ни было теоретическое обучение, требуется еще работа «в поле». Ска...

3D-печать и airsoft: как я печатал «привод» Всем привет! Я попробую немного рассказать о том, как я пытался сделать страйкбольный привод при помощи 3D-принтера, что из этого получилось и с какими сложностями пришлось столкнуться. Статья может оказаться интересной для тех, кто любит airsoft, DIY или 3D-печать. Для те...

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

Microsoft ML Spark: расширение Spark, делающее SparkML человечнее, и LightGBM как бонус Многие, кто работал с Spark ML, знают, что некоторые вещи там сделаны "не совсем удачно" или не сделаны вообще. Позиция разработчиков Spark в том, что SparkML — это базовая платформа, а все расширения должны быть отдельными пакетами. Но это не всегда удобно, ведь Data Scient...

Как 5G меняет технологии гейминга Благодаря совместной работе компаний отрасли на рынок уже выходят новые устройства и происходит активное развёртывание сетей и инфраструктуры 5G. После десяти лет разработки революционных технологий, необходимых для создания сетей нового поколения, мы представили миру моби...

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

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

Xcode 11 и XCFrameworks: новый формат упаковки фреймворков В жизни многих компаний, которые имеют и развивают свой стек библиотек и компонентов, наступает момент, когда объёмы этого стека становится сложно поддерживать. В случае разработки под платформу iOS, да и в целом, экосистему Apple, есть два варианта подключать библиотеки в ...

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

Мифы о Bluetooth, в которые мы до сих пор верим Вluetooth окружен кучей мифов Уже достаточно давно технология Bluetooth используется в наших смартфонах. Благодаря ей гаджеты отлично работают в паре с умными часами, не менее умными колонками, наушниками и кучей других подобных устройств. Однако вокруг Bluetooth до сих пор ...

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

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

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

Как научить машину понимать инвойсы и извлекать из них данные Привет, хабр! Меня зовут Станислав Семенов, я работаю над технологиями извлечения данных из документов в R&D ABBYY. В этой статье я расскажу об основных подходах к обработке полуструктурированных документов (инвойсы, кассовые чеки и т.д.), которые мы использовали совсем ...

Элементарный Canvas Если вы изучаете веб совсем недавно, но уже успели увидеть различные красивые эффекты на сайте, по типу системы частиц или какие либо игры разработанные на canvas'e и вас это заинтриговало, но изучать что-то новое очень страшно, то я вам готов продемонстрировать, как за 50 с...

Samsung раньше времени показала официальные изображения Galaxy S10 Перед началом выставки потребительской электроники Consumer Electronic Show 2019, которая проходит в Лас-Вегасе, компания Samsung опубликовала на официальном сайте небольшую заметку, посвященную новому графическому интерфейсу One UI. Пользователи Reddit успели сохранить...

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

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

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

[Перевод] Гид по параллельному масштабированию Amazon Redshift и результаты тестирования Мы в Skyeng пользуемся Amazon Redshift, в том числе параллельным масштабированием, поэтому статья Стефана Громолла, основателя dotgo.com, для intermix.io, показалась нам интересной. После перевода — немного нашего опыта от инженера по данным Данияра Белходжаева. Архитекту...

Превращая FunC в FunCtional: как Serokell победили в Telegram Blockchain Competition Вы наверняка слышали о том, что Telegram собирается запустить блокчейн-платформу Ton. Но вы могли пропустить новость, что не так давно Telegram объявил конкурс на реализацию одного или нескольких смарт-контрактов для этой платформы. Команда Serokell с богатым опытом разрабо...

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

Новые блейд-сервера для совершенствования IT-инфраструктуры На рынке появился блейд-сервер hp proliant bl460c gen10. Производители сделали его универсальным инструментом, используемым для выполнения традиционных и гибридных операций. Позиционируется как мощная вычислительная платформа, имеющая память и внутреннее хранилище. Благодаря...

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, ...

[Перевод] Как работает Level Flow в Uncharted 4 и The Last Of Us В течение последних месяцев я исследовал несколько разных игр, в том числе «Uncharted 4» и «The Last of Us» (разработанные Naughty Dog). Цель этой статьи — познакомить вас с дизайном уровней и дать мотивацию к его дальнейшему изучению. Я вкратце расскажу о различных элемен...

Race condition в веб-приложениях TL;DR Большинство атакующих использовали ненадежные методы race condition, инструмент racepwn поможет это исправить Вася хочет перевести 100 долларов, которые есть у него на счету, Пете. Он переходит на вкладку переводов, вбивает Петин ник и в поле с количеством средств, ко...

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

Web scraping на R, часть 2. Ускорение процесса с помощью параллельных вычислений и использование пакета Rcrawler В прошлой статье я с помощью скрэпинга-парсинга собрал с сайтов IMDB и Кинопоиск оценки фильмов и сравнил их. Репозиторий на Github. Код неплохо справился со своей задачей, однако скрэпинг часто используют для "соскабливания" не пары-тройки страниц, а пары-тройки тысяч и д...

Экономия на мобильной кросс-платформенной разработке: кейс Skyeng Привет, я Андрей Кучеренко, тимлид мобильной разработки Skyeng. Мы делаем мобильные приложения под iOS и Android. У них одинаковая функциональность и одинаковый с точностью до стилистики интерфейс. Но из-за разных платформ разработка вроде бы одного приложения получается до...

Nixie clock на индикаторах ИН-18 Всем привет. Наверное, многие слышали про часы на газоразрядных индикаторах. В этой статье постараюсь рассказать про процесс изготовления своими руками таких часов. Читать дальше →

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

Тест: подходит ли тебе удаленка (не фриланс!)? Эта статья для тех, кто задумывается, стоит ли пробовать удаленную работу, и взвешивает риски: стиль жизни существенно поменяется, мало ли, что пойдет не так, а вернуться обратно будет непросто. Я не буду преподносить удаленку как райское наслаждение на пляжике под пальмочко...

Microsoft объединила все инструменты Office в рамках единого Android-приложения Корпорация Microsoft создала новое приложение для платформы Android, которое включает все инструменты пакета Office в одном месте. С его помощью можно создавать и редактировать документы и управлять ими на смартфоне или планшете. Новый инструмент также позволяет совместно ра...

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме...

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

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

Allure-Android. Информативные отчеты для мобильной автоматизации Автоматизация мобильных приложений довольно молодая сфера: фреймворков много и многие проекты сталкиваются с проблемой выбора самого «быстрого, стабильного, простого в использовании». Также и мы около двух лет назад стояли перед выбором нового инструмента автоматизации тести...

Интервью с Артуром Хачуяном: как вычислить миллиардера в социальных сетях? Основатель Tazeros Global Systems Артур Хачуян рассказал о сборе данных в социальных сетях и как правильно составлять анкету в профиле, чтобы познакомиться в них с миллиардерами? Студия, где записывалось интервью, находится на высоте 332 метра. Вообще, в «Башне Федерация» на...

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

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

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

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

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

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

[recovery mode] Промышленный интернет вещей: рассказываем об успешных кейсах В следующем году число подключенных к интернету устройств вырастет до 34 миллиардов, при этом большую часть составят «умные» объекты для бизнеса и промышленности. А к 2021 году инвестиции в развитие только промышленного интернета вещей» (IIoT) достигнут шести триллионов долл...

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

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

Strong «caffe» на завтрак и выездные хакатоны: почему это важно для развития Data Science сообщества Я Data Scientist в команде Data Lake Platform в Райффайзенбанке. Три года назад в банке не было направления Big Data, а сейчас у нас есть отдельная платформа для работы с большими данными и активно развивающееся сообщество. По мере развития data driven культуры мы сталкиваем...

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

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

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

[Перевод] Цепи Маркова для процедурной генерации зданий Примечание: полный исходный код этого проекта можно найти [здесь]. Так как он является частью более масштабного проекта, я рекомендую смотреть коммит на момент выпуска этой статьи, или файл /source/helpers/arraymath.h, а также /source/world/blueprint.cpp. В этой статье я х...

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

Ретроклокинг: вторая жизнь Pentium 4 Есть ли у процессоров вторая жизнь? Многие, наверное, подумали о рынке б/у, но речь далее пойдет не об этом. Может ли старый ЦП прописаться в абсолютно новой платформе с новым типом оперативной памяти и новыми интерфейсами? В 99% случаев нет, но в рамках данной статьи мы пог...

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

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

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

Миграция на инфраструктуру async-await в Rust img source На прошлой неделе для Rust комьюнити случилось огромное событие — вышла версия компилятора 1.39, а в месте с ней и стабилизация async-await фичи. В этом посте я постараюсь резюмировать все релевантные изменения в компиляторе и экосистеме, а также предоставить инс...

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

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

Про ИТ-бизнес и не только Всем доброго нового года! Навеяно статьей Бизнес, я люблю тебя коллеги Verovir, а также ее же статьей Уходя — уходи? Ночной разговор об увольнениях (хотя последняя заслуживает отдельного развернутого ответа). Коллега, вы в статье хорошо выделили ключевые проблемные точки, с ...

RC Машинки: Введение Всем привет, сегодня я бы хотел рассказать вам об RC Cars, машинках на радиоуправлении. Это хобби и достаточно веселое. Лично для себя я нахожу в нем хоть какую-то доли реальности. Сидеть целыми днями клепать кнопочки на Backbone и React уже стало рутиной и надо это дело ка...

[Перевод] Как была устроена графика NES Выпущенная в 1983 году домашняя консоль Nintendo Entertainment System (NES) была дешёвой, но мощной машиной, достигшей феноменального успеха. При помощи блока обработки изображений (Picture Processing Unit, PPU) система могла создавать достаточно впечатляющую по тем времена...

Самоделкин — грузин или русский? В комментариях к тексту "Советские супергерои, чешские козявки и австралийский клон" мы разговорились про лучшего друга Карандаша — Самоделкина, и я пообещал рассказать про его происхождение. Выполняю обещанное, ниже — своеобразный spin-off. Самоделкин — практически как Гом...

Из риелтора в разработчика игр 2. «Операция: Андроид» Добрый день, Хабр. Две моих предыдущих статьи (раз, два) вы приняли очень тепло и даже выдвинули в топ, поэтому и продолжение не заставило себя ждать. Всего-то полгода, не такой уж и большой срок. Для тех, кто не в курсе – меня зовут Тим, мне 30 лет, я риелтор и сейчас пыта...

[recovery mode] Что показывает вольтметр или математика розетки О чем эта статья Сегодня я ненадолго отступлю от своей обычной темы о визуальном программировании контроллеров и обращусь к теме измерений напряжения прямо в ней, в розетке! Родилась эта статья из дискуссий за чаем, когда разразился спор среди «всезнающих и всеведающих» п...

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

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

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

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

Самое высокое здание в мире… из дерева Рекордсменом стал 18-этажный небоскреб Mjøstårnet, возведенный недавно в Норвегии и достигающий высоты 85,4 м. На фоне гигантов из стекла и стали цифра может и не впечатлять, однако для инновационного деревянного строительства это большой шаг вперед и вверх — сразу на ...

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

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

Service Desk в Хоум Кредит. А что внутри?… В каждой компании, где присутствует подразделение ИТ, есть ServiceDesk, но у всех он разный. Где-то это простой helpdesk для приема обращений, где-то anykey, у нас в Хоум Кредите первая линия поддержки — ступень к многоуровневому процессу эксплуатации, а для многих сотрудник...

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

Тесты на Си без SMS и регистрации Недавно zerocost написал интересную статью «Тесты на C++ без макросов и динамической памяти», в которой рассматривается минималистический фреймворк для тестирования Си++ кода. Автору (почти) удалось избежать использования макросов для регистрации тестов, однако вместо них в ...

Как подключить галерею PhotoSwipe в WebView android Я не профессиональный разработчик, хотя и учился на программиста. Сейчас работаю системным администратором и планирую переходить в разработчики. Пишу для себя приложение, которое парсит один из популярных сайтов тематики IT и показывает статьи в нативном приложении android. ...

[Перевод] Neuralink платформа интегрированного интерфейса мозг-компьютер с тысячами каналов Примечание. 16 июля 2019г. Илон Маск презентовал технологию, которая стала одной из первых серьезных попыток введения нейроинтерфейсов в клиническую практику и имеющая реальные трансгуманистические цели в долгосрочной перспективе. Данная статья является переводом, с некото...

Архитектура Digital Workspace на платформе Citrix Cloud Введение Статья описывает возможности и архитектурные особенности облачной платформы Citrix Cloud и набора сервисов Citrix Workspace. Данные решения являются центральным элементом и основой для реализации концепции цифровых рабочих мест (digital workspaсe) от компании Citr...

Тестирование на iOS 9 и выше: не баги приложений, а фичи платформы Оксана Фадеева, инженер по обеспечению качества Redmadrobot У платформы iOS 9 и выше есть особенности, которые нужно учитывать при тестировании мобильных приложений. Некоторые из них могут ввести в заблуждение и восприниматься как дефект приложения, хотя на самом деле это ...

iOS-дайджест №7 (31 мая – 13 июня) Источник картинки: businessinsider.com Астрологи объявили неделю новостей и анонсов в мире Apple и iOS-разработки. Чтобы рассказать про все, одной статьи не хватит, поэтому посмотрим на самые интересные и на те, которым еще не было уделено должного внимания. Читать дальше →

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

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

Знакомство со статическим анализатором PVS-Studio для Java На протяжении многих лет команда PVS-Studio развивает одноименный статический анализатор. На данный момент анализатор представляет собой сложное программное решение и предоставляет возможность анализа таких языков программирования, как C, C++, C# и Java на платформах Windows...

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

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

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения Приветствую, друзья! В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня? Каждый сервис должен работать на каком-то сервере, общаясь с желез...

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

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

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

[Из песочницы] О реализации известного жанра на платформе Minecraft Целью данной статьи является помощь начинающим игровым проектам с нестандартной тематикой избежать базовых ошибок в реализации. Данная статья рассказывает о личном опыте ведения игрового стартапа в рамках Minecraft. Как всё начиналось Мои интересы во многом не совпадали с и...

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

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

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

4. Check Point Getting Started R80.20. Установка и инициализация Добро пожаловать на 4-й урок. Сегодня, мы наконец-то “пощупаем” Check Point. Естественно виртуально. В ходе урока мы выполним следующие дейсвтия: Создадим виртуальные машины; Выполним установку сервера управления (SMS) и шлюза безопасности (SG); Ознакомимся с процессом р...

Победа на PHDays 9. Делимся лайфхаками в трёх частях. Часть 2 Всем привет! Меня зовут Виталий Малкин. Я руководитель отдела анализа защищённости компании «Информзащита» и по совместительству капитан команды True0xA3. Чуть больше недели назад мы победили в одном из самых престижных соревнований белых хакеров в СНГ. В прошлой статье (есл...

Об этике на примере кодекса PMI Осторожно, тут простыня (лонгрид), которая может не понравиться многим! Я долго думал, как разделить ее на несколько, но решил на Хабре оставить целиком. И наверное, начало статьи не совсем подходит под название. Кто такой хороший руководитель? Читать дальше →

От Skype до WebRTC: как мы организовали видеосвязь через веб Видеосвязь — основной способ общения преподавателя и студента на платформе Vimbox. Мы давно отказались от Skype, перепробовали несколько сторонних решений и в итоге остановились на связке WebRTC — Janus-gateway. Некоторое время нас все устраивало, но все же некоторые негати...

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

Приложение для iOS и Android на Kotlin + Flutter UI Вступление Всем привет. Какое-то время назад, я решил делать свой проект для Android и iOS одновременно. Естественно, встал вопрос о выборе технологий. Пару недель присматривался к популярным стекам и выбрал Kotlin/Native. Поскольку я являюсь Android-разработчиком, то с Ko...

KOST: что входит в новый стек технологий для разработки облачных приложений Рассказываем о его компонентах и перспективах. / фото Gozha Net Unsplash Почему появился новый стек Существует множество стеков для разработки программного обеспечения. Один из наиболее известных — LAMP (Linux, Apache HTTP server, MySQL, PHP). На нем построен сайт «Википед...

Древности: IBM ThinkPad T40, первый беспроводной Пятнадцать лет назад, в 2003 году, беспроводной интернет из дорогостоящей узкоспециализированной технологии начал превращаться в нечто доступное всем и само собой разумеющееся. Конечно произошло это не сразу: чтобы появился Wi-Fi, нужно было провести домой в каком-то виде пр...

Vue 3 станет быстрее Одним из самых ярких событий в мире Фронтенда в этому году стала публикация репозитория Vue next — части функционала третьей версии VueJS. В этой в этой статье представлен обзор новых killer features VueJS. На момент публикации статьи репозиторий находился в статусе Pre-Alp...

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

Осторожно — ГАЗ! или Как мы делали негазированные смарт-контракты Блокчейн и смарт-контракты все еще остаются горячей темой среди разработчиков и технических специалистов, много исследований и рассуждений об их будущем и о том, куда это все движется и приведет нас. У нас в Waves Platform свой взгляд на то, какими должны быть смарт-контрак...

Угловые эффекты Добрый день, дорогой читатель! Это вторая переводная статья из цикла статей о создании физического движка авторства Chris Hecker. Если Вы ещё не ознакомились с первой, то рекомендую это сделать, т. к. всё сразу станет понятнее. Большое спасибо за поддержку первого перевода: ...

Современные устройства ввода-вывода быстрее, чем процессоры. Обзор статьи Хочу рассказать о статье "I/O Is Faster Than the CPU – Let’s Partition Resources and Eliminate (Most) OS Abstractions", опубликованной на личной странице одного из разработчиков ScyllaDB, Pekka Enberg. О ней узнал из видео. С докладом по этой статье авторы должны были высту...

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

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

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

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

Xiaomi Mi Note 10 за $439,99 в магазине Gearbest В интернет-магазине Gearbest действует очередная акция, позволяющая приобрести товар по сниженной цене. На этот раз продавец заявляет, что есть возможность сэкономить на приобретении Xiaomi Mi Note 10 в рамках флеш-распродажи и поможет в этом скидочный купон "GBXMNT10BF". И...

Новый уровень безопасности МФУ: imageRUNNER ADVANCE III С увеличением встроенных функций офисные МФУ давно вышли за рамки тривиального сканирования/печати. Сейчас они превратились в полноценные самостоятельные устройства, интегрированные в высокотехнологичные локальные и глобальные сети, связывающие пользователей и организации ...

В королевстве PWN. Препарируем классику переполнения буфера в современных условиях Для подписчиковСколько раз и в каких только контекстах не писали об уязвимости переполнения буфера! Однако в этой статье я постараюсь предоставить универсальное практическое «вступление» для энтузиастов: от существующих на данный момент механизмов безопасности компилятора GC...

Создание системы формальной верификации с нуля. Часть 1: символьная виртуальная машина на PHP и Python Формальная верификация — это проверка одной программы либо алгоритма с помощью другой. Это один из самых мощных методов, который позволяет найти в программе все уязвимости либо же доказать, что их нет. Более подробное описание формальной верификации можно увидеть на пример...

Хочешь <s>похудеть</s> учиться ИТ самостоятельно? Спроси меня как Есть мнение, с которым я часто сталкиваюсь, — учиться самостоятельно невозможно, нужны профессионалы, которые будут вас вести по этому тернистому пути — объяснять, проверять, контролировать. Попробую опровергнуть это утверждение, а для этого, как известно, достаточно привест...

[Из песочницы] Невидимый деплой монолитного приложения в продакшн на AWS. Личный опыт Я – Lead DevOps Engineer в международной SaaS-компании. Мы разрабатываем платформу для совместной работы кроссфункциональных команд. В статье поделюсь тем, как наша DevOps-команда решила проблему ежедневных серверных релизов монолитного stateful-приложения и сделала их автом...

[Перевод] Тестирование инфраструктуры как код с помощью Pulumi. Часть 2 Всем привет. Сегодня делимся с вами заключительной частью статьи «Тестирование инфраструктуры как код с помощью Pulumi», перевод которой подготовлен специально для студентов курса «DevOps практики и инструменты». Тестирование развертывания Рассмотренный стиль тестирования —...

[Из песочницы] Простой Telegram-бот на Python за 30 минут На Хабре, да и не только, про ботов рассказано уже так много, что даже слишком. Но заинтересовавшись пару недель назад данной темой, найти нормальный материал у меня так и не вышло: все статьи были либо для совсем чайников и ограничивались отправкой сообщения в ответ на сооб...

[Не] используйте CDN Практически в любой статье или инструменте для оптимизации скорости сайтов есть скромный пункт «используйте CDN». Вообще, CDN – это content delivery network или сеть доставки контента. Мы в компании «Метод Лаб» часто встречаемся с вопросами клиентов по этой теме, некоторые с...

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

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

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

Крутая функция Xiaomi Mi 9 крадет заряд аккумулятора Ядра, гигагерцы и гигабайты постепенно стали представлять все меньше интереса для пользователей и производителям смартфонов пришлось искать новые точки соприкосновения с аудиторией. Ведь если потребителя не интересует ничего, кроме стабильно работающего интерфейса, — ...

[Перевод] Стандарт WASI: запуск WebAssembly за пределами веба 27 марта мы в Mozilla объявили о начале стандартизации WASI, системного интерфейса WebAssembly (WebAssembly system interface). Зачем: разработчики начали применять WebAssembly за пределам браузера, потому что WASM обеспечивает быстрый, масштабируемый, безопасный способ запу...

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

[Из песочницы] Parse & Android: рекомендации начинающим разработчикам Аннотация В данной статье я бы хотел поделиться общими впечатлениями от использования BaaS – решения под названием Parse для разработки бэкэнда Android-приложения, рассказать о всех «подводных камнях», с которыми мне пришлось столкнуться в период разработки. Впервые эту плат...

Автоматизация задач администрирования API VMware vSphere с использованием Python В нашей компании активно используется платформа для виртуализации VMware vSphere. В ней живут тестовые среды продуктов, демонстрационные стенды, эмуляторы различных инфраструктур заказчиков и прочие не менее важные «виртуалки». Несмотря на достаточную мощность нашей инфрас...

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

Введение в контекстно-ориентированное программирование на Kotlin Это перевод статьи An introduction to context-oriented programming in Kotlin В этой статье я постараюсь описать новое явление, которое возникло как побочный результат стремительного развития языка Kotlin. Речь идет о новом подходе к проектированию архитектуры приложений и б...

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

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

Ford развернула единое виртуальное пространство для разработки автомобилей Ford начала использовать единую платформу виртуальной реальности, которая позволяет специалистам компании со всего мира сообща работать над дизайном автомобилей. Речь идёт о функции Co-Creation, разработанной Gravity Sketch совместно с Ford. Для работы над 3D-моделью автомоб...

Solar webProxy — новый шлюз веб-безопасности от «Ростелеком-Солар» Компания «Ростелеком-Солар», национальный провайдер технологий и сервисов кибербезопасности, объявила о запуске на российском рынке нового продукта Solar webProxy, относящегося к классу SWG-решений (Secure Web Gateway — шлюзы веб-безопасности). С его ...

Запускаем php скриптики через php-fpm без web сервера. Или свой FastCgi клиент (под капотом) Приветствую всех читателей "Хабра". Дисклеймер Статья получилась довольно длинная и тем кто не хочет читать предысторию, а хочет перейти сразу к сути прошу прямиком к главе "Решение" Вступление В данной статье хотелось бы рассказать о решении довольно нестандартной задачи, с...

PVS-Studio для Visual Studio Многие наши статьи посвящаются чему угодно, но только не самому инструменту PVS-Studio. А ведь мы очень много делаем, чтобы разработчикам было удобно пользоваться нашим инструментом. Но как раз это часто оказывается за кадром. Решил исправить эту ситуацию и рассказать об пл...

Структура DNS пакета Предисловие Решил как то написать снифер DNS, так сказать just for fun. Просто посмотреть какие адреса в моей системе резолвятся. Протокол старый, документации должно быть много. Много. Но все статьи очень не полные и заканчиваются, на самом интересном моменте. Да, есть rf...

Использование Liquibase для управления структурой БД в Spring Boot приложении. Часть 1 В этой статье я разберу использование утилиты Liquibase в Spring Boot приложениях для версионирования структуры реляционной БД и миграции этой структуры с одной версии на другую. В первой части разберем базовый пример, а во второй поговорим об использовании liquibase-mave-pl...

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

[Перевод] Универсальность картриджей: датчики в играх для Game Boy К концу 90-х большинство игровых домашних консолей перешли с картриджей на оптические диски. Однако большинство портативных консолей, за несколькими исключениями, никогда не переходили на диски; они продолжали работать на картриджах и постепенно мигрировали в сторону скачив...

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

Ускоряем Ansible с помощью Mitogen Ansible стал одним из самых популярных Configuration Management систем. После того как был куплен Red Hat в 2015 году число участников проекта превысило тысячи и Ansible стал наверное самым используемой системой развертывания и оркестрации. Его широкие области применения оче...

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

[Перевод] Serverless: на 15% медленнее и в восемь раз дороже Недавно я решил поэкспериментировать с API на нашем сайте CardGames.io и попробовать фреймворк Serverless. Последние несколько лет он стал горячей темой в мире технологий, а я прокрастинировал хотел поддерживать технические навыки в актуальном состоянии и попробовать что-то ...

[Из песочницы] Как разработать ещё один платформер с помощью Unity. Ещё один туториал Привет, Хабр! Под катом вас ждёт ещё одна статья, которая расскажет о том, как я поставил себе цель запрограммировать игру, основываясь на переводе статьи на Хабр под названием Паттерны дизайна уровней для 2D-игр. Статья имеет много текста (как обычного, так и исходного) и м...

Нет ТВ-сигнала: как заставить телевизор работать Снова не работает телевизор? Мы поможем это исправить. В статье мы собрали самые распространенные проблемы со сбоями ТВ-сигнала и их решения.

[Из песочницы] Github actions и кросс-платформенное построение Привет, Хабр. Это статья о том как настроить построение на всех платформах с помощью github actions. Читать дальше →

Эксперимент — от парного программирования к программированию всей командой Очень хочу поделиться с вами переводом статьи про эксперимент с моб-программированием от одного из его создателей, Вуди Зила. Это когда вся команда сразу работает за одним компьютером. Как парное программирование, только групповое. Я бывший Java-разработчик и тимлид с 11-лет...

Терминальный сервер для админа; Ни единого SSH-разрыва Если ваша работа требует держать множество SSH-сессий к разным серверам, вы наверняка знаете, как они легко ломаются при переключении на другой Wi-Fi или временной потере интернета. Но что, если я скажу вам, что все эти проблемы давно решены и можно забыть про сломанные се...

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

Свой «Чужой»: из мира фантастики в реальность Система облегчает манипуляции с грузами: стандартная версия позволяет работать с массой до 36 кг, вариант MAX — до 90 кг. Разработка Guardian XO ведется уже более 17 лет, и сообщается, что нынешнее поколение экзоскелета полностью снимает нагрузки на конечности и поясницу, по...

Objectives and Key Results: инструкция по применению Всем привет! Меня зовут Егор, я руковожу кластером App Platform в Авито. Мои команды в основном занимаются разработкой внутренних продуктов, инструментов и процессов — тем, что принято называть платформенной разработкой. Год назад я рассказывал в этом блоге, как мы внедрили ...

[Перевод] Настройка кластера HA Kubernetes на «голом железе» с GlusterFS & MetalLB. Часть 2/3 Часть 1/3 тут Привет и с возвращением! Это вторая часть статьи о настройке кластера Kubernetes на «голом железе». Ранее мы настраивали НА-кластер Kubernetes с помощью внешнего etcd, схемы «ведущий-ведущий» и балансировки нагрузки. Ну а теперь пришло время настроить дополнит...

Huawei MateBook X Pro официально представлен Официально представлен совершенно новый ноутбук Huawei MateBook X Pro, который готов покорять свою аудиторию. Начнем с того, что диагональ дисплея составляет 13,9 дюйма, что достаточно много для современного решения, а разрешение составляет 3000 на 2000 точек. То есть, это п...

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

Работаем с USB Custom HID на Android В современных Android — приложениях для взаимодействия с другими устройствами чаще всего используются беспроводные протоколы передачи данных, как например Bluetooth. В годы, когда часть устройств имеют беспроводную зарядку, сложно представить себе связку Android устройства ...

PVS-Studio ROI Время от времени нам задают вопрос, какую пользу в денежном эквиваленте получит компания от использования анализатора PVS-Studio. Мы решили оформить ответ в виде статьи и привести таблицы, которые покажут, насколько анализатор может быть полезен. Мы не можем в статье доказа...

[Перевод] 39 новых фич, которые будут доступны в Java 12 Из замечательного интервью на Хабре: «Саймон Риттер — человек, который работал над Java с самого начала и продолжает делать это в роли заместителя технического директора Azul — компании, работающей над виртуальной машиной Zing JVM и одним из лучших сборщиков мусора, C4 (Cont...

[Перевод] Sketch + Node.js: генерируем иконки для множества платформ и брендов Нет ничего проще, чем добавить иконку в проект: нужно всего лишь написать дизайнеру, он экспортирует её из Sketch и пришлет вам нужный вариант, а вы используете ее у себя в коде. Если же у вас с десяток проектов, несколько платформ и множество А/Б-тестов на дизайн, то дост...

10 новых бесплатных курсов по когнитивным сервисам и Azure Недавно мы выложили около 20 новых курсов на нашу обучающую платформу Microsoft Learn. Сегодня я расскажу и первых десяти, а немного позже выйдет статья и о второй десятке. Среди новинок: распознавание голоса с когнитивными сервисами, создание чат-ботов с QnA Maker, обработк...

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

Buildbot: сказ с примерами еще об одной системе непрерывной интеграции (картинка с официального сайта) Buildbot, как несложно догадаться из названия, является инструментом для непрерывной интеграции (continuous integration system, ci). Про него уже было несколько статей на хабре, но, с моей точки зрения, из них не очень понятны преимущества с...

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

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

Решение Veeam для бэкапа и восстановления виртуальных машин на платформе Nutanix AHV. Часть 2 Приветствую всех в новом, 2019 году! Для начала бросим взгляд назад, то есть на первую часть обзора интегрированного решения Veeam Availability for Nutanix AHV — в ней шел рассказ о том, как развернуть и настроить компоненты. Теперь можно приступить и к настройке резервног...

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

Empire ERP. Занимательная бухгалтерия: главная книга, счета, баланс В данной статье мы осуществим попытку проникновения в самое сердце "кровавого энтерпрайза" — в бухгалтерию. Вначале мы проведем исследование главной книги, счетов и баланса, выявим присущие им свойства и алгоритмы. Используем Python и технологию Test Driven Development. Здес...

Единая платформа Commvault обеспечивает защиту сервисов, приложений и данных банка УРАЛСИБ Компания Commvault объявила о завершении проекта внедрения единой платформы резервного копирования для банка УРАЛСИБ. ИТ-служба банка УРАЛСИБ сосредоточена на повышении операционной эффективности, создании надежной ...

Победа на PHDays 9. Делимся лайфхаками в трёх частях. Часть 1 Всем привет! Меня зовут Виталий Малкин. Я руководитель отдела анализа защищённости компании «Информзащита» и по совместительству капитан команды True0xA3. Этой статьей мы начинаем цикл из 3-х материалов, посвящённых нашему выступлению на PHDays IX Standoff. В этой статье мы ...

Mail.ru подводит итоги программы поиска уязвимостей в браузере Atom Старт программы был анонсирован вместе с запуском браузера Atom. Его главная особенность - повышенный уровень безопасности и усиленная защита приватности пользователей. В программе приняли участие как начинающие баг-хантеры, так и известные в России специалисты по кибербезоп...

Пишем защиту от DDoS-атак на XDP. Ядерная часть Технология eXpress Data Path (XDP) позволяет выполнить произвольную обработку трафика на интерфейсах Linux до того, как пакеты поступят в сетевой стек ядра. Применение XDP — защита от DDoS-атак (CloudFlare), сложные фильтры, сбор статистики (Netflix). Программы XDP исполняют...

[Из песочницы] IPSec VPN-соединение между MikroTik и Kerio Control Начальные параметры: Головной офис предприятия с двумя пограничными прокси Kerio Control v.9.2.9 build 3171 (за Kerio расположен свич Cisco 3550, определяющий конфигурацию локальной сети офиса). На каждом Kerio организовано по два канала с балансировкой нагрузки до ISP (...

[Перевод] Как работает kubectl exec? Прим. перев.: автор статьи — Erkan Erol, инженер из SAP — делится своим изучением механизмов функционирования команды kubectl exec, столь привычной для всех, кто работает с Kubernetes. Весь алгоритм он сопровождает листингами исходного кода Kubernetes (и связанных проектов),...

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

Huawei: Защита плоскости управления В статье рассматриваются аспекты защиты плоскости управления маршрутизаторов Huawei NE Series. Примеры приведены для NE40e, с программным обеспечением: VRP V800R008. На других типах маршрутизаторов (например NE5k) и с другой версией ПО, конфигурация может несколько отличатьс...

[Перевод] Создание ритм-игры в Unity Введение Итак, вы хотите или пытались создать ритм-игру, но игровые элементы и музыка быстро рассинхронизировались, и теперь вы не знаете, что делать. Эта статья вам в этом поможет. Я играл в ритм-игры со старшей школы и часто зависал на DDR в местном зале аркадных автомато...

От «Цветорасширителя для ZX-Spectrum» до ZX-Poly "Цветорасширитель для ZX-Spectrum" — так называлась статья, опубликованная в эхе fido7.zx.spectrum 3 августа 1997 года. Статья описывала идею решения одной из главных проблем платформы ZX-Spectrum — конфликта атрибутов (attribute clash). Публикация вызвала в то время определ...

Авиационные газотурбинные двигатели Всем привет! В этой статье я хочу рассказать о том, как работают авиационные газотурбинные двигатели (ГТД). Я постараюсь сделать это наиболее простым и понятным языком. Авиационные ГТД можно можно разделить на: турбореактивные двигатели (ТРД) двухконтурные турбореактивны...

История о том, как мы иконку PVS-Studio меняли Релиз 7.0 ознаменовал новую веху в истории анализатора PVS-Studio – теперь доступен анализ не только кода, написанного на C, C++, C#, но также и Java. Кроме этого глобального нововведения продолжают улучшаться и дорабатываться существующие механизмы анализа, добавляются ди...

Spring Boot 2 и JDK 8: Вы все еще используете аннотации @Param, @RequestParam и @PathVariable? Тогда статья для Вас Здравствуй, Хаброчитатель! Разрабатывая учебный проект по Spring Boot 2 решил поэкспериментировать с @Param в запросах Spring Data JPA, а точнее c их отсутствием: @Transactional(readOnly = true) public interface UserRepository extends JpaRepository<User, Integer> { ...

[Из песочницы] Рендеринг 3D графики с помощью OpenGL Введение Рендеринг 3D графики — непростое занятие, но крайне интересное и захватывающее. Эта статья для тех, кто только начинает знакомство с OpenGL или для тех кому интересно, как работают графические конвейеры, и что они из себя представляют. В этой статье не будет точных ...

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

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

Извлечение мастер-пароля из заблокированного менеджера паролей SafeInCloud После прочтения этой статьи мне захотелось провести исследование другого менеджера паролей на наличие похожих уязвимостей. В комментариях к статье пользователем Dark_Angel был задан вопрос: А что скажите насчет SafeInCloud? Читать дальше →

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

Энтузиаст запустил Half-Life на восьми графических процессорах 3dfx Voodoo2 Давным-давно в нашей галактике… существовало куда больше производителей дискретных графических процессоров, чем сейчас. Одним из них была компания 3dfx Interactive, и несмотря на то, что самой компании уже давно нет, энтузиасты всё ещё продолжают экспериментировать с её граф...

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

[Из песочницы] Хороший, плохой, злой — тестирование в проекте новичков Предисловие: в университете было получено задание — собрать scrum команду, выбрать проект и работать над ним в течении семестра. Наша команда выбрала разработку веб-приложения (react + flask). В этой статье я постараюсь рассказать, какими тесты должны были быть, и проанализи...

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

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

IBM X-Force Red. Как красная команда IBM проверяет организации на прочность Для подписчиковУ моего сына как-то спросили в школе: «Кем работает твоя мама?» Он сказал — медсестрой. А когда спросили про папу, он ответил: «Мой папа крадет вещи, но это нормально, потому что ему за это платят!» Как видите, работать в красной команде — это не самая обыкнов...

Германия. Advanced Immigration guide Историй переезда в Германию достаточно много. Однако большинство из них достаточно поверхностны, так как пишутся обычно в первые несколько месяцев после переезда и раскрывают самые простые вещи. В этой статье не будет информации о том сколько в Германии стоит десяток яиц, ...

Универсальный пул У нас есть ArrayPool для переиспользования массивов. Работает это так: взяли массив определенной длинны что то с ним поделали и положили обратно. Нужно это для больших объектов которые по логике программы долго не должны храниться. В предыдущей статье описана эта проблема. ...

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

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

Microsoft анонсировала инициативу Game Stack для разработчиков игр Game Stack объединит под собой платформы, инструменты и сервисы Miсrosoft для создания игр, среди которых Azure, PlayFab, DirectX, Visual Studio, Xbox Live, App Center и Havok, в единую экосистему.Облачная платформа Microsoft Azure выступает в качестве основы для Game Stack,...

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

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

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

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

Zabbix: LLD-мониторинг SIM-карт Yeastar TG Несколько месяцев назад я обзавелся GSM-шлюзом Yeastar TG200. Оборудование само по себе хорошее, чего не сказать о яичном операторе, который периодически подкладывает свинью. Вот поэтому и появилась необходимость иметь актуальную информацию о состоянии SIM-ок и реагировать...

Dassault Systemes поможет Boom Supersonic ускорить разработку самого быстрого коммерческого авиалайнера в истории Компания Dassault Systèmes объявила о партнерстве с компанией Boom Supersonic. В рамках сотрудничества Dassault Systèmes развернет платформу 3DEXPERIENCE, которая позволит ускорить проектирование и разработку авиалайнера Overture. Ожидается, что Overture б...

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

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

Гендиректор Porsche рассказал, как iPhone повлиял на автомобили Автопроизводители выбирают CarPlay, потому что это выгоднее с точки зрения бизнеса Выход iPhone кардинальным образом изменил не одну отрасль. Отчасти из-за него рынок смартфонов стал состоять почти из одних аппаратов с сенсорными экранами, из-за него многие разработчики ПО д...

Понимание Q-learning, проблема «Прогулка по скале» Это перевод статьи Understanding Q-Learning, the Cliff Walking problem Lucas Vazquez В последнем посте мы представили проблему «Прогулка по скале» и остановились на страшном алгоритме, который не имел смысла. На этот раз мы раскроем секреты этого серого ящика и увидим, чт...

[Из песочницы] Немного о стандартах космической связи Спутник Метеор М1 Источник: vladtime.ru Введение Эксплуатация космической техники невозможна без радиосвязи, и в этой статье я постараюсь объяснить основные идеи, которые легли в фундамент стандартов, разработанных Международным Консультативным Комитетом по космическим сис...

[Из песочницы] OS1: примитивное ядро на Rust для x86 Я решил написать статью, а если получится — то и серию статей, чтобы поделиться своим опытом самостоятельного исследования как устройства Bare Bone x86, так и организации операционных систем. На данный момент мою поделку нельзя назвать даже операционной системой — это неболь...

Как выдержать повышенные нагрузки на систему: рассказываем о масштабной подготовке к Черной Пятнице Привет, Хабр! В 2017 году во время Черной Пятницы нагрузки выросли почти в полтора раза, и наши сервера находились на пределе возможностей. За год количество клиентов значительно выросло, и стало понятно, что без тщательной предварительной подготовки платформа может просто...

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

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

Бесшовная (почти) миграция между мажорными релизами PostgreSQL с помощью логической репликации У нас в True Engineering на одном проекте назрела необходимость в смене версии PostgreSQL с 9.6 на 11.1. Зачем? База данных на проекте уже объемом 1,5 Tb и растет. Перформанс – одно из основных требований к системе. А сама структура данных эволюционирует: добавляются новые...

Книга «Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство» Больше года я работал над книгой «Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство», и вот теперь эта работа завершена, а книга издана и доступна в Литресе. Надеюсь, моя книга поможет быстро приступить к созданию смарт-контактов Solidity ...

Монтируем iOS под OSX с помощью ifuse На днях столкнулся с задачей примонтировать в OSX 10.14 iPad в качестве внешнего диска, с возможностью осуществлять файловые операции из консоли. В интернете я нашел довольно много инструкций как это сделать с помощью файловой системы ifuse. К сожалению с iOS 12 ничего не вы...

[Перевод] Автоматизация библиотек на Typescript Хочу сразу оговориться: эта статья не дает готового к использованию рецепта. Это скорее моя история путешествия в мир Typescript и NodeJS, а также результаты моих экспериментов. Тем не менее, в конце статьи будет ссылка на GitLab репозиторий, который вы можете посмотреть, и ...

Обзор современных протоколов в системах промавтоматики В прошлой публикации мы рассказали о том, как работают шины и протоколы в промышленной автоматизации. В этот раз сфокусируемся на современных рабочих решениях: посмотрим, какие протоколы используются в системах по всему миру. Рассмотрим технологии немецких компаний Beckhof...

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

Univention Corporate Server (UCS) — установка простого и удобного LDAP сервера с web-панелью и его связка с Nextcloud Рано или поздно на любом маленьком или среднем предприятии возникает задача по созданию единого центра авторизации пользователей в многочисленных сервисах и порталах компании. Среди кандидатов на такой центр авторизации сразу приходит в голову Microsoft Active Directory ил...

Представлена открытая экосистема высокопроизводительных мини-ПК на процессорах AMD Ryzen Embedded V1000 и R1000 Компания AMD объявила о создании открытой экосистемы для OEM-производителей, предназначенной для создания высокопроизводительных мини-ПК на процессорах AMD Ryzen Embedded V1000 и R1000. Первыми партнерами AMD по указанной экосистеме названы компании ASRock Industrial, ...

Bittrex International станет платформой для IEO Vodi X Vodi X и Bittrex International сообщили о предстоящем размещении первичного биржевого предложения (IEO) токенов Vodi X на платформе торговли цифровыми активами Bittrex International. Привлеченные в результате средства помогут команде Vodi X оптимизировать свою...

9 типовых проблем в сети, которые можно обнаружить с помощью анализа NetFlow (на примере Flowmon) Относительно недавно мы публиковали статью “Сетевой мониторинг и выявления аномальной сетевой активности с помощью решений Flowmon Networks”. Там мы кратко рассмотрели возможности этого продукта и процесс установки. Неожиданно для нас, после статьи и вебинара, поступило бо...

[Перевод] Профессиональная контейнеризация Node.js-приложений с помощью Docker Автор материала, перевод которого мы публикуем сегодня, работает DevOps-инженером. Он говорит, что ему приходится пользоваться Docker. В частности, эта платформа для управления контейнерами применяется на разных этапах жизненного цикла Node.js-приложений. Использование Docke...

Крупные украинские компании хотят создать единый центр по обмену киберугрозами, который поможет объединить усилия и ловить хакеров вместе Члены украинской Ассоциации руководителей подразделений IT-безопасности CISO (Chief Information Security Officer) активно обсуждают создание в Украине отдельного центра по обмену информацией о киберугрозах. В нашей стране есть два органа, которые должны заниматься информиров...

Дополнительные программные средства безопасности для NAS Цикл статей назван "Построение защищённого NAS". Поэтому в данной статье будет рассматриваться повышение уровня защищённости. Также, будут описаны и те инструменты, которые я не использовал, но возможно применить. Читать дальше →

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

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

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

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

Новые GSM шлюзы от OpenVox Asterisk — потрясающий конструктор. Хотите построить небольшую АТС для бизнеса? Берем Raspberry PI, накатываем готовый образ на флешку, 10 минут, и вы уже вбиваете логин с паролем на ваш SIP телефон и делаете первый звонок. Хотите нечто большее? Ставим бесплатный и навороч...

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

Платформа Adobe Shockwave закрыта Как и было объявлено ранее, вчера компания Adobe закрыла платформу Shockwave. Теперь ссылки, которые вели на страницу загрузки Shockwave Player, ведут на страницу со статьей «End of Life of Adobe Shockwave». Компания Adobe объясняет решение отказаться от му...

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

«Мамкины хакеры» на официальной работе: чем занимаются пентестеры «Пентестер» — слово вообще-то не русское, заимствованное. Что приходит на ум людям не из ИТ, боюсь представить. Поэтому мы себя «на Руси» гордо зовём «специалисты по тестированию на проникновение». Что ещё за «проникновение» и зачем его нужно тестировать? В этой статье я п...

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

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

Представляем InterSystems API Manager (+ вебинар) Недавно мы выпустили InterSystems API Manager (IAM) — новый компонент InterSystems IRIS Data Platform, обеспечивающий наблюдение, контроль и управление трафиком в/из web API в рамках IT-инфраструктуры. В этой статье я покажу как настраивать IAM и продемонстрирую некоторые из...

Google выпускает криптографический ключ на USB-C. На что он способен? Обеспечение «цифровой безопасности» крайне важно в наши дни В последние годы Google является одним из ключевых игроков в разработке самых разных технологий и стандартов, связанных с двухфакторной аутентификацией (2FA). Помимо того, что вы можете использовать свои у...

[Из песочницы] Phoenix LiveView: когда вам больше не нужен JavaScript* * для создания динамической страницы Не так давно 12.12.2018 был анонсирован выход новой библиотеки для фанатов phoenix framework под названием Phoenix LiveView. Я бы хотел поделиться с вами впечатлениями от ее использования и phoenix в целом, а в следующей статье попробова...

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

Сосчитаем агентов «Ревизор» Не секрет, что за контролем блокировок по списку запрещённой информации в России следит автоматизированная система «Ревизор». Как это работает неплохо написано вот в этой статье на Habr, картинка оттуда же: Непосредственно у провайдера устанавливается модуль «Агент Ревизо...

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

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

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

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

[Из песочницы] Настройка поиска Sphinx для интернет-магазина Информации по Sphinx не так много, как хотелось бы. Лишняя статья не помешает. Первые шаги в освоении Sphinx мне помогли сделать статьи Создание ознакомительного поискового движка на Sphinx + php и Пример Sphinx поиска на реальном проекте — магазин автозапчастей Tecdoc Совет...

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

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

Физические безумства Добрый день, уважаемый читатель! Я, начинающий Java-программист, долгое время не мог освоиться с библиотекой Box2D. Во-первых, из-за того, что она написана для C++, и по ней нет документации, а синтаксис Си я не знаю. Во-вторых, из-за того, что подробные уроки по этой библио...

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

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

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

[recovery mode] Обзор платформы UserGate Всем привет! Мы продолжаем цикл статей, посвященных тематике комплексной ИТ- интеграции. И сегодня мы хотим поговорить об одной из отечественных разработок, которую мы как интеграторы можем предложить нашим заказчикам для решения задачи обеспечения безопасности периметра ...

"МойОфис" сформировал экосистему В МойОфис включены 13 коммерческих продуктов: "МойОфис Профессиональный", "МойОфис Стандартный", "МойОфис Образование", "МойОфис Частное облако", "МойОфис Текст", "МойОфис Таблица", "МойОфис Почта", "МойОфис Хранилище", "МойОфис КСЗ", "МойОфис SDK", "МойОфис Шрифты", "МойО...

Такая боль, такая боль, сервис на аутсорсе 1:0 Мы делаем самую лучшую в России и ближнем зарубежье систему обнаружения заимствований. В идеальном мире мы бы занимались только разработкой и развитием системы. Но, увы, Антиплагиат работает не в вакууме, и для того, чтобы нашим пользователям было удобно и комфортно использо...

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

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

ML.NET: впечатления от Model Builder и не только Доброго времени суток и мое почтение, читатели Хабра! Предыстория У нас на работе принято обмениваться интересными находками в командах разработки. На очередной встрече, обсуждая будущее .NET и .NET 5 в частности, мы с коллегами заострили внимание на видении унифицированный ...

Valve рассказала о планах по развитию Steam на 2019 год Вчера на официальном блоге Steam появилась довольно большая публикация об итогах 2018 года. Представители компании Valve рассказали о своих достижениях, которые действительно впечатляют. Например, платформа уже преодолела рубеж в 30 тыс. игровых проектов (это без учёта DLC и...

О сравнении форматов хранения в Hadoop: начнем с ORC В Hadoop входят продукты, которые могут работать с файлами разных форматов. Я неоднократно искал, читал и думал над тем — какой же формат лучше. Относительно случайно столкнувшись с форматом ORC, заинтересовался, почитал (и даже чуть покодил) и вот что понял — сравнивать фор...

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

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

Автоматизация Для Самых Маленьких. Часть 1.1. Основы виртуализации Предыдущая статья рассматривала архитектуру виртуализированной сети, underlay-overlay, путь пакета между VM и прочее. Роман Горге вдохновился ею и решил написать обзорный выпуск о виртуализации вообще. В данной статье мы затронем (или попытаемся затронуть) вопросы: а как с...

Xiaomi подтвердила. Третье поколение игрового смартфона Black Shark работает на Snapdragon 855 Компания Xiaomi уже подтвердила существование игрового смартфона Black Shark третьего поколения. Теперь один из её топ-менеджеров подтвердил одну из ключевых характеристик будущей новинки.  Главный инженер Xiaomi Ван Тен Томас (Wang Teng Thomas), в социальной сети...

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

[Из песочницы] Sonoff Basic прошивка через Raspberry Pi Эта инструкция не претендует на новизну. Приведенное тут вполне гуглится (правда на английском языке), но я долго искал с чего начать и решил помочь тем, кто встает на путь общения с Sonoff. Обзоров Sonoff Basic в интернете много в том числе на русском языке, также есть ст...

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

Nextcloud внутри, а снаружи OpenLiteSpeed: настраиваем обратное проксирование Как настроить OpenLiteSpeed на обратное проксирование в Nextcloud, находящийся во внутренней сети? Удивительно, но поиск на Хабре по запросу OpenLiteSpeed не даёт ничего! Спешу исправить эту несправедливость, ведь LSWS – достойный веб-сервер. Я люблю его за скорость и модный...

Начался крупнейший блокчейн-проект в банковской отрасли HSBC сообщила, что платформа компании Digital Vault предоставит инвесторам возможность отслеживать свои активы в режиме реального времени. Записи о так называемых частных размещениях обычно хранятся на бумаге и не стандартизированы, что делает доступ к ним сложным и трудоемк...

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

Что нам стоит CDN построить? Привет Хабр! В этой статье мы будем строить свой CDN. Почему не воспользоваться готовыми решениями? Потому что сайт автора полностью статический, сделанный на Jekyll, с большими картинками, которые нужно отдавать максимально быстро. Сервер не должен быть кэширующим, он долже...

[Перевод] Распознавание эмоций с помощью сверточной нейронной сети Распознавание эмоций всегда было захватывающей задачей для ученых. В последнее время я работаю над экспериментальным SER-проектом (Speech Emotion Recognition), чтобы понять потенциал этой технологии – для этого я отобрал наиболее популярные репозитории на Github и сделал их...

Google добавила в Android 10 защиту от повреждений из-за перегрева и влаги Перегрев и влага — главные враги смартфона В Android много разных механизмов. Одни блокируют фоновые процессы, чтобы сэкономить заряд аккумулятора, другие проверяют смартфон на вирусы, а третьи предупреждают об опасности физических повреждений. Но если в первых двух An...

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

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

У всех горит от эффективности В прошлом выпуске "Цинкового прода" мы обсуждали три статьи про эффективность различных процессов. Про то "Как Безос PowerPoint отключил", "Владелец одной компании заставляет жить по 5 часов в день без отвлечений" и "Асинхронная коммуникация дуистов".Эта статья является комп...

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

Контент-маркетинг для бизнеса: Хабрасеминар #6 и его основные тезисы Есть такая хорошая традиция. Каждые полгода контент-студия Хабра практически в полном составе выходит из онлайн-сумрака и в уютном зале рассказывает что-нибудь интересное. Да еще и других рассказчиков на это подбивает. 28 марта мы проделали это в шестой раз, собрав аудиторию...

[Перевод] Настало время сделать новый Windows Terminal profiles.json Я говорил об этом в течение нескольких месяцев, но если вы не слышали, вышел новый Windows Terminal. Вы можете скачать его из Windows Store и сразу же начать использовать. Все бесплатно и open source. На момент написания этой статьи Windows Terminal где-то около версии 0.5....

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

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

Xavier Noria о Rails 6, консалтинге и не только Уже в эту субботу встречаемся со всеми рубистами на главной конференции, посвященной этой технологии — RubyRussia 2019. 28 сентября совсем близко, а в этом интервью вопросы для Xavier Noria подготовил разработчик компании Evrone Павел Аргентов, а помогли ему студенты и препо...

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

[Из песочницы] Трехмерное моделирование в современном мире Сегодня я расскажу вам о том, что такое 3D-моделирование, каким оно бывает, где его применяют и с чем его едят. Эта статья в первую очередь ориентирована на тех, кто только краем уха слышал, что такое 3D-моделирование, или только пробует свои силы в этом. Поэтому буду объясн...

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

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

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

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

Google: Huawei Mate 30 не получит Google Play и лицензию на Android Что Huawei будет делать без Android? Да то же самое, что и раньше Не всегда наши желания совпадают с нашими возможностями. Поэтому надежда Huawei на продолжение использования Android и сервисов Google в своих смартфонах была довольно опрометчивой, несмотря на то что мало кто...

[recovery mode] Как учиться с помощью машинного обучения у экспертов в Dota 2 В предыдущей статье от Питерской Вышки мы показывали, как при помощи машинного обучения можно искать баги в программном коде. В этом посте расскажем о том, как мы вместе с JetBrains Research пытаемся использовать один из самых интересных, современных и быстроразвивающихся ра...

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

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

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

OSINT на платформе Telegram & наркогео_чаты Telegram OSINT на платформе Telegram В данной статье поделюсь с вами Telegram-ботами, которые на раз-два-три предоставляют ценную информацию о запрашиваем объекте в поисках «Сиболы», а так же упомяну тему гео_чатов. Это уже неотвратимый факт, что «вся» IT-тусовка резвится в Telegr...

Хотите запускать консольные игры на Android? GeForce Now поможет Чтобы запускать на смартфоне консольные игры, совершенно необязательно покупать саму консоль Идея запускать консольные игры на смартфонах уже давно не выходит из разума разработчиков. Кажется, ещё немного и железо мобильных устройств достигнет такого уровня, когда сможет без...

Создатели процессоров Apple хотят конкурировать с Intel и AMD Трое бывших высокопоставленных сотрудников Apple, занимавшихся разработкой и выпуском микросхем для смартфонов iPhone, основали в начале этого года компанию NUVIA. До недавнего времени о ней практически ничего не было известно. Однако по новым данным, NUVIA разрабатывае...

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

Представлен мини-ПК ASRock 4x4 BOX-R1000 на платформе AMD Ryzen Embedded R Компания ASRock выпустила новый мини-ПК ASRock 4x4 BOX-R1000, главной особенностью которого стала платформа AMD Ryzen Embedded серии R. Подробнее об этом читайте на THG.ru.

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

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

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

Прикручиваем ngx-translate в Angular приложение. Практическое пошаговое руководство Практическая пошаговая инструкция как прикрутить динамическую локализацию (возможность выбора языков) в веб приложении на Angular 4+ используя @ngx-translate/core. В принципе можно найти публикации на подобную тему, может быть достаточно самой документации этой библиотеки, н...

[recovery mode] Облачная электронная подпись в России и мире Добрый день, дорогой читатель! Я некоторое время активно следил за обновлениями и новостями программы «Цифровая экономика». С точки зрения внутреннего сотрудника системы ЕГАИС, конечно, процесс на десятилетия. И с точки зрения разработки, и с точки зрения тестирования, откат...

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

MU-MIMO: один из алгоритмов реализации Предисловие В качестве дополнения к моей недавней статье хотелось бы также поговорить о теме MU (Multi User) MIMO. Есть у мною уже упомянутого профессора Хаардта одна очень известная статья, где он вместе со своими коллегами предлагает алгоритм разделения пользователей по ни...

Создаем отдел джунов в помощь основным командам, используя лишь Slack, Jira и синюю изоленту Почти вся команда разработки Skyeng, состоящая из более чем 100 человек, работает удаленно и требования к специалистам всегда были высоки: мы искали синьоров, fullstack-девелоперов и мидлов. Но в начале 2019 года мы впервые наняли трех джуниоров. Сделано это было по нескол...

[Из песочницы] Sourcery для автоматического конвертирования в структуры объектов Realm В интернете, да и даже на Хабре, есть куча статей о том, как работать с Realm. Эта база данных достаточно удобная и требует минимальных усилий для написания кода, если ей уметь пользоваться. В этой статье будет описан метод работы, к которому пришел я. Читать дальше →

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

Кто круче в «светофорных гонках»: Блогер сравнил Geely Atlas 2.4 и Geely Atlas 1.8 turbo Блогер взял Geely Atlas 2.4 и Geely Atlas 1.8 turbo и проверил, какой из «китайцев» более резво гоняет по городу. После двух тестовых заездов ведущий канала Dizzlike Channel сообщил, что в первый раз кроссоверы стартовали практически вровень, хотя позже турбированный «Атлас...

Управляем Windows Server из Windows Admin Center В данной статье мы продолжаем рассказывать про работу с Windows Server Core 2019. В прошлых постах мы рассказали как готовим клиентские виртуальные машины на примере нашего нового тарифа VDS Ultralight с Server Core за 99 рублей. Затем показали как работать с Windows Server ...

Безопасность Android: 0,04% загрузок из Google Play вредоносное ПО Мобильная операционная система от Google на протяжении 10 лет борется с проблемами безопасности. Более 2 миллиардов устройств по всему миру работает под управлением Android, поэтому разработчикам приходится активнее работать над решениями для защиты пользователей. Google вып...

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

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

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

10 верстальщиков на 30 команд. Вы рехнулись? Всем привет! Меня зовут Костя, и я руковожу отделом верстки в компании Wrike. В нашем отделе сейчас работает 10 человек, и все эти ребята пришли в компанию в разное время, у них различный опыт и задачи в отдельных командах. При этом все сотрудники — прекрасные специалисты, к...

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

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

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

[Из песочницы] Как я боролся с Shared Element Transition и написал свою первую opensource библиотeку Нет повести печальнее на свете, чем повесть о ViewPager’e и SET’e Хочется предупредить, что автор ‒ новичок андроид, поэтому статья содержит столько технических неточностей, что вас, скорее, нужно предупредить о том, что в статье могут встретиться технически достоверные...

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

TikTok дала практические советы о том, как стать звездой Одна из миссий платформы — поддерживать творчество во всех его проявлениях. Поэтому нет ничего удивительного в том, что множество людей по всему миру стали популярными именно благодаря TikTok. Например, телеканал BBC запускает шоу, в котором ведущей будет 20-летняя Амалия Г...

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

5 вещей, которые чаще всего не понимают новички в JavaScript Всем привет! В конце сентября в OTUS стартует новый поток курса «Fullstack разработчик JavaScript». В преддверии начала занятий хотим поделиться с вами авторской статьей, подготовленной специально для студентов курса. Автор статьи: Павел Якупов Превью. Хочу сразу отмети...

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

Чему Apple научила Siri в iOS 13: 5 главных нововведений Презентация, которую Apple провела в рамках первого дня конференции WWDC’19, стала одним из самых богатых на новинки мероприятием за последнее время. Компания успела рассказать о потрясающих аппаратных продуктах, а также о множестве нововведений, которые нам предстоит увиде...

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

Ударопрочный планшет Galaxy Tab Active 2 Samsung выпустила Galaxy Tab Active 2. Сверхпрочный планшет от Samsung работает на платформе Android и сертифицирован практически всеми сертифицирующими организациями, которые отвечают за долговечность гаджетов. Тем не менее, это довольно устаревший продукт, который был ...

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

ShIoTiny и окружающий мир: аналоговые датчики или АЦП для самых маленьких Основные тезисы или о чем эта статья Продолжение серии статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. Ключевой особенностью данного контроллера является возможность его программирования путем рисования программы в браузере. В данной статье о...

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

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

Мультимедиа центр «Kodi» и Yocto Project Введение в Yocto Project Yocto Project — это совместный Open Source проект для упрощения разработки дистрибутивов для встраиваемых систем. Yocto содержит большое количество шаблонов, метаданных и инструментальных средств сборки. В Yocto Project вы можете подключить большо...

Анимационный граф состояний Привет! Мы тут в Playrix решили сделать свой Unity3D. А там есть Animator. В этой статье я  расскажу, как мы сделали его у себя и как он работает. Читать дальше →

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

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

Xamarin.Forms — простой пример Host-based Card Emulation В этой статье будем реализовывать так называемую Host-based Card Emulation (HCE, Эмуляция банковской карты на телефоне). В сети много подробных описаний этой технологии, здесь я сделал акцент именно на получении работающих приложений эмулятора и ридера и решении ряда практич...

В браузере Google Chrome обнаружена еще одна уязвимость Браузер Google Chrome имеет еще одну уязвимость У известности и всенародной любви есть и обратная сторона. Скажем, самый популярный на сегодняшний день браузер Google Chrome, по всей видимости, имеет довольно серьезную уязвимость, которая позволяет хакерам заражать устройств...

Предварительный обзор AOC Agon AG493UCX. Широкий формат для геймера Сегодня мы поговорим о достаточно интересном мониторе, который может и не станет лучшим на рынке, но внимания явно заслуживает. Все же разработчики постарались сделать его интересным, необычным и стильным, а нам, геймерам, большего и не нужно. Итак, давайте смотреть, что же ...

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

[Перевод] Spring Boot 2: что нового? От переводчика: несмотря на то, что уже прошел год, вопросы о том что же нового дал нам 2-ой Boot не заканчиваются. Писать такой контент с нуля — затея не самая умная. Поэтому решили перевести статью, которая нам кажется наиболее локаничной и при этом достаточно полной. Рели...

ДИСТРИБУЦИЯ (16.07 – 15.08.2019) Платформа Mail.ru Cloud Solutions и дистрибьютор ПО MONT начинают сотрудничество, благодаря которому облачная масштабируемая платформа Mail.ru Cloud Solutions (MCS) станет доступна 2000 партнеров MONT по всей России...

Работа не волк, часть 2. Пройти босса и выжить на испытательном сроке Новая работа — маленькая (а иногда и не очень) новая жизнь. Самое главное это начать её правильно, чтобы верный старт стал началом отличного пути. После того, как вы прошли HR-а, остаётся два важных шага: пройти собеседование с руководителем и удачно завершить испытательный ...

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

Сбербанк начинает сотрудничество с NVIDIA в области искусственного интеллекта Соглашение было подписано Давидом Рафаловским, исполнительным вице-президентом Сбербанка, руководителем блока "Технологии" и Яппом Зюйдервельдом (Jaap Zuiderveld), вице-президентом NVIDIA в регионе Европа, Ближний Восток и Индия, на Петербургском международном экон...

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

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

Intel на Mobile World Congress 2019 На выставке MWC 2019 компания Intel представила новейшие разработки для сетей 5G и рассказала о том, как инженеры компании создают технологическую основу для обработки, перемещения и хранения данных в эпоху 5G. На мероприятии было сделано несколько крупных анонсов, которые п...

Samsung готовится выпускать SoC для очков Facebook с дополненной реальностью Южнокорейское издание ETNews сообщило, что компании Samsung Electronics и Facebook с начала этого года плотно сотрудничают над проектом по созданию очков дополненной реальности. Архитектура SoC и проект в целом создаются специалистами обеих компаний и, возможно, бывшими инже...

Обработка системных вызовов посредством LD_PRELOAD с единой точкой входа Делая пере-реализацию QInst на LLVM, я столкнулся с такой проблемой: QEMU в режиме эмуляции одного процесса естественным образом перехватывает все «гостевые» системные вызовы. В итоге плагин инструментации имеет единую точку входа для их предобработки, где можно по номерам S...

10. Check Point Getting Started R80.20. Identity Awareness Добро пожаловать на юбилейный — 10-й урок. И сегодня мы поговорим о еще одном блейде Check Point — Identity Awareness. Еще в самом начале, при описании NGFW, мы определили, что для него обязательна возможность регулирования доступа на основе учетных записей, а не IP-адресо...

Минтруд, ПФР и ФСС могут обзавестись единой цифровой платформой Главная цель проекта — сделать социальные услуги удобнее за счет цифровизации.

Как стать более востребованным специалистом в сфере Data Science в 2019 Заголовок этой статьи может показаться немного странным. И вправду: если вы работаете в сфере Data Science в 2019, вы уже востребованы. Спрос на специалистов в этой области неуклонно растет: на момент написания этой статьи, на LinkedIn размещено 144,527 вакансий с ключевым с...

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

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