Привет, чемпион! В этой статье я Никита и мой биг бро Алерон мы вместе окунёмся в одну из самых хайповых тем года — no-code решения (он же vibe-coding, от которого даже CI/CD не спасёт). Почему это "болото"? Сейчас расскажем!
Вроде бы сначала всё выглядит просто: красиво, удобно, даже соблазнительно. Но спустя неделю ты уже перестаёшь писать код и просто таскаешь блоки, задаваясь вопросом: "А зачем я JS учил?". И это не шутка! Многие после первого успеха с no-code начинают по-другому смотреть на разработку и сроки реализации. Но GitHub удалять рано — у всего есть оборотная сторона.
В предыдущей статье я попросил — «Расскажите, зачем вам DI‑контейнер в golang». Большое спасибо всем, кто оставил коммент и проголосовал. Общий вывод такой: используем контейнер, потому что с ним удобно писать тесты. Тесты — весомый аргумент, особенно в контексте того, что тест — это часть кода. Получается, мы все таки «тащим» Di‑контейнер в проект. Ну, хорошо....
Вероятно, это будет uber‑fx, ведь у него хорошая документация, самое простое и понятное API по сравнению с другими..., или нет — не «тащим»?
Мой ответ — нет, uber‑fx не «тащим», потому что можно еще проще и понятнее.
Делаем...Что делать писателям в современном жестоком мире, где никто не хочет читать книги?
Рассказываю о том, как я сделала игру на основе своей повести, чтобы её хоть кто-то прочитал.
А как всё было и зачем?XTLS/Xray-core - инструмент для обхода цензуры с открытым исходным кодом. Он хорошо известен в Китае своими новыми и практичными концептуальными технологиями, а также создателем RPRX, который однажды исчез и, как считалось, сбежал. К таким технологиям относятся VLESS, XTLS-Vision, XUDP... О какой-то из них вы точно слышали или использовали.
С момента как в Китае началось внедрение новой системы цензурирование: белый список SNI (Server name indication), все инструменты обхода на основе TLS до появления REALITY и ShadowTLS, подключаемые напрямую или через транзит или CDN, стали недоступны.
Ранее широкое внимание привлек инструмент обхода ShadowTLS. Однако в то время ShadowTLS все еще находился в версии v1 с неполной кодовой базой и слабой устойчивостью к цензуре. Позже в Reality появилась возможность обходить цензуру на основе белого списка SNI, и он был интегрирован со зрелым инструментом обхода Xray-core.
Так как же REALITY обходит эту цензурную стратегию? Как понять ее детали с технической точки зрения? Эти два вопроса будут в центре внимания этой статьи. Интерпретируя исходный код REALITY, мы разберемся с конкретной реализацией REALITY для читателей.
Что такое белый список SNI? В чем связь между SNI и TLS?
Вы, возможно, знаете, что широко используемый протокол безопасности прикладного уровня, основа HTTPS, протокол TLS, имеет свой собственный «процесс рукопожатия» при инициировании соединения.
TLS был «гибридной системой шифрования» с момента разработки его первой версии. Это означает, что TLS использует как асимметричные, так и симметричные алгоритмы шифрования. Симметричные алгоритмы шифрования требуют, чтобы обе стороны имели абсолютно одинаковый ключ, а накладные расходы на шифрование и дешифрование низкие. В то время как асимметричное шифрование требует только обмена открытым ключом в своих соответствующих парах ключей, но требует проверки того, что открытый ключ не был заменен или подделан при обмене ключами, что привело к появлению механизма цифрового сертификата. Кроме того, накладные расходы на асимметричное шифрование и дешифрование высоки. Поэтому TLS использует асимметричное шифрование для передачи ключа, используемого для симметричного шифрования, и для того, чтобы обменять открытый ключ, используемый для асимметричного шифрования, родился механизм рукопожатия TLS.
Читать далееДисклеймер: идея написания этой статьи появилась у нас в преддверии 1 апреля (что и отражено в названии). Поэтому все, что написано в данной статье, является всего лишь первоапрельской шуткой.
По роду своей деятельности мы часто имеет дело с задачами в области теории вероятностей и матстатистики. Зачастую это сложные теоремы и большие формулы. Но сегодня, 1 апреля, мы решили добавить креативный подход и юмор в строгую теорию и посмотреть, что из этого получится. Итак, начинаем.
Два века назад Н.И. Лобачевский исключил одну из аксиом из евклидовой геометрии, и создал новую геометрическую теорию. Мы решили пойти по стопам великого математика и поэкспериментировать с другой важной математической теорией – теорией вероятностей, а именно: поменять один из ее постулатов и посмотреть на результат.
Привет, Хабр!
В этой статье рассмотрим, почему groupby().first() в pandas — не такая уж безопасная и очевидная штука, как может показаться. Особенно когда нужно достать первую строку группы в точности, как она была в датафрейме — с NaN, с порядком, без сюрпризов.
Но для начала рассмотрим отличия first от других подобных методов.
Читать далее15 апреля в Москве прошла специализированная выставка-конференция по корпоративному обучению «GAME & LEARN». В статье я поделюсь личным впечатлением и мнением (исключительно субъективным) об этой выставке и выводами, которые тоже будут пристрастными.
Путеводитель к статье:
I. Для чего и почему? С какой целью я отправилась на данное мероприятие?
II. Описание мероприятия, заявленное организаторами.
III. Чем можно было заняться на выставке и организационное устройство мероприятия. Взгляд со стороны.
IV. Краткое описание выступлений избранных мной спикеров.
V. Субъективные выводы.
Читать далееЗачем программисту алгоритмы?
Многие компании, нанимающие программистов, требуют от них знания алгоритмов. Некоторые даже устраивают отдельное собеседование по алгоритмам, зачастую весьма нешуточное.
Однако сами программисты нередко удивляются, зачем всё это? Действительно, работа наших коллег часто заключается в поиске и устранении ошибок в залежах legacy кода. Какие уж там алгоритмы? Даже те, кому посчастливилось участвовать в новом проекте знают, что зачастую новый проект состоит на 80% из чужого, уже кем-то написанного и найденного на просторах гитхаба кода, а новый код - это, по сути, клей и обёртки, которые позволяют склеить эти уже готовые запчасти между собой, чтобы получить заданный продукт.
Сегодня я прочитал на Хабре статью о подготовке к алгоритмическому собеседованию в Яндексе. Видно, что ребята относятся к делу всерьёз. Однако на вопрос, зачем всё таки это нужно, статья отвечает в том духе, что алгоритмическая подготовка показывает полезную готовность кандидата поотжиматься (отмечу при этом, что это не мнение Яндекса, а личное мнение человека, получившего этот опыт с обеих сторон - и кандидата и интервьювера).
Однако всё же, действительно ли основная польза алгоритмической подготовки сводится к тому, чтобы продемонстрировать работодателю свою сообразительность и готовность потратить время жизни на подготовку к собеседованиям, а в целом она не слишком полезна для нормального рабочего процесса? Или всё же алгоритмы нужны?
Попробуем разобраться