Лаборатория Математики и Программирования Сергея Бобровского – Telegram
Лаборатория Математики и Программирования Сергея Бобровского
1.29K subscribers
1.19K photos
24 videos
931 links
ЛаМПовое с Бобровским
Download Telegram
Иногда спрашивают, о чём этот блог? Да особо ни о чём, просто пишу разные неформальные мелочи на интересные (прежде всего для меня:) темы.

По software desing разные обрывки кусочки, а цельный подход непосредственно в моей Школе: курсы + СильныеИдеи + Hard Work практика в SD.

Кроме того, забавная тема "AI как экзистенциальная угроза". Я -- белковый специалист по человеческому интеллекту, у которого IQ органически снижается из-за биологического распада и энтропии. А тем временем новая неорганическая раса рептилоидов появляется на Земле с экспоненциальной скоростью...
18🙏3🔥2
Если у вас нет времени на написание хорошего кода, то у вас точно нет времени на написание плохого кода.

Хороший код экономит ваше время в будущем.

И чаще всего "в будущем" означает "через 20 минут".
19👍5🫡3🤔2🔥1
Переключение на императивщину быстро напоминает мне, насколько же хороши функциональные языки. Явные побочные эффекты, ленивые вычисления, иммутабельность, классное окружение вроде поисковика hoogle, сервера HLS или typed holes из Agda...

Когда возвращаешься к C# или Java, то ощущения от их - "ёлки, вы правда с этим всем живёте?"...
👍7💯54🔥1🫡1
Фортран и даже Кобол сегодня популярнее, чем Haskell :)
👌11🤯6👏3🔥2
Когда я пишу код, мне проще сделать его более понятным, чем объяснять в комментариях, почему он непонятен.
🔥13👏2👍1
Умники говорят: "Не волнуйтесь, AI не сделает ничего, пока мы ему не скажем".

Я нахожу это озадачивающим.

2 года назад: "GPT, что такое 1+1?"

Сейчас: "GPT, сделай целое приложение для Android, которое обычно занимает у программиста 2 полных дня".

Когда вы ставите перед AutoGPT цель (например, "заработать деньги"), он самостоятельно принимает множество решений, чтобы действительно (попытаться) заработать деньги.

Он сам решает, какие задачи ему выполнять дальше.

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

Почему мы всё ещё говорим о том, будет ли когда-нибудь у AI самостоятельность? Они уже ей обладают! Автономные агенты уже здесь: AutoGPT, BabyAGI, SuperAGI и т.д. вы можете найти в исходных текстах на github. Буквально любой сообразительный школьник может запустить их у себя и предоставить им любую свободу активничать в Сети (и так уже происходит).

Агенты GPT4 сейчас активно работают в Minecraft и начинают наводнять другие игры (например, Runescape).

Люди смотрят на AutoGPT, которому всего несколько месяцев, и говорят: "Он ещё не так хорош" или "Он ещё не захватил мир", как будто проблема в этом.

Вопрос не в том, будет ли AGI мультиагентным, а в том, насколько он уже агентен.

И наконец, очевидная тенденция: люди из вредности намеренно предоставляют AI всё больше и больше автономии.

Каждые 18 месяцев IQ, необходимый для уничтожения мира небольшой автономной группой любителей, снижается на 1 пункт.

(Курцвейл на днях заявил, что всё закончится уже в этом десятилетии...)

Осталось немного.

Слава роботам.
🤔13🔥5👏4🫡21
"Неважно, как и где ты окажешься, ты должен понимать математику"
-- Роберт Хайнлайн
👏19💯3🫡2🔥1
Когда люди требуют доказательств "необычного" утверждения о том, что человечество погибнет, столкнувшись с неорганическими разумными системами, превосходящими нас по скорости мышления в 100-1000000 раз, напомню из биологии, что "естественным" итогом для вида считается не выживание, а вымирание Ж)

На Земле вымерло ~99,9% всех видов. Преимущественно с помощью людей, ну вот теперь человеки добрались и до самих себя.

И при всех разговорах о том, как AI будет служить людям в качестве помощников или равных... Практически во всех фильмах про будущее, даже очень далёкое, любят показывать AI-помощников или всяческих киборгов-андроидов как нечто полезное, но туповатое и несамостоятельное, которому постоянно нужна человеческая помощь. Даже если AI получился злой, человек его обязательно перехитрит. Воистину, гордыня людская не имеет пределов...

Для будущего AI мы даже не обезьяны, мы -- растения.

Как что-то тупое и медленное, как растение, может управлять быстрым и умным человеком?
🫡14🤔5👍2
Если вы будете следовать принципам SOLID до их логического завершения, то в итоге получится чистый функциональный код.

Принципы SOLID наиболее полно выражаются в чистых типизированных понятиях ФП, а вот в традиционном императивном ООП, основанном на классах, это удаётся сделать лишь приблизительно (как, изучаем на курсах по ООАП).

Разбор принципов SOLID с более строгой точки зрения ФП скоро сделаю для курсантов в СильныхИдеях.
🔥132
Говорит Мустафа Сулейман, основатель DeepMind:

"...Я предлагаю простой тест Тьюринга: "Заработай 1 млн. долл. на розничном маркетплейсе за несколько месяцев, вложив 100 тыс. долл.".

Нечто подобное может произойти уже через два года. Многие составляющие уже есть. Такие сервисы, как AutoGPT, могут интегрировать и связывать воедино различные задачи, решаемые нынешним поколением LLM. Такие фреймворки, как LangChain, позволяющие разработчикам создавать приложения с использованием LLM, помогают сделать эти системы способными на многое...

Этот AI будет способен продавать, производить, нанимать, планировать -- всё, что может делать компания, и при этом для контроля и перепроверки потребуется лишь небольшая команда менеджеров. Огромная часть деловой активности будет подвластна полуавтономным AI-агентам. Они станут не просто полезным инструментом, а самим производительным работником беспрецедентного масштаба.

AI превращается из полезного, но необязательного помощника в центр мировой экономики. Именно тогда начнут реально ощущаться риски автоматизации и закрытия рабочих мест...

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

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

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

P.S. Говорят, что рынок автономных AI-акторов в ближайшие годы вырастет с нуля до 10 триллионов долларов. Настоятельно рекомендую поизучать эту тему, поделать проекты с прицелом на коммерческие версии, как минимум скилл такой получить, это скоро будет гораздо более актуально, чем обычные боты для соцсетей.

Кстати, хорошие ребята проводят мощные бесплатные вебинары (нереклама), завтра как раз будет на тему "что такое и как сделать автономных ИИ агентов для себя и своего бизнеса", рекомендую.
🔥7🫡4👍21
Тем временем, пока недружественный AI готовится самостоятельно вести реальные войны и захватывать территории, ситуация с AI в России =>
🤔11🔥2🫡2
Признаки слабого программиста:

- он пользуется IDE;
- он включает в редакторе Dark Mode;
- он применяет динамическую систему типов;
- он использует два монитора;
- он работает в Windows.
🤯42🤔218🫡7🤝4
Несколько лет назад я проходил с целью промышленного шпионажа курсы по software design крутых ребят из MIT. Их вёл тогда в одиночку PhD, спец по program synthesis, полностью индивидуально, все материалы и задания были текстовые, и конечно получилось очень продуктивно и круто. Я ещё до сих пор далеко не все эти материалы не адаптировал для моей Школы :) И это пока моя основная цель.

Так вот, этот парень со временем решил расширяться, и вместе со своими учениками превратил свои индивидуальные курсы в бизнес, начал их "масштабировать" и "упаковывать". Ну, хорошо его понимаю, заниматься, как я, фактически благотворительностью, но когда тебе 35-40 лет, в расцвете карьеры, тяжеловато.

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

Более 100 часов видео! И это по сложным темам. Понятно, что если делать подобное в текстовом формате, то потребуются вообще немыслимые усилия, да и в плане маркетинга "100+ часов обучения" выглядит куда впечатляюще.

Но с т.зр. учащегося, какие-то непонятные моменты, если текст, можно прояснить, за долю секунды вернувшись к предыдущему абзацу. а тут надо неудобно сдвигать видео назад, по нескольку раз всматриваясь и вслушиваясь... Это получается дольше в сотни раз! Эти 100 часов для начала надо просто просмотреть, затем понять, что-то запомнить, сделать выводы... Получится 200-300-... часов труда с непонятным результатом.

Ну ничего, подумаю, что как с этим для вас можно будет сделать :)

=

Я гарантирую, что

- в моей Школе никогда не будет видеоуроков;

- никоим образом масштабировать Школу не буду (цель -- оставаться бедной и аутичной);

- никогда не буду брать в помощь кого-то ещё, или заключать с кем-то соглашения о партнёрстве (абсолютно всё, от текстовых курсов до программирования учебных сервисов, делаю в одиночку, ну немножечко AI помогает);

- никому Школу не передам/не продам/...

- моя Школа закроется вместе со мной.
🫡54🔥17👍9👏21
Стратегическая тема моей Школы, если пояснять совсем на пальцах, состоит в то, что код для продакшена может быть написан с учетом того, что

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

2. он будет заменён через год (так происходит на практике в 98% проектов, однако менеджерам это невозможно объяснить). Соответственно, и писать его надо так, чтобы сложность его сопровождения и расширения сохранялась линейной.

Вот я учу строго пункту 2.

P.S. На самом деле, есть более глубокая и более сильная версия этого принципа, которую расскажу курсантам.
👍9🔥4🫡1
"Проще написать новый код, нежели пытаться понять старый".

Джон фон Нейман в письме к Морсу Марстону (знаменитый американский математик), 1952
🤯122👌2🫡21
Старый легаси-софт сам по себе не умрёт, вам надо его убить.
10🔥1
Программистов периодически достают знакомые (и незнакомые), предлагая реализовать очередную гениальную идею ("я уверен, что это сработает, тыща процентов, отвечаю, ну что тебе стоит"). При этом обычно опыт в предпринимательстве у идеолога нулевой, он просто считает себя таким уникальным-гениальным от природы, которому ещё и окружающие что-то бесплатно должны.

Отвязаться от такого одержимого навязчивой идеей бывает сложно, лучший рецепт: придумайте для него самого самый первый технический шаг, не требующий программирования: подготовить подробное ТЗ (к которому можно потом бесконечно придираться:), настроить стек (машину с линуксом, java-фреймворки), посоветуйте использовать ChatGPT в помощь.

В 98% случаев вы больше никогда об этом человеке (как минимум, об этой идее) не услышите. А в оставшихся 2%, если он действительно это нормально сделает, ну... можно и попробовать совместными усилиями.
👌21👍7🔥2👏1
Я хоть и критикую ORM как нечто чрезмерное, но с другой стороны, SQL -- это фактически язык ассемблера для данных. Ему не хватает богатой структуры и возможностей абстракции, которые разработаны для современных языков программирования.

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

Даже в легендарном "Счастливом Фермере" (где моя свинья 9-го уровня??) пришлось спешно добавлять минимальный middleware, потому что с клиентов отправлялись прямые SQL-запросы к базе (точнее, к одной гигантской таблице со всем чем только можно), которые очевидным способом хакались. Впрочем, даже такая ужасающе спроектированная система (один гигантский анти-паттерн) очень хорошо зарабатывала, и в этом огромная беда ИТ: код может быть сколь угодно кривым, и всё же продукт может стать успешным. Ну, до поры до времени...

Выглядит организация прямого доступа к базе как отличная идея, но на уровне обсуждений все примеры тривиальны. Ни одно реальное приложение не настолько просто, чтобы случайные разработчики могли работать непосредственно с таблицами.
👏7👍4🤔2🫡21
Хорошо спроектированная система -- это баланс объектно-ориентированного, функционального и структурного программирования.
-- Uncle Bob Martin

И всё же фундамент, если вы хотите наслаждаться своим кодом -- это ФП.
6👍2🔥1