» Материалы за Май 2019 года

 

Победа на PHDays 9. Делимся лайфхаками в трёх частях. Часть 2

Автор: admin от 31-05-2019, 22:20, посмотрело: 44

Всем привет! Меня зовут Виталий Малкин. Я руководитель отдела анализа защищённости компании «Информзащита» и по совместительству капитан команды True0xA3. Чуть больше недели назад мы победили в одном из самых престижных соревнований белых хакеров в СНГ. В прошлой статье (если вы пропустили её, можно почитать тут) мы рассказали о важности предварительной подготовки. В этой — я расскажу о том, что происходило непосредственно на самих соревнованиях, объясню почему иногда важно вносить коррективы в уже существующие планы по ходу игры и почему, на мой взгляд, ни один из защищаемых офисов не был взломан.

Категория: Информационная безопасность

 

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

Автор: admin от 31-05-2019, 20:10, посмотрело: 35

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


На прошедшем PHDays 9 мы проводили конкурс по взлому завода по перекачке газа Industrial Ninja. На площадке было три стенда, эмулирующих индустриальный процесс: под большим давлением в воздушный шар закачивался воздух. У каждого стенда был свой уровень сложности (по степени защиты): новичок, бывалый и ниндзя. При этом оборудование и технологический процесс не различались.



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

Категория: Информационная безопасность

 

Клиент: — Сколько стоит копия Facebook?

Автор: admin от 31-05-2019, 19:00, посмотрело: 35

Клиент: — Сколько стоит копия Facebook?



«Сколько стоит сделать копию Facebook (Avito, Яндекс.Такси, fl.ru...)?» — один из самых популярных вопросов клиентов, на который мы сегодня дадим развернутый ответ и расскажем, как это выглядит со стороны людей, которым предстоит это делать.

Категория: Веб-разработка

 

Single Responsibility Principle. Не такой простой, как кажется

Автор: admin от 31-05-2019, 15:25, посмотрело: 37

Single Responsibility Principle. Не такой простой, как кажется Single responsibility principle, он же принцип единой ответственности,

он же принцип единой изменчивости — крайне скользкий для понимания парень и столь нервозный вопрос на собеседовании программиста.



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



В лесу нас разделили на группы по 8-9 человек в каждой и устроили соревнование — какая группа быстрее выпьет бутылку водки при условии, что первый человек из группы наливает водку в стакан, второй выпивает, а третий закусывает. Выполнивший свою операцию юнит встает в конец очереди группы.



Случай, когда размер очереди был кратен трем, и являлся хорошей реализацией SRP.

Но почему соображать нужно именно на троих?

Категория: Программирование

 

10 принципов объектно-ориентированного программирования, о которых должен знать каждый разработчик

Автор: admin от 31-05-2019, 15:10, посмотрело: 75

10 принципов объектно-ориентированного программирования, о которых должен знать каждый разработчик


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

Категория: Программирование, Веб-разработка

 

Пять ошибок, которые я допустил как ведущий разработчик

Автор: admin от 31-05-2019, 14:40, посмотрело: 39

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



Оценивая свой опыт я могу сказать, что основные характеристики ведущего разработчика можно свести к 3 пунктам:




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

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

  • Хочет и может аргументированно доносить свое мнение, отстаивать его и искать компромисс при необходимости.



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



Одной из сильнейших его сторон является целостная картина мира, в которой совершенно точно определено, что такое хорошо и что такое плохо. Это позволяет быстро принимать решения и без колебаний воплощать их в жизнь. Эта уверенность заразительна и позволяет завоевать авторитет в глазах менеджеров, у которых уже не все так просто и понятно. Ведь кроме технических «лучше», «надежнее» и «быстрее» на уровне менеджмента появляются всякие «заказчик не захочет», «инвестор не оценит» и всевозможные «Вася обидится». Когда менеджер слышит «нет, тут нужно делать только так, потому что 1, 2 и 3» — он вздыхает с облегчением. Выбор становится очевиден и ответственность падает с его плеч.



Год назад я ушел с позиции ведущего разработчика окончательно и решил сделать небольшую ретроспективу своих самых досадных ошибок. Итак:



Ошибка номер 1. Оверменеджмент

Категория: Веб-разработка

 

API IntersectionObserver и ленивая загрузка изображений

Автор: admin от 31-05-2019, 12:30, посмотрело: 38

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



API IntersectionObserver и ленивая загрузка изображений



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

Категория: Веб-разработка

 

KubeCon Europe 2019: Как мы впервые посетили главное событие по Kubernetes

Автор: admin от 31-05-2019, 11:25, посмотрело: 42

На прошлой неделе, 19—23 мая, в Барселоне проходила главная европейская конференция по Kubernetes и связанным технологиям, одно из крупнейших Open Source-событий в мире — KubeCon + CloudNativeCon Europe 2019. Мы впервые приняли участие в ней, став серебряным спонсором мероприятия и первой российской компанией на KubeCon со своим стендом. На него была отправлена делегация из шести сотрудников «Фланта», и вот что мы увидели…



KubeCon Europe 2019: Как мы впервые посетили главное событие по Kubernetes

Категория: Программирование

 

Голосование за доклады на летний DIY-митап в Mail.ru Group 16 июня

Автор: admin от 31-05-2019, 10:50, посмотрело: 274

Голосование за доклады на летний DIY-митап в Mail.ru Group 16 июня


Всем привет! Напоминаем, что 16 июня пройдет летний DIY-митап, и у нас хорошие новости! К нам поступило 10 заявок, мы не ограничивали никого в теме и подходах к выступлениям. Список заявок и ссылка на голосование под катом.

Категория: Сделай Сам

 

Почему каждый Data Scientist должен знать Dask

Автор: admin от 31-05-2019, 10:45, посмотрело: 32

Здравствуйте, коллеги!



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



Почему каждый Data Scientist должен знать Dask
Снимок взят по адресу

Категория: Программирование

 
Назад Вперед