Pull to refresh
72
16.6
Send message

Преодоление глобальных кризисов. Часть 2. Мы подошли к точке сингулярности?

Level of difficultyMedium
Reading time17 min
Reach and readers9.7K

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

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

Ниже я попытаюсь объяснить, почему эта мысль растёт и усиливается во мне с каждым днём.

Если вы готовы к долгому чтению с размышлением, то прошу под кат.

Читать далее

AI для PHP-разработчиков. Часть 4: Практическое использование TransformersPHP

Level of difficultyMedium
Reading time16 min
Reach and readers11K

AI в PHP: не теория, а место, с которого можно начать

В своей прошлой статье я описал на довольно общем уровне почему тема AI вроде бы везде, но при этом почти не пересекается с повседневной PHP-разработкой. Не потому что PHP "не подходит", а потому что сам разговор обычно идёт мимо наших задач и привычного способа мышления. Ну и, конечно, о том, что почти нет материала, который объясняет AI именно для PHP-разработчиков, их задач и их мышления.

После публикации мне несколько раз задали один и тот же вопрос, в разных формулировках:

Окей, допустим. А с чего конкретно начать?

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

Читать далее

Мы пробили новое дно: change request-ы и баг-репорты, которые никто не понимает

Level of difficultyEasy
Reading time4 min
Reach and readers20K

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

Я сначала не понял, что стало происходить. Было ощущение странного дежавю: читаю change request или баг‑репорт, киваю, вроде всё логично... но что‑то не так, как будто где это уже читал. Слова правильные. Причинно‑следственные связи на месте. Термины употреблены верно. Пытаюсь понять в чём проблема — ноль. Как будто читаешь инструкцию к микроволновке, а не описание реальной проблемы. Пытаюсь прочитать ещё раз и ещё раз — с трудом продираюсь через текст с каким‑то смутным понимаем того, что написано.

И тут до меня доходит - как обухом по голове.
Мои дорогие гении из техподдержки и продакт менеджер нашли «идеальный» способ сэкономить на обсуждении технической стороны проблемы со мной. И действительно, зачем? Клиент что‑то спросил. Они прогнали это через ИИ. И ИИ вник. Глубоко. Старательно. Затем сгенерировал текст, старательно объясняя мне что нужно добавить, починить и даже каким образом это сделать (не имея даже понятия о нашей кодовой базе).

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

Читать далее

AI для PHP-разработчиков. Часть 3: Практика без Python и data science

Level of difficultyEasy
Reading time4 min
Reach and readers11K

Про AI сейчас пишут много, мягко говоря. Причём пишут буквально все, кому не лень. Но если вы PHP-разработчик, то, скорее всего, ощущение примерно такое: тема вроде бы важная, но почти всё – не для вас, а двигаться в эту сторону нужно, ибо... ну, вы и сами понимаете.

Большинство материалов сразу уезжают в Python, Jupyter, PyTorch, обучение моделей, математику и датасеты. Даже когда речь идёт не про data science, а про практику – примеры всё равно из другого мира.

Я с этим столкнулся довольно давно, когда попытался понять, как вообще можно использовать AI в обычной PHP-разработке. После нескольких практических кейсов в своих проектах у меня сложилось своё понимание ситуации. Да, я понимаю, что Python сегодня де-факто стандарт в мире машинного обучения, но есть огромное количество ситуаций, когда можно использовать AI или ML из PHP без Python-стека, а кроме того мне, как PHP-разработчику, хочется самому разбираться в теме, а не просто научиться делать API-запросы к OpenAI.

Читать далее

Когда сидишь в PHP, а мысли — о Python: как я случайно написал свой pprint

Level of difficultyEasy
Reading time4 min
Reach and readers9.5K

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

Я смотрю на этот разъехавшийся print_r(), и думаю: а что, если я просто хочу увидеть аккуратную табличку? А если я хочу форматирование как у Python? А если я хочу имитировать пайторчевский tensor([...])?

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

Этот хелпер - не "фреймворк", не "революция", не "супер-мегапринтер", просто очень маленькая утилитка, которая делает одну вещь и делает её хорошо.

Читать далее

AI для PHP-разработчиков. Часть 2: Собираем простейшую RAG-систему на PHP с фреймворком Neuron AI за вечер

Level of difficultyMedium
Reading time15 min
Reach and readers16K

RAG (Retrieval‑Augmented Generation или генерация, дополненная поиском) — это метод искусственного интеллекта, сочетающий генеративную большую языковую модель (LLM) с внешней базой знаний для создания более точных, контекстно‑зависимых и актуальных ответов. Принцип его работы заключается в том, что сначала извлекается релевантная информация из набора документов или источников данных, а затем эта информация передается в LLM для формирования окончательного ответа. Этот процесс позволяет модели выдавать более точные ответы, менее подверженные «галлюцинациям», и ее можно обновлять без дорогостоящего переобучения.

Сегодня мы разберёмся, как собрать базовую RAG‑систему на PHP (да, да, не надо удивляться) с помощью фреймворка Neuron AI. Это будет наш маленький proof‑of‑concept — минимально работающий, но вполне реальный пример.

Ну что, начнём генерацию?

Читать далее

Мой первый AI-агент на базе Neuron — PHP-агентного фреймворка

Level of difficultyMedium
Reading time14 min
Reach and readers16K

Я PHP-разработчик с многолетним стажем (от слова «много»). Привык, что мой мир — это веб‑приложения, серверный код и бесконечные «фичи» на Laravel или Yii (да... легаси — это мой конёк). В последние пару лет вокруг бушует AI‑бум: всюду слышно про нейронки, LLM, про каких‑то «агентов», которые сами решают задачи. И, признаться, временами у меня появлялась лёгкая тревога. Не отстану ли я от поезда, если не перейду полностью на Python/NodeJS или не выучу новый фреймворк? Ведь почти все примеры ИИ‑интеграций, что я видел, были на Python или JavaScript. PHP в этих разговорах фигурировал редко, если вообще упоминался.

Недавно я наткнулся на упоминание о Neuron — инструменте, который гордо назван «первым enterprise‑ready агентным фреймворком на PHP». Мой скептицизм сразу поднял голову: «Агентный фреймворк? На PHP? Серьёзно?» С другой стороны, это заинтриговало. Если всё правда, то вместо того чтобы судорожно перелистывать учебник по Python, возможно, я смогу внедрять ИИ прямо там, где мне комфортно — в PHP‑стеке. И вот я решил разобраться, что же такое этот Neuron и насколько он реален.

Погрузиться в Neuron

AI для PHP-разработчиков. Часть 1: Как я пытался подружить PHP с NER — драма в 5 актах

Level of difficultyMedium
Reading time8 min
Reach and readers9.2K

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

Читать далее

Границы мысли: Непротиворечивая математика и вопрос Бога

Level of difficultyMedium
Reading time20 min
Reach and readers1.3K

Существует глубокая и, по моему мнению, парадоксальная аналогия между двумя на первый взгляд несопоставимыми задачами: построением непротиворечивой математики и доказательством существования Бога. Обе они преследуют идеал абсолютной достоверности и завершенности знания. И обе наталкиваются на непреодолимые препятствия, вырастающие из самой природы человеческого разума.

Лично меня этот вопрос занимает уже много лет: является ли это совпадением, или же мы обнаруживаем здесь универсальный предел человеческого мышления?

Читать далее

Наш CEO хочет no-code в проде. Я против — и готов уйти

Level of difficultyMedium
Reading time7 min
Reach and readers24K

Как визуальные платформы ломают культуру разработки и зачем нам нужен контроль над кодом

У меня 25 лет опыта в веб-разработке. Я видел, как появлялись и умирали сотни инструментов, фреймворков, "революций" и "новых парадигм". Я устал повторять, что я не нео-луддит. Я не против прогресса. Но есть момент, когда вместо прогресса тебе продают иллюзию простоты, замаскированную под инновацию.

Так вот, теперь наш CEO влюбился попал под очарование Lovable и хочет, чтобы мы начали использовать его или Base44 для ускорения разработки и быстрого внедрения новых фич. По его задумке, дизайнер "набрасывает интерфейс" (в этих визуальных платформах для сборки UI/UX дизайнером), а мы "допиливаем чуть-чуть на бэке" (через API, Карл!), и всё - фича в проде. Time-to-Market стремительно сокращается, мир спасён, а мы свободны от "лишней инженерии".

Я против. Категорически. И да, это война.

Читать далее

Как я начал бояться вайб-кодинга, или почему мы доверяем ИИ больше, чем коллегам

Level of difficultyEasy
Reading time4 min
Reach and readers13K

Ещё год назад я смеялся над мемами про Copilot, который «пишет весь код за тебя». Теперь — я уже не смеюсь. Потому что вижу, как всё чаще код влетает в main почти без участия человека. Его не пишут — его принимают. Почти как оракульское послание.

Это не всегда плохо. Но иногда — страшно.

Читать далее

Преодоление глобальных кризисов. Часть 1. Частный опыт одного программиста

Level of difficultyEasy
Reading time16 min
Reach and readers2.3K

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

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

Впервые об экономических кризисах я узнал ещё в школе — нас учили тому, что капиталистический мир сотрясают перманентные кризисы. Что нужно подождать ещё чуть‑чуть и он развалится, а там народы мира выберут себе в качестве маяка социалистический путь развития, тем самым присоединившись к нам, советским людям. Всё это звучало очень логично. В СССР кризисов не было и это не могло не радовать, поэтому после просмотра программы «Время» и карикатур в журнале «Крокодил» — становилось не по себе от того, как «там» нищенствуют бывшие профессора, а студенты, окончив ВУЗы не могут устроиться по специальности. Звериный оскал капитализма, что тут говорить...

Читать далее

Information

Rating
469-th
Registered
Activity