Как стать автором
Обновить
1
0.2

Пользователь

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

Пошаговая шпаргалка по защите сервера от хакеров и другой нечисти

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров8.9K

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

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

Привет! На связи Йети — самый йетический автор Vscale. Это моя первая статья на Хабре. В ней я расскажу, как защитить сервер от хактевистов и другой нечисти. Подробности под катом! :)
Читать дальше →
Всего голосов 38: ↑39 и ↓-1+40
Комментарии15

35+ бесплатных ресурсов для начинающих разработчиков С++

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров12K

Привет. Предположим, вы захотели начать изучать языĸ программирования C++ или, возможно, тех материалов, что уже изучили, вам недостаточно.

Я — Савва, программирую уже больше 7 лет, работаю менеджером команды наставников в Практикуме на курсе «Разработчик С++», а с недавнего времени — разработчиком в Positive Technologies. В этой статье мы с вместе с Практикумом собрали леĸции, ĸниги, курсы и всяĸое таĸое, чтобы шансов выстрелить себе в ногу самостоятельно было меньше :) По C++ существуют и другие подборĸи, но, ĸ удивлению, на Хабре их всего две.

Читать далее
Всего голосов 25: ↑25.5 и ↓-0.5+26
Комментарии17

Основные типы распределений вероятностей в примерах

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров13K

Статистические исследования и эксперименты являются краеугольным камнем развития любой компании. Особенно это касается интернет-проектов, где учёт количества пользователей в день, времени нахождения на сайте, нажатий на целевые кнопки, покупок товаров является обычным и необходимым явлением. Любые изменения в пользовательском опыте на сайте компании (внешний вид, структура, контент) приводят к изменениям в работе пользователя и, как результат, изменения наблюдаются в собираемых данных. Важным элементом анализа изменений данных и его фундаментом является использование основных типов распределений случайных величин, от понимания которых напрямую зависит качество оценки значимости наблюдаемого изменения. Рассмотрим их подробнее на наглядных примерах.

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

Тестирование без моков: язык паттернов. Часть 2

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

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

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

Как сайты обнаруживают ботов по TLS

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров6K

Порой случается так что несмотря на то что мы в точности повторяем запрос к сайту из своего любимого HTTP клиента в ответ мы получаем ошибку. Но ведь в браузере запрос проходит! В чём же дело? В этой статье мы с этим разберемся!

Читать далее
Всего голосов 23: ↑22 и ↓1+21
Комментарии6

Как работать с текстом при дизайне игровых интерфейсов

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

Статья про приёмы, упрощающее восприятие текста игроками и про особенности работы с текстом на игровых проектах.

Читать далее
Всего голосов 22: ↑21 и ↓1+20
Комментарии6

Популярные конфигурационные опции для работы с git

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

Привет! Я всегда мечтала, чтобы в инструментах для работы с командной строкой заранее сообщалось, насколько популярны те или иные конфигурационные опции, предусмотренные в них, например:

o    «В принципе, никто этим не пользуется»

o    «Этой опцией пользуется 80% аудитории, стоит ознакомиться»

o    «У этой опции предусмотрено 6 возможных значений, но в реальной практике применяется всего 2 из них».

Так что я решила спросить пользователей Mastodon, какие у них любимые опции конфигурации git:

А какие опции git config вы больше всего любите выставлять? В настоящее время у меня в ~/.gitconfig установлены только git config push.autosetupremote true и git config init.defaultBranch main, вот интересуюсь, а что выставляют другие люди.

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

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

Все описанные опции документированы на странице man git-config, а также на этой странице.

Читать далее
Всего голосов 40: ↑39 и ↓1+38
Комментарии15

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

Уровень сложностиСредний
Время на прочтение33 мин
Количество просмотров97K

Привет, Хабр!

Так уж повелось, что любой уважающий себя работодатель перенимает передовые^✻ методики FAANG — по этой причине практически во всех IT-собесах есть она: секция алгоритмов. Кто-то ей рад, кто-то не очень, но секция есть и уходить пока не планирует. Поэтому нужно закатать рукава и достойно встретить суровую реальность.

Читать далее
Всего голосов 216: ↑214 и ↓2+212
Комментарии77

Моя большая практическая шпаргалка SQL (SQLite) с готовыми запросами

Уровень сложностиСредний
Время на прочтение54 мин
Количество просмотров77K

Привет, Хабр)

Публикую шпаргалку по SQL, которая долгое время помогала мне, да и сейчас я периодически в неё заглядываю.

Все примеры изначально писались для СУБД SQLite, но почти всё из этого применимо также и к другим СУБД.

Здесь есть и примеры довольно сложных запросов с агрегирующими функциями, триггерами, длинными подзапросами, с оконными функциями. Помимо этого, часть примеров посвящена работе с SQL в Python, используя sqlite3, pandas, polars. Этот список запросов с комментариями можно использовать как наглядное пособие для изучения SQL.

Читать далее
Всего голосов 125: ↑122 и ↓3+119
Комментарии7

От потери к вдохновению: история развития стартапа

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.4K

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

Идея создания продукта зародилась после серии смертей друзей. Все эти люди умерли в возрасте чуть за свои 55 лет, не имея серьезных проблем со здоровьем (по крайней мере, ничего такого, о чем они бы знали). Смерть всех была связана с сердечно-сосудистыми заболеваниями. Но то, что эти смерти можно было предотвратить, стало понятно после прочтения книги "9 шагов на пути к вечной жизни", написанной совместно с футурологом Google.

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

Таким образом, начались поиски решений, в том числе различных платформ, мобильных приложений и надежных источников информации. Я была одной из первых пользователей и поддерживала приложение Lifext с самого его появления на хабре. Наверное, как и многие я следила за публикациями Open Longevity и общалась с некоторыми его участниками. А в 2018 году у нас появился первый прототип продукта, который мы использовали сами и предоставляли своей семье. Затем прототип передавался по кругу друзей и знакомых, пока не попал к замечательному врачу. И это стало тем переворотом, с которого и началась разработка продукта. 

Читать далее
Всего голосов 19: ↑16 и ↓3+13
Комментарии9

Как переехать в Европу стартаперам и IT-специалистам

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров9.8K

Как переехать в Европу без Digital Nomad?

Краткий обзор на 34 визовые программы в Европе для айти-специалистов и предпринимателей, которые ведут к ПМЖ и гражданству.

Читать далее
Всего голосов 19: ↑13 и ↓6+7
Комментарии24

Модульность в Java 9

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

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



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

Пожалуй, это одно из самых вредных и коварных убеждений

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров27K

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

Читать далее
Всего голосов 147: ↑77 и ↓70+7
Комментарии244

История одного наследства: как я с помощью OSINT и социальной инженерии заскамил скамера

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров25K

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

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

Читать далее
Всего голосов 51: ↑47 и ↓4+43
Комментарии13

Shellinabox — если вдруг заблокируют SSH

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

Сейчас мы живём в период, когда блокировки непредсказуемым образом усложняют нам жизнь. Одной из возможных угроз, которые стоит учесть, является блокировка протокола SSH (по причине того, что он позволяет организовывать туннели), и, хотя мы наверняка найдём способ достучаться до своих VPS, возможно стоит подстелить соломки и рассмотреть такой вариант, как SSH-клиент в браузере, что позволяет сделать программа Shellinabox.

Читать далее
Всего голосов 17: ↑14 и ↓3+11
Комментарии13

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров336K

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

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

Кроме того, что этот протокол еще более устойчив к выявлению, приятным фактом будет и то, что настройка сервера XTLS-Reality гораздо проще, чем описанные ранее варианты - после предыдущих статей я получил довольно много комментариев типа "А что так сложно, нужен домен, нужны сертификаты, и куча всего" - теперь все будет гораздо проще.

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

Вопросы по SQL, которые часто задают на собеседовании. Часть 1

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

SQL (Structured Query Language) – это язык программирования, используемый для управления реляционными базами данных. В этой статье я собрал вопросы по SQL, с которыми вы можете столкнуться на собеседовании. Их часто задают для проверки общих знаний и навыков.

Читать далее
Всего голосов 31: ↑26 и ↓5+21
Комментарии24

Windows — причина медленного интернета

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров102K

Если вы столкнулись с «особой» проблемой медленного интернета и никакие танцы с бубном вам не помогают, то это статья для вас.

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

В этой статье я поделюсь своим «интересным» опытом, как я искал решение проблемы и о том, что Windows можно починить и не переустанавливать.

Читать далее
Всего голосов 167: ↑161 и ↓6+155
Комментарии316

Пишем интерактивный виджет

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров3.7K

Виджеты в новом обличии появились в 2020 году вместе с выходом iOS 14 (HomeScreen widgets). За это время Apple выпустила больше семейств виджетов, а также добавила их на LockScreen в iPhone и iPad. Но интерактивность появилась впервые в iOS 17.

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

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

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal

Уровень сложностиСложный
Время на прочтение29 мин
Количество просмотров85K

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

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

Подобные условия пользования, само собой, порождают внутреннее недовольство пользователей:

За интернет они платят? — Да.

Раздача как-либо использует ресурсы провайдера сверх нормы? — Нет.
Читать дальше →
Всего голосов 298: ↑296 и ↓2+294
Комментарии91
1
23 ...

Информация

В рейтинге
2 255-й
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность