Pull to refresh
53
0
Юрий Щеглов @EpeTuK

User

Send message

Основываясь на статистике: неофициальное предложение Топ-10 OWASP 2021

Reading time 6 min
Views 6.4K

image


Многим из нас встречался список угроз Топ-10 OWASP. А некоторые даже знают, что он обновляется каждые 3-4 года. И срок следующего обновления уже подошел. Но процесс создания списка угроз OWASP плохо документирован, поэтому нам захотелось предложить прозрачный, основанный на статистике рейтинг для тех же категорий угроз.
Мы проанализировали 2 миллиона различных отчетов о безопасности из 144 открытых источников. Под катом вы найдете наш вклад в анализ Топ-10 угроз OWASP на 2021 год. При этом каждый из читающих сможет воспроизвести результаты на основе понятных метрик.

Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 0

Дайджест свежих материалов из мира фронтенда за последнюю неделю №325 (30 июля — 5 августа 2018)

Reading time 4 min
Views 14K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.


Читать дальше →
Total votes 29: ↑28 and ↓1 +27
Comments 1

Из конструкторов в отдел QA, или есть ли жизнь после завода

Reading time 6 min
Views 12K
image

У большинства из нас найдётся знакомый, который недоволен выбранной профессией и воспринимает походы на работу как обязаловку и повинность. А возможно, что вы и есть тот самый недовольный. Возникает вопрос: «Что же с этим делать?». В этой статье я хочу рассказать, как сам преодолел такую сложность. Забегая вперёд, скажу, что усилия себя оправдали: вместо того, чтобы обречь себя на судьбу конструктора на заводе, я работаю QA-инженером в IT-компании. Может быть, это послужит кому-то мотивацией.

Читать дальше →
Total votes 26: ↑23 and ↓3 +20
Comments 24

Code Conventions: как мы сохраняем быстрый темп разработки PHP-проекта

Reading time 7 min
Views 23K
Привет, Хабр. Меня зовут Евгений Удодов, я сооснователь и технический директор компании Roistat. Хочу поделиться нашим опытом разработки большого и сложного продукта — системы аналитики.

TL;DR: Мы выложили на github наш Code Conventions и рассказали в статье о том, как его применять на практике.

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

За 4 года существования нашего проекта мы сделали больше 20 000 Pull Request’ов (далее PR) и под катом я расскажу, как же мы решили эти проблемы.


Читать дальше →
Total votes 21: ↑18 and ↓3 +15
Comments 61

Что мы читали в марте: пять необходимых книг для инженеров инфраструктуры

Reading time 3 min
Views 13K


Мы в Skyeng понемногу строим свою библиотеку важных и полезных книг. Началось все с того, что своими списками в Фейсбуке поделились основатели компании (ссылки ниже), а теперь к ним присоединились и руководители направлений. В марте свой топ профессиональной литературы представила Надежда Рябцова, отвечающая за нашу IT инфраструктуру. Я попросил ее рассказать о каждой книге чуть подробнее – надеюсь, читателям Хабры этот список, дополненный четырьмя еженедельными рассылками, будет полезен.
Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Comments 8

Новинки C# 7.2. Span<T> и Memory<T>

Reading time 4 min
Views 29K


Доброго времени суток, %habrauser%! Столкнувшись с проблемой замедления работы системы при передачи использовании переменных хранимых в стеке я отправился в гугл и нашел отличное решение использование коллекции Span<T>, которая была добавлена в версии языка C# 7.2. Но я заметил, что в рунете почти нет статей посвященных этому обновлению. Поэтому я решил набросать небольшую статью, которая может быть полезна начинающим.
Читать дальше →
Total votes 33: ↑26 and ↓7 +19
Comments 33

Самые распространённые вопросы на собеседовании программиста графики

Reading time 5 min
Views 50K
Недавно я проходил собеседования в игровых студиях на младшего программиста графики. По итогу я узнал, каких навыков они ожидают от начинающего программиста и какие вопросы могут задать. В этой статье я собрал вопросы в удобный список. Смысл в том, чтобы другие начинающие программисты могли использовать его для подготовки, прежде чем идти на первое собеседование. Но хочу оговориться, что я не рекомендую просто запоминать ответы на эти вопросы. Темы в списке — это темы, которые следует понять и освоить, чтобы решать реальные проблемы программирования графики. Их нужно понять, а не запомнить ответы.

Вопросы делятся по темам: С++, математика, оптимизация и компьютерная графика. Очевидно, это главные темы в повседневной работе. C++ часто используется в реальных задачах, поэтому естественно, что на собеседовании задают много вопросов по нему. Кроме того, в программировании графики требуется лучшее знание математики, чем в большинстве других видов программирования, поэтому математические навыки имеют первостепенное значение. Наконец, для достижения 60 FPS и рендеринга с высокой графической точностью обязательными являются сильные навыки оптимизации. Давайте рассмотрим популярные вопросы в каждой категории.
Читать дальше →
Total votes 59: ↑54 and ↓5 +49
Comments 53

Шпаргалка для технического собеседования

Reading time 8 min
Views 205K


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

Читать дальше →
Total votes 81: ↑68 and ↓13 +55
Comments 85

Что я хотел бы знать до того, как стал техническим директором

Reading time 5 min
Views 17K


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

Это был бурный период, наполненный замечательным опытом. Создание стартапа — это перевернутая версия традиционного трудоустройства: изначально вы понятия не имеете, выживет ли компания, а если работа когда-нибудь превратится в полную занятость, то по мере роста бизнеса вы продолжите втягиваться в новые различные виды деятельности. Вполне закономерно, что в конечном итоге вы будете делать работу, которую вы никогда не делали раньше. Обязанности будут накапливаться быстрее, чем вы сможете узнать, как исполнять их надлежащим образом.
Читать дальше →
Total votes 23: ↑21 and ↓2 +19
Comments 4

Анатомия .NET Core: как мы настроили NTLM под Linux

Reading time 8 min
Views 16K

Мы продолжаем рассказывать про миграцию мобильного сервиса в ASP.NET Core и Docker. В этой статье будет идти речь про модуль WCF-клиента, упомянутый в предыдущей статье, NTLM-авторизацию и другие проблемы при его миграции. Сейчас расскажем, почему нам пришлось немного изучить анатомию и пощупать .NET Core изнутри.


Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Comments 12

Я разработчик с 9 до 17 (и ты можешь стать таким)

Reading time 4 min
Views 64K
Этот конкретный твит от Сафьи Абдалла сподвиг меня на некоторые размышления:
Пожалуй, непопулярное мнение (и тут немного иронии от меня).

Чтобы быть способным и отличным инженером, вам не нужно писать статьи в блоге, участвовать в проектах open source, выступать с техническими лекциями или делать что-нибудь ещё.

Можете оставить свой код в офисе — и это вполне нормально.
Такая позиция близка и мила моему сердцу, хотя я тоже понимаю иронию. Одна из вещей, которые я говорю потенциальным работодателям с тех пор как меня уволили за отказ оставаться программировать после работы — это то, что я не согласен на овертайм. По крайней мере, не на регулярной основе. Я могу иногда поучаствовать в авралах, когда критически важно срочно накатить конкретное изменение или исправить баг, но за исключением таких случаев я буду появляться, вкалывать — и пойду домой.
Читать дальше →
Total votes 121: ↑105 and ↓16 +89
Comments 619

Супер-полное руководство по публикации в Microsoft Store

Reading time 7 min
Views 14K
Привет, хабр! У меня часто случаются подобные ситуации: занимаюсь чем-нибудь сложным и в какой-то момент вылезает ошибка. Начинаю искать проблему в, соответственно, замороченных вещах, часто делая то, что не надо. И так проблемы нарастают. А в конце оказывается, что неполадка была в чем-то простейшем, например, программу запускать нужно было от имени администратора. Я один такой? В любом случае, ниже мы делимся супер-полным руководством по публикации приложения в Microsoft Store на примере игры. Заглядывайте под кат, чтобы сохранять свое время!

Читать дальше →
Total votes 21: ↑20 and ↓1 +19
Comments 4

Почему ранний возврат из функций так важен?

Reading time 8 min
Views 41K
Привет, Хабр! Представляю вашему вниманию перевод статьи «Why should you return early?» автора Szymon Krajewski

image

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

Очевидно, что существует несколько подходов написания одной и той же функции. Например, как можно начать выполнение основной части сразу после положительного исхода условного оператора, так и можно сначала пробежаться по всем отрицательным исходам, возвращая ошибки из функции, а уже только потом перейти к основной логике. Иными словами, я открыл для себя разные стили написания условных конструкций.
Читать дальше →
Total votes 50: ↑46 and ↓4 +42
Comments 175

Вышел GitLab 10.4 c динамическим тестированием безопасности приложений и бета-версией Web IDE

Reading time 9 min
Views 6.5K

Картинка для привлечения внимания


В первом релизе 2018 года мы внесли улучшения в процессы планирования, тестирования, развертывания и работы с мерж-реквестами. Кроме того, в данный релиз включены новые возможности тестирования безопасности, а также первая версия Web IDE, который является частью нашего амбициозного проекта Complete DevOps.


Читать дальше →
Total votes 24: ↑24 and ↓0 +24
Comments 4

Office 365. Пример работы с Microsoft Graph API в Angular5 с помощью ADAL JS. ADAL JS vs MSAL JS

Reading time 5 min
Views 4.5K
В прошлый раз мы обсудили механизм авторизации для работы с Office 365 API (в частности с Microsoft Graph API):

  • при каждом вызове API нужно передать token. Token имеет ограниченный срок жизни
  • token выдает сервис Microsoft, так называемый “Azure AD Authorization Endpoint”
  • получить token можно без серверной части используя только JavaScript в браузере. Для этого Microsoft сделал JavaScript библиотеку ADAL JS, которая упрощает коммуникацию с “Azure AD Authorization Endpoint” для получения token.

Тогда мы сделали простую статичную HTML-страницу, на которой наш vanilla JavaScript делал запрос к Microsoft Graph API и отображал список писем из Office 365. В данной заметке разовьем пример и сделаем тоже самое на Angular5.

angular5 office 365 adal js

Также поговорим о различиях рабочих (Work or school account) и персональных (Personal Account) аккаунтов при использовании Office 365 API.

Пример на GitHub.
Читать дальше →
Total votes 11: ↑11 and ↓0 +11
Comments 2

Нейронные сети для начинающих. Часть 1

Reading time 7 min
Views 1.5M
image

Привет всем читателям Habrahabr, в этой статье я хочу поделиться с Вами моим опытом в изучении нейронных сетей и, как следствие, их реализации, с помощью языка программирования Java, на платформе Android. Мое знакомство с нейронными сетями произошло, когда вышло приложение Prisma. Оно обрабатывает любую фотографию, с помощью нейронных сетей, и воспроизводит ее с нуля, используя выбранный стиль. Заинтересовавшись этим, я бросился искать статьи и «туториалы», в первую очередь, на Хабре. И к моему великому удивлению, я не нашел ни одну статью, которая четко и поэтапно расписывала алгоритм работы нейронных сетей. Информация была разрознена и в ней отсутствовали ключевые моменты. Также, большинство авторов бросается показывать код на том или ином языке программирования, не прибегая к детальным объяснениям.

Поэтому сейчас, когда я достаточно хорошо освоил нейронные сети и нашел огромное количество информации с разных иностранных порталов, я хотел бы поделиться этим с людьми в серии публикаций, где я соберу всю информацию, которая потребуется вам, если вы только начинаете знакомство с нейронными сетями. В этой статье, я не буду делать сильный акцент на Java и буду объяснять все на примерах, чтобы вы сами смогли перенести это на любой, нужный вам язык программирования. В последующих статьях, я расскажу о своем приложении, написанном под андроид, которое предсказывает движение акций или валюты. Иными словами, всех желающих окунуться в мир нейронных сетей и жаждущих простого и доступного изложения информации или просто тех, кто что-то не понял и хочет подтянуть, добро пожаловать под кат.
Читать дальше →
Total votes 70: ↑60 and ↓10 +50
Comments 64

Кадровые перестановки в крупнейших ИТ- и медиакомпаниях России за две недели

Reading time 3 min
Views 5.1K
Две прошедшие недели (21 марта-3 апреля) не были перенасыщены кадровыми перестановками. Несмотря на то, что изменений в штате крупнейших российских ИТ-компаний и медиа-ресурсов было немного, они привлекли внимание общественности.

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

А кто-то терпеливо наблюдал, как истекает срок его трудового договора и в награду за терпение получил… освобождение от должности.

«Мегамозг» предлагает читателям вспомнить эти события и сделать «коммит» произошедших изменений.
Читать дальше →
Total votes 12: ↑10 and ↓2 +8
Comments 0

Защита платежной инфраструктуры банка

Reading time 7 min
Views 12K
1-го апреля Банк России опубликовал (и это не шутка) обзор о несанкционированных переводах платежных средств, в котором привел данные не только об объемах и количестве несанкционированных операций, совершенных с использование электронных средств платежа (включая платежные карты и системы дистанционного банковского обслуживания), но и описал причины, которые привели к несанкционированным операциям и повышению риска их осуществления.

По мнению специалистов Банка России именно недостаточная защищенность внутренней инфраструктуры локальной вычислительной сети (ЛВС) операторов по переводу денежных средств, то есть банков, операторов услуг платежной инфраструктуры, а также использование в отношении их работников методов социальной инженерии (например, рассылки электронных сообщений, содержащих вредоносный код или ссылки на вредоносные сайты) могут привести к реализации атак на информационную инфраструктуру, в том числе на банкоматы кредитных организаций и серверы управления такими устройствами. И акцент в действиях злоумышленников смещается — если раньше они действовали против клиентов банков, атакуя рабочие места, с установленным программным обеспечением для перевода денежных средств (клиент-банк или Интернет-банк), включая и мобильные устройства, то в 2015-м году возросло число целевых атак на операционную (платежную инфраструктуру кредитных организаций и платежных систем.
Читать дальше →
Total votes 7: ↑6 and ↓1 +5
Comments 13

Синхронизация в онлайн играх

Reading time 2 min
Views 15K
Многопользовательская онлайн игра – передача пакетов и обмен сообщеями между клиентами и сером(client-server,p2p,tcp/upd, графы)
Представьте себе многопользовательсукую игру по типу lineage
Читать дальше →
Total votes 57: ↑7 and ↓50 -43
Comments 85

Information

Rating
Does not participate
Location
Караганда, Карагандинская обл., Казахстан
Date of birth
Registered
Activity