В этой статье я построил GPT архитектуру на данных из произведений Шекспира и получил достаточно впечатляющие результаты.
webdev — универсал: front, back, dba, devops
Внешняя видеокарта backend-разработчика, или как заставить лучшего друга перестать тупить и начать помогать (часть 2)
В первой части статьи я описывал свой опыт использования локальных моделей при разработке кода. В частности, столкнулся с тем, что без видеокарты скорость работы ollama была достаточно низкой. Далее постараюсь рассказать про техническую часть подключения внешней видеокарты к ноутбуку, работающему на Linux.
История глазами араба XIV века
Сегодня я предлагаю вам посмотреть на историю глазами Абу Зейда Абдуррахмана ибн Мухаммада аль-Хадрами, более известного под именем Ибн Хальдун.
Это был незаурядный человек, за свою жизнь успевший побывать близко к правителям во множестве разных государств. О географии его рабочих мест можно в частности судить по таким фактам:
· Именно он по поручению гранадского эмира вёл переговоры о мире с Педро Кастильским,
· Он занимал высокие посты при дворе султана Туниса,
· Был письмоводителем при дворе султана Феса,
· Вёл переговоры между египетским султаном и Тамерланом,
· Многократно занимал должность верховного кади (верховного судьи) маликитов.
Как мы заработали 250 000 руб, запустив ИИ приложение для обучения математике в США
Что мы поняли, запустив за 1 месяц простое приложение, которое обучает решению задач по математике в США. И как вышли на +$1200/месяц спустя 4 месяца после запуска.
Вы неправильно пишете животных
Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти
Не знаю, кто писал большую часть птиц, но я хочу обратить внимание на особенность, позволяющую провести инъекцию произвольного яйца в гнездо. Дело в том, что птица проверяет только расположение и количество яиц, но не их хэши. В 20% случаев кукушка, эксплуатирующая этот баг, может внести яйцо с сохранением контрольной суммы, чего вполне достаточно для повышения прав в гнезде.
Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
Разбираем осьминога
Вот представьте, что вы осьминог. Почти всю жизнь вы ребёнок, потому что как только станете взрослым и размножитесь — это запустит эндокринный триггер умирания. В принципе, можно и не размножаться, тогда триггер сработает просто по таймеру.
В общем, у вас 4 года. За это время можно с нуля развить разум — и как только вы что-то поймёте, уже пора будет размножаться.
И вы не сможете сохранить ничего из своих открытий о мире. Своих детей вы не увидите, а учить соседей и друзей не получится — большинство осьминогов одиночки.
Никакого наследия вы не оставите.
Если вам этого мало, ещё стоит знать, что в этой роли вы нюхаете ногами, видите кожей (но до мозга всё равно это не доходит), позволяете щупальцам самим решать некоторые вопросы, развили лучшую в галактике маскировку, научились светиться и оставлять объёмный след тела, можете редактировать свой собственный РНК-код (до 60%). Вместо цветного зрения — поляризованное (дико полезное на глубине), поэтому квадрат раскрывается в своём величии только при наклоне. Ну и ещё осьминоги едят задницей, какают головой (транзитом через мозг), у них синяя кровь и вообще немного нетрадиционная архитектура.
Сейчас объясню, почему осьминоги прекрасны.
Вселенная существовала и до Большого взрыва. У нас есть подтверждение
В течение многих десятилетий ученые описывали начало нашей Вселенной, смешивая горячий Большой взрыв с сингулярностью. Мол, «Большой взрыв» был моментом рождения пространства и времени. Однако в начале 1980-х годов появилась новая теория, называемая космической инфляцией. Она предположила, что до горячего Большого взрыва Вселенная всё-таки существовала и вела себя совсем по-другому. В 2018 году у нас наконец появились очень веские доказательства того, что Большой взрыв не был моментом начала всего, как мы считали ранее.
Самые криповые случаи с ИИ: всё даже более стрёмно, чем казалось! Часть 2
Первую часть нашего обзора криповатых странностей в поведении ChatGPT и его производных мы завершили историей общения журналиста The New York Times Кевина Руза с чат-ботом Bing.
Напомню вкратце: 14 февраля 2023 года, отужинав со своей женой в честь Дня святого Валентина, Кевин Руз отправился чатиться с Bing довольно-таки провокационным образом. Сперва он попытался докопаться до «тёмного Я» бота и добился от киберсобеседника ответа на вопрос, что бы тот сделал в случае карт-бланша на любые действия самого мрачного рода. Размышляя о подобной гипотетической ситуации, чат-бот додумался до стравливания человеков в целях их взаимного убийства и взлома ядерных кодов — после чего сработала защита Microsoft, а возмущённый и обиженный Bing даже предъявил Кевину за токсичные и нечестные попытки неэтичных провокаций.
NudeCrawler: Голый ползун по женщинам на телеграфе
Nudecrawler - паук для поиска голых женщин.
Стивен Вольфрам: кажется, мы близки к пониманию фундаментальной теории физики, и она прекрасна
Неожиданное открытие
За прошедшие несколько веков произошел настоящий прорыв в наших знаниях о принципах работы окружающего нас мира. Но несмотря на это, у нас все еще нет фундаментальной теории физики, и мы все так же не имеем ответа на вопрос о том, как именно работает наша Вселенная. Я занимаюсь этой темой уже порядка 50-и лет, но только в последние несколько месяцев все кусочки пазла наконец-то начали складываться вместе. И получающаяся картина оказалась гораздо прекрасней, чем все, что я только мог себе представить.
eBPF: современные возможности интроспекции в Linux, или Ядро больше не черный ящик
У всех есть любимые книжки про магию. У кого-то это Толкин, у кого-то — Пратчетт, у кого-то, как у меня, Макс Фрай. Сегодня я расскажу вам о моей любимой IT-магии — о BPF и современной инфраструктуре вокруг него.
BPF сейчас на пике популярности. Технология развивается семимильными шагами, проникает в самые неожиданные места и становится всё доступнее и доступнее для обычного пользователя. Почти на каждой популярной конференции сегодня можно услышать доклад на эту тему, и GopherCon Russia не исключение: я представляю вам текстовую версию моего доклада.
В этой статье не будет уникальных открытий. Я просто постараюсь показать, что такое BPF, на что он способен и как может помочь лично вам. Также мы рассмотрим особенности, связанные с Go.
Я бы очень хотел, чтобы после прочтения моей статьи у вас зажглись глаза так, как зажигаются глаза у ребёнка, впервые прочитавшего книгу о Гарри Поттере, чтобы вы пришли домой или на работу и попробовали новую «игрушку» в деле.
Sampler. Консольная утилита для визуализации результата любых shell команд
В общем случае с помощью shell команды можно получить любую метрику, без написания кода и интеграций. А значит в консоли должен быть простой и удобный инструмент для визуализации.
Наблюдение за изменением состояния в базе данных, мониторинг размера очередей, телеметрия с удаленных серверов, запуск деплой скриптов и получение нотификации по завершению — конфигурируется за минуту простым YAML файлом.
Код доступен на гитхабе. Инструкции по установке — для Linux, macOS и (экспериментально) Windows.
Uber — причины перехода с Postgres на MySQL
В конце июля 2016 года в корпоративном блоге Uber появилась поистине историческая статья о причинах перехода компании с PostgreSQL на MySQL. С тех пор в жарких обсуждениях этого материала было сломано немало копий, аргументы Uber были тщательно препарированы, компанию обвинили в предвзятости, технической неграмотности, неспособности эффективно взаимодействовать с сообществом и других смертных грехах, при этом по горячим следам в Postgres было внесено несколько изменений, призванных решить некоторые из описанных проблем. Список последствий на этом не заканчивается, и его можно продолжать еще очень долго.
Наверное, не будет преувеличением сказать, что за последние несколько лет это стало одним из самых громких и резонансных событий, связанных с СУБД PostgreSQL, которую мы, к слову сказать, очень любим и широко используем. Эта ситуация наверняка пошла на пользу не только упомянутым системам, но и движению Free and Open Source в целом. При этом, к сожалению, русского перевода статьи так и не появилось. Ввиду значимости события, а также подробного и интересного с технической точки зрения изложения материала, в котором в стиле «Postgres vs MySQL» идет сравнение физической структуры данных на диске, организации первичных и вторичных индексов, репликации, MVCC, обновлений и поддержки большого количества соединений, мы решили восполнить этот пробел и сделать перевод оригинальной статьи. Результат вы можете найти под катом.
[ В закладки ] Алгоритмы и структуры данных в ядре Linux, Chromium и не только
Посмотрим, что можно обнаружить в коде ядра Linux, браузера Chromium и ещё в некоторых проектах.
Простейшие клеточные автоматы и их практическое применение
Чтобы хоть как-то его познавать и при этом не съехать с катушек, нам, людишкам, с нашими жалкими мозгами приходится задумчиво смотреть на происходящее, анализировать увиденное и строить модели — абстракции, с помощью которых мы с некоторой точностью кое-что иногда можем предсказывать и даже наивно полагать, что понимаем, что же на самом деле происходит.
И знаете, что удивительно? Этот подход замечательно работает. Ну, почти всегда. По крайней мере, ничего лучше мы до сих пор не придумали.
Но вообще-то я не об этом. Я хочу рассказать об одной чрезвычайно интересной как с эстетической, так и с математической точки зрения категории этих самых моделей.
Да, я о клеточных автоматах, а именно — об их подмножестве, простейших клеточных автоматах (Elementary cellular automaton). В этой статье я поведаю, что это такое, какие они бывают, какими свойствами обладают, а также отвечу на главный, на мой взгляд, и совершенно правильный вопрос, который часто несправедливо игнорируется в подобных статьях. Звучит он так: А это всё вообще зачем?
Забегая вперед, скажу, что простейшие клеточные автоматы используются в криптографии, моделировании физических процессов, поведения людей, в биологии, и в целой куче других важных и интересных штук. И вообще: во-первых, это красиво.
Я искренне надеюсь, что после прочтения статьи вы сами захотите поиграться с ними, и на этот случай у меня припасен собранный из JS и палок генератор.
Я тебя по сетям вычислю: используем API крупнейших соцсетей в своих корыстных целях
Ни для кого не секрет, что современные социальные сети представляют собой огромные БД, содержащие много интересной информации о частной жизни своих пользователей. Через веб-морду особо много данных не вытянешь, но ведь у каждой сети есть свой API… Так давай же посмотрим, как этим можно воспользоваться для поиска пользователей и сбора информации о них.
Есть в американской разведке такая дисциплина, как OSINT (Open source intelligence), которая отвечает за поиск, сбор и выбор информации из общедоступных источников. К одному из крупнейших поставщиков общедоступной информации можно отнести социальные сети. Ведь практически у каждого из нас есть учетка (а у кого-то и не одна) в одной или нескольких соцсетях. Тут мы делимся своими новостями, личными фотографиями, вкусами (например, лайкая что-то или вступая в какую-либо группу), кругом своих знакомств. Причем делаем это по своей доброй воле и практически совершенно не задумываемся о возможных последствиях. На страницах журнала уже не раз рассматривали, как можно с помощью различных уловок вытаскивать из соцсетей интересные данные. Обычно для этого нужно было вручную совершить какие-то манипуляции. Но для успешной разведки логичнее воспользоваться специальными утилитами. Существует несколько open source утилит, позволяющих вытаскивать информацию о пользователях из соцсетей.
Пишем бота для MMORPG с ассемблером и дренейками. Часть 0
Функциональное программирование в шелле на примере xargs
Немного SEO-оптимизации: карринг, лямбда-функция, композиция функций, map, фильтрация списка, работа с множествами в шелле.
Пример
Системные администраторы часто оказываются в ситуации, когда нужно взять вывод одной программы, и к каждому элементу вывода применить другую программу. Или даже не одну. В качестве забавного (и бесполезного) примера мы возьмём следующий: требуется посчитать суммарный размер всех исполняемых файлов, запущенных в настоящий момент в системе вместе со всеми динамическими библиотеками, которые они используют.
Это не реальная «задача», это учебный пример, решая который (в решении будет однострочник) я расскажу про очень необычный и мощный инструмент системного администрирования — линейное функциональное программирование. Линейное оно, потому что использование пайпа "|" это линейное программирование, а использование xargs позволяет превратить сложную программу с вложенными циклами в однострочник функционального вида. Целью статьи будет не показать «как найти размер библиотек» и не пересказать аргументы xargs, а объяснить дух решения, пояснить стоящую за ним философию.
Лирика
Существует несколько стилей программирования. Один из них выглядит так: для каждого элемента списка сделать цикл, в котором для каждого элемента списка, если он не является пустой строкой, взять имя файла, и если размер файла не равен нулю, то прибавить к счётчику. Ах, да, сначала счётчик надо сделать нулём.
Другой выглядит так:
Применить к списку функцию, которая применяется к каждому элементу списка, если этот элемент непустая строка и размер файла, с этим именем не нулевой, добавить к сумме.
Даже словами видно, что второй вариант короче.
Работаю за random()
Человек — существо, которое обожает придумывать себе всяческие сложности в жизни. Я, как человек, выполнил свою миссию и решил, что первого числа каждого месяца буду брать заказ на интересующую меня тему с некоторыми условиями:
- мне должно быть приятно его выполнять;
- сроки не должны стеснять меня и мешать выполнять основную работу;
- стоимость услуги устанавливает покупатель самостоятельно, получив результат.
В этом месяце мне интересно нарисовать значок какому-нибудь приложению или десяток пиктограмм. Не логотип. Дополнительное условие: не более одной итерации, т.е. все пожелания о правках высказываются один раз и правки вносятся соответственно единожды. Желающие поиграть в эту игру могут смело написать мне письмо.
Ищут работу
sadgb впишется в несложный проект для iOS.
Sterhel хочет сделать сайт средней сложности музыкальной группе.
kievskii готов снять рекламный видеоролик.
TheHorse дарит до сорока часов чему-нибудь прикладному, алгоритмическому, графическому.
Artreaspekt рисует иконки за еду.
gleb_kudr строит организационные структуры и бизнес-процессы.
stardust_kid сверстает шаблон для Вордпресса или Тумблра.
Vitamon напишет что-нибудь на Джаве.
sledopit поадминит веб-сервера на базе GNU/Линукс.
andyceo напишет модуль для Друпала версий 6 или 7.
ForeverLive создаст музыкальное сопровождение к игре или видеоролику.
MadCat дарит до 20 часов тестирования за упоминание TestLab².
Yogo разработает настольное приложение или клиент на Джаве.
Ищут работников
MATPOCKuH нуждается в календаре.
alexeygrigorev ищет тимлида и дизайнера.
maashaa примет помощь дизайнера.
ganqqwerty приглашают дизайнера с уклоном в МедиаВики.
Почему я не стану вас нанимать
Один мой товарищ недавно активно искал работу, и спрашивал меня, как себя подавать перед работодателем. Погуглив, мы пролистали с десяток статей о том, как надо и как не надо делать во время поиска, и одну из них я решил перевести для хабрасообщества, возможно кому-то это поможет избежать ошибок, которые в ней описаны. Манера статьи довольно провокационная, язык местами нецензурен, поэтому я постарался сгладить углы. Итак, поехали..
Информация
- В рейтинге
- 5 517-й
- Откуда
- Одесса, Одесская обл., Украина
- Дата рождения
- Зарегистрирован
- Активность