Как стать автором
Обновить
-24
0

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

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

Информационная безопасность и глупость: необычные примеры

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

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

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

Величайшие программисты XXI века. Юрки Алакуйяла — гений сжатия

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров18K
Пару дней назад на Хабре обсуждали, что сжатие информации — главная концепция нашей жизни. И вот перед нами представитель этой самой индустрии. Человек, который видит мир через призму теории информации, энтропии, хаоса и закономерностей.

Мало кто слышал имя Юрки Алакуйяла (@jyzg), но все мы используем его разработки. Картинки JPEG частенько генерируются фантастическим JPEG-энкодером guetzli с применением психовизуальных моделей, а HTTP-трафик в интернете жмётся кодеком brotli, тоже лучшим в своём классе.

Д-р Юрки Алакуйяла — активный член опенсорсного сообщества и исследователь. Работает техлидом Google Research Europe (Швейцария). Среди последних разработок — алгоритмы сжатия JPEG XL, WebP lossless и др.
Читать дальше →
Всего голосов 88: ↑88 и ↓0+88
Комментарии5

Как программы общаются между собой

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

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

С развитием технологий, прошествием времени и увеличением масштабов ответить на этот вопрос становится всё сложнее.

Давайте совершим экскурс в историю и узнаем, как много было сделано и как мало изменилось.

Предупреждение: в статье я буду упрощать и жертвовать точностью ради понятности.
Читать дальше →
Всего голосов 39: ↑34 и ↓5+44
Комментарии8

Cicada 3301: кого и куда должны были отобрать загадки таинственной «Цикады»? Часть 1

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

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

Однако целый ряд появлявшихся в сети феноменов, пусть и не всегда пугающих на уровне ранних крипипаст, до сих пор остаются неразгаданными. Кто и что делал с аккаунтом Webdriver Torso на YouTube, заполняя его сотнями тысяч видеороликов, и что из себя представляют найденные на том же видеохостинге аккаунты семейства «Unfavorable Semicircle»? Кто забрасывал Usenet странными сообщениями с заголовками Markovian Parallax Denigrate? Кем была записана «Самая загадочная песня в Интернете», видимо, в ФРГ начала 80-х? Кем был Чумной Доктор с видеозаписи 11B-X-1371, сочетавшей фотографии трупов с мест преступлений и фильмов ужасов с закодированными сообщениями? Была ли загадка от пользователя Publius Enigma о некоем закодированном послании в альбоме Pink Floyd «The Division Bell» 1994 года шуткой или чем-то большим?

Впрочем, самой масштабной и странной из подобных историй, на мой взгляд, стоит назвать «Цикаду 3301».
Читать дальше →
Всего голосов 72: ↑69 и ↓3+85
Комментарии19

Полная история создания легенды компьютерных игр. Elite (1984). Часть 1

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

За основу я взял оригинальный текст книги «The Backroom Boys: The Secret Return of the British Boffin» (автор Francis Spufford), о которой узнал случайно. «Backroom Boys» – в Британии индустриальной эпохи так называли гениальных инженеров, которые трудились в «продуваемых насквозь зданиях на задворках фабрик», и изобрели технологии будущего.

Одна из глав посвящена созданию Elite по воспоминаниям авторов – Дэвида Брабена и Йена Белла.

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

С моей стороны получился несколько вольный перевод, заранее прошу прощения за неточности. Буду благодарен за комментарии и правки. Для поклонников «Элиты» я размещу ссылку на сайт Йена Белла, где есть авторские материалы, исходники, порты для разных ПК, новелла «Тёмное колесо» Холдстока, и даже рок-опера по мотивам «Элиты», созданная братом Йена.

Погнали!
Всего голосов 52: ↑51 и ↓1+58
Комментарии30

Автоматизируем Telegram-канал с AWS Lambda и DynamoDB

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

В этом материале вы узнаете, как создать Telegram-канал, который будет сам обновляться, получая данные из открытых источников. Используем Python, AWS Lambda, DynamoDB и BeautifulSoup.

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

Строки кода, которые изменили мир

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

{"__typename":"PageLikeAction","action_type":"LIKE","label":{"text":"Like"}


В 2009 году Facebook добавила в интерфейс своей социальной сети код, изменивший мир — кнопку «Like». «Лайк» был детищем нескольких программистов и дизайнеров — Лии Перлман и Джастина Розенштейна. Они предположили, что пользователи Facebook часто бывают слишком заняты, чтобы оставлять комментарии к постам своих друзей, и что поэтому им нужна простая кнопка, нажав которую можно было бы дать понять друзьям, что их пост вам понравился. Так оценивать и поощрять друг друга пользователям стало бы легче, а значит и делали бы они это чаще.

Это сработало — и даже слишком хорошо. К 2012 году пользователи прожали «лайк» триллион раз. У этого оказались и побочные эффекты. Многие стали публиковать фото/видео, чтобы потом сидеть и с тревогой обновлять страницу, ожидая, когда же число лайков возрастёт. Все стали гадать, почему кто-то другой получает больше лайков. Люди подсели на иглу одобрения (вместо того, чтобы сесть на чьё-то лицо), что отразилось на их повседневной онлайн-активности: старались публиковать как можно больше постов, чтобы казаться смешнее, умнее, красивее, спортивнее.

Небольшой фрагмент кода, который внёс почти незаметное изменение в пользовательский интерфейс социальной сети, изменил поведение людей. Ниже представлен список из примеров подобных важных фрагментов кода, которые изменили мир. И на самом деле это неполный список, учитывая огромное количество кода, который был написан.
Читать дальше →
Всего голосов 76: ↑65 и ↓11+69
Комментарии37

Optuna. Подбор гиперпараметров для вашей модели

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

Optuna — это фреймворк для для автоматизированного поиска оптимальных гиперпараметров для моделей машинного обучения. Она подбирает оптимальные гиперпараметры методом проб и ошибок.

В данной статье представлен обзор фреймворка Optuna, рассмотрены ее основные возможности, базовые примеры использования.

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

Как алкоголь влияет на мозг. Углубляясь в нейробиологию

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

Ром для старого пирата — это приговор. А как насчет нормального и здорового человека? Цель материала изучить не столько влияние ударной дозы во время пьянки, сколько эффект от регулярного и умеренного пития. Хотя про то, как литрами выпитый алкоголь влияет на мозг, и прав ли был доктор Ливси, мы тоже поговорим.

Читать далее
Всего голосов 103: ↑95 и ↓8+111
Комментарии260

Груг против сложности. Я пролинтил все посты на Хабре про Python, и вот что я нашёл

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

В какой-то момент времени я превратился в педанта брюзгу. В фильмах малейшие нестыковки и провалы в логике портят мне весь просмотр. В чатах меня бесит it's вместо its. А в статьях про программирование... Всё плохо. За меня всё уже сказал @AlexanderAstafiev, я лишь процитирую:

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

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

И всё заверте...
Всего голосов 119: ↑114 и ↓5+134
Комментарии153

Buy-Now-Pay-Later (BNPL) — разбираем горячий сегмент финтеха, на который облизывается Тим Кук

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

BNPL (или "рассрочка по-зумерски") - один из главных трендов розничных финансов, способный кардинально поменять потребление. Даже Apple не выдержал и совсем скоро запустит свою би-эн-пи-эльку. Мы научим различать BNPL и обычную рассрочку, расскажем про ключевых игроков индустрии и объясним снижение капитализации Klarna на примере стакана пива.

Читать далее
Всего голосов 10: ↑8 и ↓2+9
Комментарии15

Как я хакнул свой автомобиль

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

Машина


Прошлым летом я купил Hyundai Ioniq SEL 2021 года. Это хороший экономящий топливо гибрид с приличным набором функций: беспроводные Android Auto/Apple CarPlay, беспроводная зарядка для телефона, сиденья с подогревом и люк в крыше.

Особенно мне понравилась в этой машине система In-Vehicle Infotainment (IVI). Как я говорил ранее, у машины есть беспроводное Android Auto, что довольно редко для такого ценового диапазона. Приложение имеет красивые плавные анимации меню, поэтому я понял, что ЦП/GPU не такие уж и слабые; или, по крайней мере, ПО ест не слишком много ресурсов.

Как и со всеми остальными моими гаджетами, я решил немного поэкспериментировать и посмотреть, что можно сделать с этой системой.
Читать дальше →
Всего голосов 284: ↑283 и ↓1+339
Комментарии71

Все, что вам нужно знать об Airflow DAGs, ч.1 — Основы и расписания

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

Полное руководство по созданию DAG в Apache Airflow DAG, позволяющих создать конвейер данных из разных источников, запускаемый в определенные периоды времени с заданной логикой. Первая часть. Источник: DAGs: The Definitive Guide от astronomer.io

Добро пожаловать в полное руководство по Apache Airflow DAG, представленное командой Astronomer. Эта электронная книга охватывает все, что вам нужно знать для работы с DAG, от строительных блоков, из которых они состоят, до рекомендаций по их написанию, динамической генерации, тестированию, отладке и многому другому. Это руководство, написанное практикующими для практикующих.

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

Атака на String.hashCode: прообразы и коллизии

Время на прочтение8 мин
Количество просмотров12K
Дюк прощупывает сезон Java

Как-то раз мне понадобилось несколько наборов строк с коллизией по хеш-коду. То есть таких, чтобы значение String::hashCode() совпадало для всех строк в наборе.

Блуждание по интернету не дало результатов, примеров было мало и все они довольно однообразны. Поиск по словарям подарил забавную пару "javascript's".hashCode() == "monocle".hashCode(), но практической пользы не принёс. Полный перебор не рассматривался в виду скорой тепловой смерти вселенной.

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

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

[Пятничное] Теория Жоп

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

Эту полу-шуточную теорию о проектном управлении я излагал коллегам по ИТ цеху лет 15 назад, и тогда же неоднократно слышал советы загрузить этот текст на Хабр, но руки не дошли. На днях, разгребая старые файлы наткнулся на свои записи и решил все таки поделиться ими с Вами. Частое употребление ключевого слова к сожалению, неизбежно и не отделимо для целостности этого текста, прошу принимать или нет 'as is'. Итак...

Каждая карьера развивается от Жопы к Жопе, и никак иначе. Хочешь повышения - ищи Жопу и принимай, как говорят в Америке, "challenge". Если Вам предлагают возглавить новый проект, либо занять какую то должность, да что угодно - знайте, там Вас ждет Жопа. Иначе не предложили бы, а сами бы справились. Равно как и если Вы ожидаете избавиться от надоевшей Вам сейчас деятельности, надеясь вырваться из "этого ада" и заняться "чем то новеньким" - будьте готовы встретиться с Большой Жопой.

Читать далее
Всего голосов 400: ↑389 и ↓11+474
Комментарии107

Получил доступ к Dalle-2. Вы не поверите, что может нарисовать машина… Дизайнеры больше не нужны

Время на прочтение4 мин
Количество просмотров149K
Текст генерации: furry monster with green eyes looking at us, the word «habrahabr» in the background, digital art, blue background, 3d

Привет, чемпион!

Недавно мне посчастливилось стать обладателем доступа к API Dalle-2. Если ты ещё не слышал про Dalle, то это такая CLIP-архитектура, обученная на огромном корпусе пар текст-изображение. Иначе говоря — она умеет генерировать очень качественные изображения из текста. Отличить результаты генерации от рисунков человека иногда просто невозможно! Это одновременно впечатляет и в то же время — немного шокирует.

По сравнению с предыдущей версией — DALL-E 2 умеет генерировать изображения в более высоком разрешении (1024×1024 пикселей, что в 16 раз превышает разрешение в предыдущей версии модели) да ещё и намного быстрее. Более того, DALL-E 2 позволяет редактировать уже существующие изображения.

Нет больше терпения ждать, давайте же опробуем её!
Читать дальше →
Всего голосов 181: ↑174 и ↓7+220
Комментарии817

Симулятор мозга II

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

Здравствуйте, предлагаю обзор и разбор проекта Brain Simulator II от Чарльза Дж. Саймона, основателя FutureAI. Этот проект и компания малоизвестны, в русскоязычном сегменте интернета вообще нет никаких упоминаний о ней. Моё внимание компания привлекла благодаря сообщению о том, что недавно FutureAI привлекла 2 миллиона $ инвестиций. Проект оказался для меня очень любопытным и интересным, так как я сам во многом разделяю взгляды на проблематику создания AGI Чарльза Саймона, и у меня была практика создания симулятора подобного Brain Simulator II. Обзор проводится на основе общедоступных материалов с сайта FutureAI.guru, откуда можно свободно скачать сам симулятор (windows), а также найти ссылку на его исходный код (c#). Ниже будет представлен вольный перевод одной из статей с сайта, в сопровождении моих комментариев.

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

Как один мужик карту города рисовал

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

Всем привет!



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

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

Как происходит генерация мира Minecraft

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

Задумывались ли вы когда-нибудь, сколько на нашей планете песчинок? По грубым оценкам, более 7 квинтиллионов! Это 7 с 18 нулями. И всё-таки это даже меньше половины количества уникальных миров в Minecraft. Как же Minecraft и другим похожим играм удаётся создавать такие сложные, красивые, однако полностью процедурные миры? В этой статье я расскажу, как игра генерирует свои миры, от самой высокой горы до самой глубокой пещеры.

Часть 1: процедурная генерация


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

Однако первой игрой с процедурно сгенерированным миром является «Elite», первая версия которой вышла для компьютера BBC Micro в 1984 году. Это прапрадед относительно новой «Elite: Dangerous», выпущенной в 2014 году.


Автоматическая генерация новых миров может казаться привлекательным способом ленивого создания бесконечного контента для игры. Однако на самом деле всё наоборот! Чтобы научить машину тому, как выглядит хороший уровень… нужно быть очень хорошим программистом и дизайнером уровней.

Контент должен быть достаточно разнообразным, чтобы выглядеть свежим, но не настолько разнообразным, чтобы казаться атипичным. И необходимо создавать миры, на которые не просто интересно смотреть, но которые обеспечивают справедливую с точки зрения игрока сложность.
Читать дальше →
Всего голосов 67: ↑67 и ↓0+67
Комментарии17

История создания игры в одиночку

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

В игры я люблю играть с детства и играя на работе в очередную игру на телефоне захотелось что то создать самому. Из знаний были только какие то остатки основ программирования на турбо паскале. Начал шерстить интернет и понял что для начала нужно выбрать движок для игры. Игру я собирался делать в 2Д и пошерстив инет нашел несколько вариантов а именно: Unity, Constructor, GameMaker. И поизучав их понял что в unity лучше использовать для 3Д и там все же нужно знать C#. Constructor был простым для новичка как и GameMaker но отказался от него из-за того что там нужно было платить ежемесячно, поэтому выбор сделал в пользу GameMaker.

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

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность