Pull to refresh
3
0
Яков К @zlo

User

Send message

Теория игр за 15 минут

Level of difficultyEasy
Reading time15 min
Views53K

Многие из вас, я уверен, слышали о теории игр в какой-то момент своей жизни. Если вы хотите выглядеть умным и произвести впечатление на свою девушку — просто упомяните «игру с нулевой суммой» или «эволюционную стратегию», и ваши шансы отвести её домой сегодня вечером только что подскочили на 50%. Или вы можете использовать теорию игр, чтобы принимать решения в инвестировании своих денег (чтобы их полностью потерять и разориться) или, например решая, на какой девушке жениться (что также очень вероятно вас разорит). Как видите, это очень полезная теория.

Чтобы казаться умным - достаточно выучить эти пару выражений, но чтобы на самом деле что-то понимать - придется разобраться. Оказывается, это не так уж сложно и довольно интересно. Давайте посмотрим.

Читать далее
Total votes 109: ↑106 and ↓3+103
Comments27

С новым годом: GPT в 500 строках на SQL

Reading time42 min
Views37K

В минувшем году все только и говорили об ИИ и о том, как он может всё за вас сделать.

Мне нравится, когда кто-то или что-то работает за меня. Поэтому решил: попрошу-ка ChatGPT написать за меня новогодний пост:

«Эй, ChatGPT. А ты можешь реализовать большую языковую модель на SQL?»
«Нет, SQL не подходит для реализации больших языковых моделей. Язык SQL предназначен для выполнения запросов к данным, хранящимся в РСУБД и для управления этими запросами. Для реализации большой языковой модели требуются сложные алгоритмы, обширные датасеты, а зачастую — и фреймворки для глубокого обучения. SQL всеми этими возможностями не обладает.»

Что ж, лишний раз убеждаешься, что, если хочешь что‑то сделать хорошо – сделай это сам.

Давайте же воодушевимся этим оптимистическим планом и реализуем большую языковую модель на языке SQL.

Читать далее
Total votes 215: ↑211 and ↓4+207
Comments21

LLMClone: как клонировать себя в Telegram

Reading time8 min
Views17K

У меня, как и у многих, довольно много чатов в телеграмме. Иногда просто нет времени (а иногда и не хочется) отвечать на некоторые сообщения. Именно так возникла идея создания виртуального клона. В статье рассматривается простая идея, состоящая в том, чтобы зафайнтюнить языковую модель на личных сообщениях, выгруженных из Telegram-чатов. Возможно, в дальнейшем такой клон сможет общаться за вас

Читать далее
Total votes 33: ↑32 and ↓1+31
Comments34

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

Level of difficultyHard
Reading time29 min
Views84K

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

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

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

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

Раздача как-либо использует ресурсы провайдера сверх нормы? — Нет.
Читать дальше →
Total votes 298: ↑296 and ↓2+294
Comments91

Холод без электричества? Да, бывает: абсорбционный холодильник

Level of difficultyMedium
Reading time10 min
Views35K
Картинка BRGFX, Freepik

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

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

А если я скажу вам, что существует способ получения достаточно низких минусовых температур без какого-либо электропитания?
Читать дальше →
Total votes 107: ↑105 and ↓2+103
Comments232

Что делает ChatGPT… и почему это работает?

Level of difficultyMedium
Reading time75 min
Views145K

То, что ChatGPT может автоматически генерировать что-то, что хотя бы на первый взгляд похоже на написанный человеком текст, удивительно и неожиданно. Но как он это делает? И почему это работает? Цель этой статьи - дать приблизительное описание того, что происходит внутри ChatGPT, а затем исследовать, почему он может так хорошо справляться с созданием более-менее осмысленного текста. С самого начала я должен сказать, что собираюсь сосредоточиться на общей картине происходящего, и хотя я упомяну некоторые инженерные детали, но не буду глубоко в них вникать. (Примеры в статье применимы как к другим современным "большим языковым моделям" (LLM), так и к ChatGPT).

Читать далее
Total votes 248: ↑248 and ↓0+248
Comments121

Как айтишник гигантские арбузы в средней полосе выращивал. Часть 1

Level of difficultyEasy
Reading time8 min
Views23K

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

Своеобразная “инструкцию для начинающих” получилась довольно объемной. Мы  разделили ее на две части: в первой автор разбирает теоретические основы, а во второй переходит к практике.

Осторожно, много фото!

Читать далее
Total votes 86: ↑85 and ↓1+84
Comments23

Ошибки, которые я совершил, будучи молодым менеджером

Level of difficultyEasy
Reading time9 min
Views19K

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

Ниже я дам небольшую, старательно собранную подборку собственных ошибок и стратегий, которые помогли их преодолеть.
Читать дальше →
Total votes 47: ↑43 and ↓4+39
Comments4

Как выучить что угодно в 7 раз быстрее и эффективнее

Reading time4 min
Views116K

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

Удивительно, но такое средство было найдено в 1990 году американским социологом Майклом Хоу. Он провел серию тестов среди студентов и определил, что пользователи «волшебного средства» в 7 раз лучше запоминали материал, легко вспоминали факты и легко применяли знания на практике.

Тот, кто использовал «волшебное средство» был наголову выше обычных студентов. «Обычные» хуже помнили материал и хуже его понимали, более того, даже одаренные отличники были слабее тех, кто использовал это «волшебное средство».

Это удивительное средство...

Читать далее
Total votes 165: ↑118 and ↓47+71
Comments124

Примеры кошмарного программирования вокруг нас. Выученная беспомощность

Reading time6 min
Views40K

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

Возьмём классический пример — реестр Windows. Этот странный артефакт инженерной мысли представляет некое подобие иерархической БД для хранения абсолютно всех настроек — и системных, и приложений, и драйверов. Центральное бинарное хранилище заменило массу файлов .ini, разбросанных по всей системе и должно было упростить жизнь. Но вышло наоборот. И глядя на монструозный тормозящий конструкт, возникает только один вопрос: как это исправить? Ответ тоже простой: «Если вкратце, то никак». И так во всём. Мы создаём монстров, а потом не можем от них избавиться.
Читать дальше →
Total votes 101: ↑84 and ↓17+67
Comments184

Быстро и дёшево: проверяем сложную гипотезу без разработки за три дня

Reading time11 min
Views6.1K

В прошлом году я прочитал книгу «Спринт. Как разработать и протестировать новый продукт всего за пять дней». Это книга-методичка, в которой описывается быстрый и проверенный формат тестирования идей — дизайн-спринт. Авторы рекомендуют выбирать рискованные и дорогие в разработке гипотезы, которые могут быть потенциально перспективными.

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

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

Читать далее
Total votes 21: ↑18 and ↓3+15
Comments4

ИИ для прогнозирования тренда стоимости Bitcoin на данных Twitter. ч.1

Reading time9 min
Views11K

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

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments20

Использование Gatling. Разбираемся в тестировании HTTP

Reading time8 min
Views8.1K

Всем привет! Это команда тестирования производительности Тинькофф, и мы продолжаем цикл статей о Gatling. 

В предыдущей статье мы рассмотрели базовые возможности инструмента Gatling, узнали, как быстро создать шаблон gatling-проекта, и познакомились с новыми функциями библиотеки gatling-picatinny. Сегодня расскажем, как при помощи этих инструментов создать проект для тестирования HTTP-протокола.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments3

Как прогнозировать временные ряды с ETNA

Reading time7 min
Views12K

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

[Под катом много картинок и GIF]

Читать далее
Total votes 14: ↑14 and ↓0+14
Comments0

Микрооптимизация кода на Go на примере простого веб-сервиса

Reading time15 min
Views15K


Привет, Хабр! Я работаю старшим Go-разработчиком в «Лаборатории Касперского». Сегодня хочу поговорить о том, как искать узкие места и оптимизировать код на Go. Разберу процесс профилирования и оптимизации на примере простого веб-сервиса — покажу, с помощью каких встроенных инструментов искать функции, активнее всего использующие CPU и память. Расскажу, какие можно применять подходы, чтобы повысить производительность. Хотя речь пойдет о микрооптимизации, в моем примере шаг за шагом производительность удалось поднять в 5 раз!

Читать дальше →
Total votes 33: ↑32 and ↓1+31
Comments13

TINKOFF-INVEST. Разработка торгового робота на JAVA. Часть 1

Reading time16 min
Views21K

Многие что-то слышали, некоторые даже пробовали, но лишь единицы рассказали о таком мощном и удобном инструменте автоматизации биржевой торговли, как TNIKOFF INVEST API. Полностью раскрыть все возможности API или написать полноценного робота в рамках одной статьи – непосильная задача, поэтому будем двигаться постепенно, не перегружая мозг читателя чрезмерным объемом информации.

Если разработка программного обеспечения не входит в сферу ваших интересов, но слова "акции" и "брокер" не являются чуждыми, то загляните под кат ради интереса, где можно будет узнать о том, что тикер неуникален, а также о таких идентификаторах, как ISIN и FIGI, кроме того, в конце статьи будет доступен для скачивания свод инструментов, доступных у брокера TINKOFF. Чуть не забыл, еще и про всеми любимый Agile немного можно почитать.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments30

Архитектура Вселенной, часть 1: Сознание

Reading time26 min
Views43K

'По одной капле воды человек, умеющий мыслить логически, может сделать вывод о возможности существования Атлантического океана или Ниагарского водопада, даже если он не видал ни того, ни другого и никогда о них не слыхал' - Артур Конан-Дойль, «Этюд в багровых тонах».

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

Трудно переоценить влияние философии на науку, так как наука произошла именно от философии. Использующаяся для формализации процесса рассуждений математика стала первенцем философии. Даже сами слова "философия" и "математика" произошли из терминов религиозной школы одного из величайших философов античности - Пифагора. Физика, названию которой мы обязаны другому великому античному философу - Аристотелю, примерно до XVIII века именовалась натуральной философией. Ему же мы обязаны появлением логики - науки о мышлении. Кроме того, философы, изучавшие процесс познания и его ограничения, создали важнейший инструмент исследования природы - научный метод.

Даже многие научные открытия последних веков были вдохновлены философией. Иоганн Кеплер, Николай Коперник и Исаак Ньютон вдохновлялись теорией о гармонии мира Пифагора, о чем сами и писали в своих научных трудах. Альберт Эйнштейн был ярым приверженцем философии средневекового философа Бенедикта Спинозы, но также считал себя в некотором смысле платоником и пифагорейцем. Один из основоположников квантовой механики Эрвин Шрёдингер написал целую книгу о том, как его открытия в квантовой механике согласуются с индийской философией веданты.

До сих пор в западных университетах всем специалистам в точных и естественных науках, успешно защитившим свою диссертацию, присваивают почетное звание доктора философии - Philosophiæ Doctor, часто сокращаемое в речи и на письме до простого PhD. Тем самым университеты подчеркивают, что философия лежит в самом основании всего человеческого знания. Но чем именно занимается философия, в чем состоит её роль?

Читать далее
Total votes 32: ↑26 and ↓6+20
Comments314

Неожиданные причины торможения программ и систем

Reading time29 min
Views48K

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

Я назвал пост Surprisingly Slow потому, что замедление было для меня неожиданным, или неоптимальные практики, ведущие к замедлению, настолько распространены, что многие программисты будут удивлены их существованию.

Разделы поста чаще всего никак не связаны друг с другом, поэтому можете выбирать самые интересные для вас.
Читать дальше →
Total votes 112: ↑111 and ↓1+110
Comments88

Как собрать свой Lighthouse

Reading time11 min
Views6.1K

Чем интенсивнее наш feature delivering, тем быстрее падает производительность. И, конечно, приходит время автоматизировать процесс слежения, чтобы просадка не дошла до прода или даже staging-окружения.

Про прод-мониторинг, оптимизацию и ручной анализ производительности легко узнать на web.dev. Но по автоматизации слежения за производительностью до того, как фичи покатятся в прод, информации не так уж много. Сегодня расскажу, как для профилирования собрать практически свой Lighthouse, чтобы проводить performance-тесты и успешно бороться с просадкой в работе команды фронтендеров.

Читать далее
Total votes 22: ↑22 and ↓0+22
Comments3

Собираем 8-битный компьютер

Reading time16 min
Views43K

Привет! Я всегда хотел собрать свой компьютер — не только в теории понять как «бегают» биты, складываются числа, работают прерывания, как программный код превращается в нули и единицы. У меня получилось и я хотел бы поделиться своим опытом. Это заняло у меня 140 часов и $400 на все компоненты и их доставку. Если вам интересно узнать о проекте, спускайтесь под кат.

Читать далее
Total votes 74: ↑73 and ↓1+72
Comments54
1
23 ...

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity