[Перевод] Самые популярные Node.js-фреймворки 2018 года

Сегодня мы публикуем перевод материала, автор которого хочет рассказать о самых популярных в наши дни фреймворках для Node.js. В этот список входят Sails.js, Hapi.js, NestJS, LoopBack, Derby.js, Mean.io и Total.js.


Читать дальше →
[Перевод] Самые популярные Node.js-фреймворки 2018 года
Source: habrahabr

[Из песочницы] Musical box and rotary encoder on FPGA board

Introduction

We are the first year students studying Computer Science in Innopolis University and we would like to share our experience in developing a Verilog program to create the coolest (well, at least, the loudest) rotary encoder ever on an FPGA board.

In this article, you will find a wonderful story about our project, the hardware, software we used and some background theory regarding rotary encoder and creating sounds in FPGA’s buzzer. Finally, we will provide a link to a github repository where a reader can access the source code. We hope you will like the project and it will inspire you to make something similar.
So, let’s start!

Hardware and Software

Читать дальше →
[Из песочницы] Musical box and rotary encoder on FPGA board
Source: habrahabr

Лайфхаки руководителя проектов

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

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

История защиты персональных данных: как появился GDPR

С момента вступления в силу 25 мая 2018 года европейского регламента по защите персональных данных (General Data Protection Regulation – GDPR) прошло уже 6 месяцев. Этот закон распространяет свое действие в том числе и на территорию Российской Федерации, но лишь косвенно и далеко не всегда. Подробности о территориальном применении GDPR можно узнать из недавнего Гайдлайна европейского совета по защите данных (European Data Protection Board).

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

Как появился GDPR и откуда вообще взялась необходимость в приватности данных? Чтобы разобраться в этом вопросе, нужно обратиться к истории развития защиты персональных данных.
Читать дальше →
История защиты персональных данных: как появился GDPR
Source: habrahabr

Ceph. Анатомия катастрофы

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

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

Далее вы найдете видео и текстовую версию одного из лучших докладов DevOpsConf Russia 2018.

Читать дальше →
Ceph. Анатомия катастрофы
Source: habrahabr

[Из песочницы] Исследование безопасности систем оплаты парковки

В этой статье я хочу рассказать о безопасности систем автоматизированной оплаты парковки. Приблизительно таких, как на этой картинке.

image

При въезде выдается парковочный талон, при выезде он засовывается обратно в терминал. В основном, талоны бывают двух типов: бумажные со штрихкодом/QR-кодом и пластиковые бесконтактные карты, о последних и пойдет речь.
Читать дальше →
[Из песочницы] Исследование безопасности систем оплаты парковки
Source: habrahabr

Ещё один dsl на Kotlin или как я печатал PDF из react

Нельзя просто взять и распечатать страницу написанную на React: есть разделители страниц, поля для ввода. Кроме того, хочется один раз написать рендеринг, чтобы он генерил как ReactDom, так и обычный HTML, который можно сконвертить в PDF.

Самое сложное, что у React свой dsl, а у html свой. Как решить эту проблему? Написать ещё один!

Чуть не забыл, всё это будет написано на Kotlin, так что, на самом деле, это статья о Kotlin dsl.
Читать дальше →
Ещё один dsl на Kotlin или как я печатал PDF из react
Source: habrahabr

[Из песочницы] Как выруливать с legacy code, когда проект нужно было на вчера

Привет. Меня зовут Иван Мельничук, я Head of Development Department в украинской IT-компании. В публикации хочу поделиться личными профессиональными подходами относительно решения вопроса legacy code в условиях стремительного развития проекта и рассказать о приемах, к которым прибегает наша команда в случаях “когда фичи нужно сдавать “на вчера”.

Разбираемся с проектом

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

image

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

Примерно так же “ведет” себя легаси. Поэтому работа программиста, который взялся за задачу модернизировать и “вдохнуть вторую жизнь” в проект, должна быть в некой степени ювелирной. Большинство программистов пытаются избегать и вообще “спрыгнуть с темы” технического долга. Даже составил хит-парад самых распространенных цитат, которые приходилось слышать от программистов, оказавшихся в условиях legacy:
Читать дальше →
[Из песочницы] Как выруливать с legacy code, когда проект нужно было на вчера
Source: habrahabr

Доступ к сетям сигнализации SS7 через радиоподсистему – теперь это возможно

Изображение: Pexels

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

Однако на практике в проектах по мониторингу безопасности мы видим, что злоумышленники могут иметь подключение к сети SS7 в недрах одного оператора годами. Более того, злоумышленники не дожидаются, когда их подключение обнаружат и заблокируют в одном операторе-источнике, они параллельно ищут (и находят) подключения в других операторах, и могут работать параллельно по одним целям сразу из нескольких мест. Читать дальше →
Доступ к сетям сигнализации SS7 через радиоподсистему – теперь это возможно
Source: habrahabr

[Перевод] Его ворсейшество из 11 полигонов, ничего общего с настоящим

Если вы умеете создавать реалистичное окружение, вроде реки из предыдущего материала, это круто. Но когда вы ограничены во времени и ресурсах, то лучше заняться механиками и геймплеем. А на прототипе окружение можно сделать и проще.

Поэтому, да, ковер из всего 11 полигонов. Просто, но изящно. Под катом перевод небольшого гайда. Читать дальше →
[Перевод] Его ворсейшество из 11 полигонов, ничего общего с настоящим
Source: habrahabr