Как стать автором
Обновить
48
0
Виктор Хомяков @victor-homyakov

Программист

Отправить сообщение

150+ хакерских поисковых систем и инструментов

Время на прочтение11 мин
Количество просмотров94K

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

Пост состоит из 8 объемных разделов:

1. метапоисковики и поисковые комбайны;

2. инструменты для работы с дорками;

3. поиск по электронной почте и логинам;

4. поиск по номерам телефонов;

5. поиск в сети TOR;

6. поиск по интернету вещей, IP, доменам и поддоменам;

7. поиск данных об уязвимостях и индикаторов компрометации;

8. поиск по исходному коду.

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

Читать далее
Всего голосов 54: ↑51 и ↓3+58
Комментарии6

Оформляем README-файл профиля на GitHub

Время на прочтение14 мин
Количество просмотров232K

Летом 2020 года GitHub позволила пользователям создавать персональные README-файлы и с их помощью кастомизировать свои профили. Сама платформа при создании подобного файла предлагает уже готовый шаблон, в который можно вписать свои данные. Но о какой кастомизации может идти речь, если у всех будут одинаково оформленные профили? За почти два года сообщество придумало множество различных способов выделиться и особенно оформить свою страницу на GitHub.

Читать далее
Всего голосов 62: ↑60 и ↓2+73
Комментарии25

Создаём npm пакет, совместимый с CJS, ESM, написанный на TypeScript

Время на прочтение6 мин
Количество просмотров9.6K

Здравствуйте! Меня зовут Евгений, я бакенд разработчик в компании ClickON. Хотелось бы поделиться опытом создания npm пакета, который умеет встраиваться в CommonJS, ESModule проект. Опишем подводные камни, попытаемся сделать универсальный пакет, прикрутим алиасы.

Читать далее
Всего голосов 18: ↑17 и ↓1+18
Комментарии7

Как сделать интересный технический доклад

Время на прочтение16 мин
Количество просмотров5.4K

Если спросить начинающего докладчика, чего он больше всего боится перед выступлением, он, может быть, назовёт дотошного и даже скандального слушателя, или скажет, что самое страшное — это забыть слова.

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

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

Перестать делать скучные доклады
Всего голосов 8: ↑7 и ↓1+7
Комментарии0

Как придумать тему технического доклада

Время на прочтение11 мин
Количество просмотров4.1K

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

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

Материала оказалось много и статьи получилось две. Эта первая — о том, как придумать тему доклада.

Как придумать тему доклада
Всего голосов 13: ↑12 и ↓1+17
Комментарии2

«Типичная ошибка — бездумно бенчмаркать всё подряд»: интервью с Андреем Акиньшиным о бенчмаркинге

Время на прочтение14 мин
Количество просмотров7.6K


В прошлом году у Андрея Акиньшина (DreamWalker) вышла книга «Pro .NET Benchmarking»: подробнейший труд о бенчмаркинге, полезный как .NET-разработчикам, так и айтишникам других направлений.

Когда до её выхода оставалась пара месяцев, мы проводили конференцию DotNext 2019 Piter, где в онлайн-трансляции расспросили Андрея про книгу и вообще про бенчмаркинг. Казалось бы, с тех пор это интервью должно было устареть: там о книге говорят в будущем времени, а сейчас ей уже полгода. Но за эти полгода человечество не стало как-то иначе считать 99-й перцентиль — так что для всех, кому может пригодиться бенчмаркинг, в ответах Андрея по-прежнему много актуального и интересного.

Он выступит на будущем DotNext с темой «Поговорим про перформанс-анализ» — то есть не про написание бенчмарков, а про анализ собранных ими значений. Прямо сейчас Андрей штудирует сотни статей по математической статистике, чтобы рассказать вам про те методы, которые лучше всего подходят для перфоманс-анализа в реальной жизни. В книге такому анализу тоже уделено внимание, а в интервью Андрей как раз объяснял его важность. Поэтому в ожидании нового доклада мы открыли для всех видеозапись интервью, а специально для Хабра сделали текстовую расшифровку: теперь его можно не только посмотреть, но и прочитать.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+28
Комментарии6

Законы мира информационных технологий

Время на прочтение5 мин
Количество просмотров26K

Всем известный закон Мёрфи гласит: «Если что-то плохое может случиться, то оно обязательно произойдет». Согласитесь, не самая позитивная установка, особенно когда это касается работы. И тут мне стало любопытно, а есть ли такие законы, которые мне, как ИТ-специалисту, максимально помогут избежать «чего-то плохого». К своему удивлению, я их нашел, и даже не один. Потому делюсь с вами сегодня своими сакральными знаниями в блоге ЛАНИТ. 

Читать далее
Всего голосов 127: ↑126 и ↓1+146
Комментарии18

17 убойных репозиториев GitHub, которые нужно сохранить

Время на прочтение6 мин
Количество просмотров141K

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

Читать далее
Всего голосов 153: ↑123 и ↓30+114
Комментарии44

Bash отладчик с поддержкой произвольных точек останова

Время на прочтение4 мин
Количество просмотров9.5K

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

Читать дальше →
Всего голосов 52: ↑52 и ↓0+52
Комментарии6

Геймификация обучения в IT

Время на прочтение2 мин
Количество просмотров11K

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

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии5

Prisma ORM: полное руководство для начинающих (и не только). Часть 1

Время на прочтение12 мин
Количество просмотров49K



Привет, друзья!


В этой серии из 2 статей я хочу поделиться с вами своими заметками о Prisma.


Prisma — это современное (продвинутое) объектно-реляционное отображение (Object-Relational Mapping, ORM) для Node.js и TypeScript. Проще говоря, Prisma — это инструмент, позволяющий работать с реляционными (PostgreSQL, MySQL, SQL Server, SQLite) и нереляционной (MongoDB) базами данных с помощью JavaScript или TypeScript без использования SQL (хотя такая возможность имеется).


Содержание этой части



Вторая часть.


Если вам это интересно, прошу под кат.

Читать дальше →
Всего голосов 10: ↑6 и ↓4+4
Комментарии5

Заправлены в планшеты космические карты: реалистичные игры о космосе

Время на прочтение7 мин
Количество просмотров29K
image

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

И ничего плохого в этом нет — для динамичного разнообразного игрового процесса такой фэнтезийный космос подходит гораздо лучше настоящего. Но всегда есть небольшая прослойка людей, которые хотят, «чтобы всё прямо как в жизни» и готовы ради этого мириться с заметно более высокой сложностью и куда менее низкой увлекательностью. Увы, мировому игропрому таких особо нечем порадовать. Реалистичных авиасимуляторов множество, автомобильных — тоже. Даже подводной лодкой или парусной яхтой в виртуальном пространстве можно при желании порулить с высокой степенью достоверности. А вот с космосом всё куда скуднее. Возможно, виновато разочарование тем, что космический прогресс идёт медленнее, чем хотелось бы. Мы-то надеялись если не синекожих инопланетянок кадрить, то хотя бы картошку на Марсе сажать, а нам предлагают «на бис» повторить то, что мы уже сделали полвека назад — слетать на Луну. И то не прямо сейчас повторить, а когда-нибудь, в умеренно обозримом будущем. Вот и рвётся душа к звёздным просторам поживописнее.

Но для тех, кому всё же хочется реалистичного виртуального космоса — наша сегодняшняя небольшая подборка.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+28
Комментарии30

10 обидных ошибок авторов на Хабре

Время на прочтение10 мин
Количество просмотров26K

Большинство опытных и начинающих авторов Хабра уже знают, что такое хорошо и что такое плохо, поэтому творят хорошее или плохое относительно сознательно. Но, просматривая и прочитывая сотни статей изо дня в день, я постоянно сталкиваюсь с одними и теми же проблемами, которые делают статьи чуть хуже или даже напрочь проваливают нормальные, на первый взгляд, материалы. Из всех специфических и общих ошибок я выбрала 10 самых распространённых — они встречаются как у частных пользователей, так и у компаний (в блоги которых пишут тоже обычные пользователи, так что ничего необычного). Давайте учиться на чужих ошибках и не плодить свои :-) 

Читать далее
Всего голосов 95: ↑89 и ↓6+125
Комментарии150

15 игр, которые прокачивают логику, алгоритмы, ассемблер и силу земли

Время на прочтение8 мин
Количество просмотров108K


Есть «Super Mario», признанная классика видео игр. Есть «Doom», который запускают на чайниках и тестах на беременность. Есть супер-популярные по статистике twitch.tv игры («League of Legends», «GTA V», «Fortnite», «Apex Legends») которые стримят пятая часть всех стриммеров.

А есть игры, на которые очень мало обзоров, но они супер крутые — игры про алгоритмы. Игры, в которых можно кодить на ретро-компьютере; игры, которые надо взламывать; игры, где можно программировать контроллеры или поведение персонажей; игры, где можно создавать свою игру внутри игры.

Под катом подборка классных игр про алгоритмы за последние 10 лет. Если что-то упустила — буду рада дополнениям.

Еще я создала канал в Telegram: GameDEVils, буду делиться там клевыми материалами (про геймдизайн, разработку и историю игр).
Читать дальше →
Всего голосов 78: ↑73 и ↓5+88
Комментарии98

Как мы ускоряли комментарии Хабра

Время на прочтение16 мин
Количество просмотров17K
image

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

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

Этому есть несколько причин. Во-первых, Хабр стал одностраничным приложением (SPA, Single Page Application) на Vue, то есть теперь переходы между страницами рисуются на клиенте с помощью JS вместо классического серверного рендеринга (Server-Side Rendering, SSR). Такие SPA-страницы отображаются быстрее на современных устройствах, но на старых девайсах могут тормозить.

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

В октябре мы постепенно выкатывали на часть пользователей обновлённую версию комментариев, над которой трудились последние полгода. Наши новые комментарии должны рендериться быстрее и доставлять удовольствие всем, а не только обладателям топовых MacBook Pro c M1 Max.

Давайте посмотрим, как работали комментарии полгода назад, до того, как мы начали работу по оптимизации.
Читать дальше →
Всего голосов 59: ↑52 и ↓7+79
Комментарии147

Микрофронтенды и виджеты в 2021-м. Доклад Яндекса

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

— Всем привет! Меня зовут Леша. Я хочу с вами сегодня обсудить немного «перехайпленную» тему — микрофронтенды.
Читать дальше →
Всего голосов 20: ↑18 и ↓2+22
Комментарии12

Тест производительности: удивительно и просто

Время на прочтение15 мин
Количество просмотров38K
Так сложилось, что последние полгода я активно занимался тестами производительности и мне кажется, что в этой области IT царит абсолютное непонимание происходящего. В наше время, когда рост вычислительных мощностей снизился (vertical scalability), а объем задач растет с прежней скоростью, проблема производительности становится всё острее. Но прежде, чем броситься на борьбу с производительностью, необходимо получить количественную характеристику.

Краткое содержание статьи:

Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии5

Эволюция игр с открытым миром

Время на прочтение12 мин
Количество просмотров16K


Игры — это мерка развития домашних компьютеров (к которым относятся и приставки). Чем больше вычислительных мощностей у процессоров, чем изощрённее видеокарты, тем реалистичнее графика в играх и сложнее виртуальные миры. Это особенно важно для игр с открытым миром, которые должны «жить сами по себе» и в которых игрок перемещается не по строго прописанному «коридору», а бродит везде, где ему вздумается (в разумных пределах, конечно). Давайте посмотрим, как эволюционировал этот жанр. А про эволюцию хоррор-игр читайте здесь.
Всего голосов 29: ↑20 и ↓9+25
Комментарии25

Как получить размеры экрана, окна и веб-страницы в JavaScript?

Время на прочтение2 мин
Количество просмотров175K


Доброго времени суток, друзья!

Представляю Вашему вниманию перевод небольшой заметки «How to Get the Screen, Window, and Web Page Sizes in JavaScript» автора Dmitri Pavlutin.

Для определения ориентации окна браузера (ландшафтной или портретной) можно сравнить его ширину и высоту.

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

Что означают эти размеры и, главное, как их получить? Именно об этом я и собираюсь рассказать.
Читать дальше →
Всего голосов 19: ↑12 и ↓7+6
Комментарии5

JavaScript и кое-что ещё: 4 креативных подхода к измерению времени в браузерах

Время на прочтение6 мин
Количество просмотров7.5K
Автор статьи, перевод которой мы сегодня публикуем, решил рассказать о нескольких необычных способах измерения времени в браузерах. Для их использования понадобится доступ к различным API, которые применяются в веб-разработке, поэтому они не подходят для платформы Node.js. Правда, если кто-то нуждается в необычном способе измерения времени в Node.js, то, полагаем, после прочтения этого материала у него могут появиться кое-какие идеи на этот счёт.


Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии3

Информация

В рейтинге
4 845-й
Работает в
Зарегистрирован
Активность

Специализация

Frontend Developer, Специалист по производительности приложений в Node.js и браузерах
Senior
От 8 000 €
Performance
Performance Tuning
JavaScript
React