Pull to refresh
0
0
Send message

OSINT или как посмотреть на свою сеть глазами хакера

Reading time6 min
Views86K


Добрый день! Сегодня я вам расскажу какую информацию об организации можно обнаружить в открытых источниках и как ей может воспользоваться потенциальный злоумышленник. Многие из вас наверняка слышали об OSINT (Open Source INTelligence, перечень мероприятий, направленный на сбор информации из открытых источников), который чаще всего используется для сбора информации о конкретном человеке. Но также OSINT можно использовать для поиска информации о конкретных организациях для оценки защищенности. Ведь согласитесь, полезно посмотреть, что о вас есть в открытом доступе и как вы выглядите со стороны потенциального злоумышленника.
Читать дальше →

Теперь наш публичный синтез в супер-высоком качестве, в 10 раз быстрее и без детских болячек

Reading time8 min
Views58K

hero_image


В нашей прошлой статье про синтез речи мы дали много обещаний: убрать детские болячки, радикально ускорить синтез еще в 10 раз, добавить новые "фишечки", радикально улучшить качество.


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


  • Снизили размер модели в 2 раза;
  • Научили наши модели делать паузы;
  • Добавили один высококачественный голос (и бесконечное число случайных);
  • Ускорили наши модели где-то примерно в 10 раз (!);
  • Упаковали всех спикеров одного языка в одну модель;
  • Наши модели теперь могут принимать на вход даже целые абзацы текста;
  • Добавили функции контроля скорости и высоты речи через SSML;
  • Наш синтез работает сразу в трех частотах дискретизации на выбор — 8, 24 и 48 килогерц;
  • Решили детские проблемы наших моделей: нестабильность и пропуск слов, и добавили флаги для контроля ударения;

Это по-настоящему уникальное и прорывное достижение и мы не собираемся останавливаться. В ближайшее время мы добавим большое количество моделей на разных языках и напишем целый ряд публикаций на эту и смежные темы, а также продолжим делать наши модели лучше (например, еще в 2-5 раз быстрее).


Попробовать модель как обычно можно в нашем репозитории и в колабе.

Читать дальше →

Новинки аннотаций типов в Python 3.8 (Protocol, Final, TypedDict, Literal)

Reading time5 min
Views36K

Сегодня ночью вышел Python 3.8 и аннотации типов получили новые возможности:


  • Протоколы
  • Типизированные словари
  • Final-спецификатор
  • Соответствие фиксированному значению

Если вы ещё не знакомы с аннотациями типов, рекомендую обратить внимание на мои предыдущие статьи (начало, продолжение)
И пока все переживают о моржах, я хочу кратко рассказать о новинках в модуле typing

Читать дальше →

Введение в аннотации типов Python. Продолжение

Reading time4 min
Views75K


Автор иллюстрации — Magdalena Tomczyk


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

Читать дальше →

Взлом Wi-Fi-сетей, защищённых WPA и WPA2

Reading time3 min
Views337K
Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать о том, как взломать Wi-Fi-сеть, для защиты которой используются протоколы WPA и WPA2.


Статья написана исключительно в ознакомительных целях

Читать дальше →

Знакомство с FastAPI

Reading time5 min
Views223K
Вместо предисловия

В нашей команде бытует хорошая практика фиксировать все изменения, которые отправляются в продакшен в гитхабовских релизах. Однако, не вся наша команда имеет доступ в гитхаб, а о релизах хочется знать всем. Так сложилась традиция релиз из гитхаба дублировать в рабочем чате команды в телеграме. Что хорошо, гитхаб позволяет с помощь маркдауна красиво оформить релиз с разделением на секции и ссылками на задачи, которые отправляются на выкатку. Что плохо, простым copy/paste всю эту красоту в телеграм не перенесёшь и приходится тратить время на довольно нудную работу по повторному оформлению релиза, но уже в телеграме. Ну а посколько программисты народ ленивый, я решил этот процесс автоматизировать.
 


Исходные данные:

  • Гитхаб умеет сообщать обо всём, что происходит в репозитории с помощью вебхуков
  • Вся необходимая для формирования релиза информация содержится в теле запроса, который кидает вебхук
  • Авторизация идёт через подпись запроса секретом, который проставляется в настройках вебхука

Соответственно, задача заключается в том, чтобы поднять HTTP API, который сможет принять POST запрос, проверить подпись, извлечь нужную информацию из тела запроса и передать её дальше по инстанции. Как тут не попробовать FastAPI, на который я давно глаз положил?


Кто такой FastAPI?


FastAPI — это фреймворк для создания лаконичных и довольно быстрых HTTP API-серверов со встроенными валидацией, сериализацией и асинхронностью,
что называется, из коробки. Стоит он на плечах двух других фреймворков: работой с web в FastAPI занимается Starlette, а за валидацию отвечает Pydantic.


Комбайн получился легким, неперегруженным и более, чем достаточным по функционалу.

Читать дальше →

Как оформить серию коммитов Git, чтобы её приняли в любой проект

Reading time8 min
Views32K

Добрый день, коллеги! Доказывать, что нужно использовать систему контроля версий, уже давно не нужно. И Git занял тут лидирующую позицию, стремительно вытеснив SVN. Но это инструмент, а инструментом нужно уметь пользоваться, чтобы добиться лучших результатов. Как топором, один человек сможет просто срубить дерево а другой из этого дерева сможет сделать великолепную скульптуру. Так и с помощью Git, один человек сможет просто не потерять результаты своего труда за день, а другие смогут организовать совместную работу над проектом нескольких сотен человек. Да так, что о любой строчке кода можно будет и через пять лет сказать, откуда она взялась и для чего нужна.

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

Читать далее

Почему инженеры не могут оценить время разработки

Reading time6 min
Views32K

Статистический подход к объяснению ошибочных дедлайнов в инженерных проектах



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

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

Делу время, потехе час! Тезисы «мифического человеко-месяца» Фредерика Брукса, в пословицах и поговорках

Reading time27 min
Views14K

Время — судья


Книга “мифический человеко-месяц”, заслуживает того, чтобы её читали и перечитывали, издавали и переиздавали. В 2025 году, а он не за горами, будет 50 лет первому изданию. Т.е. проверка временем пройдена. В 1995 году вышло юбилейное издание (ждём юбилейного издания 2К25), в предисловии к которому, автор, помимо прочего, сообщает:
Работая над обзором и обновлением книги «Мифический человеко-месяц», я поразился, как мало тезисы, заявленные в ней, были подвергнуты критике, доказаны или опровергнуты текущими исследованиями и опытом в инженерии ПО. Теперь для меня оказалось полезным каталогизировать эти тезисы в сырой форме, лишённой подтверждающих аргументов и данных. В надежде, что эти голые утверждения привлекут аргументы и факты для доказательства, опровержения, обновления или уточнения, я включил этот план в главу 18.

Кто празднику рад, тот накануне пьян


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

В споре рождается истина


А цель всё та же что у Брукса, ещё раз обратить внимание, и привлечь новые аргументы, доказательства, опровержения или уточнения.

А заодно расслабиться, и повеселиться. Не воспринимайте написанное слишком буквально — без смешного нельзя понять серьёзное.
Читать от доски до доски...

Хорошие времена рождают слабаков

Reading time4 min
Views21K
В статье «Моё разочарование в софте» мы увидели, как программное обеспечение деградировало за последние два десятилетия. В 2019 Джонатан Блоу (разработчик игр Braid и The Whitness) выступил с докладом, в котором объяснил, почему это может происходить:



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

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

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

Это парадокс: большинство людей могли подумать, что, если бы мы построили, например, космический корабль или сложный самолет в прошлом, то мы смогли бы построить его снова в любое время. Но нет, если бы мы не строили определенный самолет непрерывно, то спустя всего 50 лет уже легче было бы разработать новый с нуля, чем пытаться возродить старые процессы и документацию. Знания не передаются следующему поколению автоматически.

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

Reading time8 min
Views60K

Бесплатное хранилище артефактов PackageCloud

Удивительно, но в интернете сотни сервисов, которыми разработчик может пользоваться совершенно бесплатно. «Бесконечное» время (пока компания не обанкротится или не изменит условия), без рекламы, пробного периода и других подводных камней.

Недавно мы обсуждали эту тему в статье «Боль разработчика: “Никогда не давайте пользователям бесплатный тариф”». Речь шла о том, что на самом деле бесплатный план вовсе не бесплатен — приходится тратить массу времени и усилий на поддержку этих тарифов.

Но для некоторых бесплатный тариф — единственный способ завлечь новых клиентов. Это просто замечательно с точки зрения самих пользователей. Ведь перед нами десятки бесплатных хостингов, API, CMS, CDN, сервисов обработки данных, поисковых движков, репозиториев, инструментов проверки кода и других. Бесплатный тариф идеален для опенсорс-разработчиков, любительских и некоммерческих проектов, маленьких стартапов. Ни за что не надо платить.
Читать дальше →

Надували, надуваем и будем надувать. Пузыри программистов

Reading time4 min
Views54K

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

Но мы – круче. В определённых условиях мы умеем надувать огромные перламутровые пузыри, которые потом годами не лопаются. Толку от них нет, но… Красиво же!

Читать далее

Заповеди тимлида Авито

Reading time6 min
Views24K

Мы уже публиковали свои внутренние документы с ожиданиями от инженеров и менеджеров продукта в плейбуке на Гитхабе. Пришло время поделиться ещё одним — кодексом тимлида.


Читать дальше →

Посадите программиста в поток. Защищайте. Не мешайте. Наслаждайтесь

Reading time5 min
Views36K
Нужна справка на каждого ребенка. Да, и согласие на обработку персональных данных. От каждого из родителей. Пусть и анкету каждый заполнит. Статистический отчет о том, сколько мальчиков и девочек. Да, и по возрастам. И по районам прописки. Ну и по школам. Разделите там, пожалуйста, обычные школы, лицеи и гимназии. Нет, педсовет пропускать нельзя. Это всего 4 часа. Раз в неделю. Да, всем педагогам надо прийти. Конечно, вам нужно работать еще и в детских садах. Каждому из вас. Трижды в неделю. И костюмы ваши нам не нравятся, нужно меньше красок – чего как попугаи-то?

Так, а почему новых постановок нет? Где победы на конкурсах? Что значит два месяца бегаете бумажки собираете? Какое еще творчество? И почему у вас на него времени нет? Какого еще секретаря вам нанять? Что значит «я ухожу»? Вы серьёзно думаете, что справитесь без нас? Что ж, удачи.

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

Случай запал в душу, т.к. я как раз проводил эксперимент (в очередной раз) по избавлению других творческих людей – программистов – от непрофильной, но «такой важной, нужной и обязательной работы» — успеванию в срок.
Читать дальше →

Гайд начинающего тимлида

Reading time14 min
Views58K

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

Всё это я проговаривал на вебинаре в Хекслете тут https://www.youtube.com/watch?v=y_HkXvFovAc

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

Общий стаж моей работы в ИТ - около 14 лет. Я начинал с системного администрирования, потом перешел в разработку, поработав как в аутсорсе, так и в продукте. Не один раз проходил путь от рядового разработчика до тимлида.

Читать далее

Эффективность — ваш враг

Reading time8 min
Views74K

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

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

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

Попав в офис (разумеется, заполненный дымом сигарет), вы немного удивлены, что он совсем не похож на людской муравейник. На самом деле, окружающие вас люди практически ничего не делают. Рядом с офисом вашего героя его секретарша отдыхает за своим столом. Назовём её Глория. Похоже, она совсем ничем не занята. Вы в течение получаса наблюдаете, как она читает, приводит в порядок свой стол и болтает с проходящими мимо секретаршами. Они тоже не выглядят занятыми. Озадаченный тем, что Тони тратит свои деньги на бездельников, вы решаете остаться ещё на несколько часов.
Читать дальше →

Мы тратим годы на то, что делается неделю — потому что все ларьки заигрались в IT-гигантов

Reading time5 min
Views128K


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

Если бы меня кто-то спросил, за сколько можно сделать такое приложение в одиночку — я бы сказал: «два месяца на разработку, один на тестирование». Но нас было много, поэтому мы работали больше двух лет.
Читать дальше →

Шесть рецептов для начинающего тимлида: как всё успевать и развивать команду

Reading time14 min
Views54K


Привет! Меня зовут Дмитрий Ли, я тимлид одной из команд разработки бэкенда в Badoo.

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

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

Рецепты, которыми я хочу поделиться, в большей степени пригодятся начинающим тимлидам: я записал их как своеобразное наставление себе самому несколько лет назад. Эта статья написана по мотивам моего доклада на TeamLeads Conf.

Как мы делаем корпус Flipper Zero безупречным

Reading time4 min
Views28K

Flipper Zero — проект карманного мультитула для хакеров в формфакторе тамагочи, который мы разрабатываем. Предыдущие посты [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15]

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

Сегодня я расскажу вам о найденных и исправленных проблемах при производстве первых партий корпусов Flipper Zero, изготавливаемых литьем под давлением.

Читать далее

Information

Rating
Does not participate
Registered
Activity