Лисп в изгнании
248 subscribers
202 photos
21 videos
5 files
260 links
Авторский канал на околоайтишную тематику.

По всем вопросам @awkravchuk
Download Telegram
Устами Тонского, да мёд бы пить ❤️
🔥1🙊1
Forwarded from Стой под стрелой (Nikita Prokopov)
Почему-то считается, что дизайнеру или программисту круто бы думать об интересах бизнеса, что инженер, который о них думает, ценнее, чем тот, который не думает.

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

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

Я много раз разговаривал с инженерами, которые жаловались, что бизнес не дает им времени на рефакторинг или сделать нормально. Ну так он и не должен давать! Бизнес интересует бизнес, а вас, как инженера, должно интересовать, как сделать качественно, устойчиво, эффективно. К вам никто никогда снаружи с этим запросом не придет, это должна быть ваша собственная мотивация, ваши собственные ценности, ваши собственные стандарты, понимаете?

И к вам приходят, чтобы вы их продавливали. А бизнес бизнес и без вас сделает.
👍15👎1
Во, мне такое надо 😅
Девочки пишите 😂
🗿2
Forwarded from Лепра
Айтишник в 32 года нанял няню из детского сада, чтобы она следила за тем, как он работает, ест, вовремя ли ложится спать, выходит ли на улицу и не отлынивает ли от дел

Айтишники изобрели жену, поздравим 👍

🙈 Подписаться на Лепру 🙈
Please open Telegram to view this post
VIEW IN TELEGRAM
🙈7😁6❤2🗿2🔥1
#лытдыбр

Произошла так называемая новогодняя атмосфера 🪵🔥🧑‍🎄
🔥14👍1🤯1
#лытдыбр

Произошло так называемое парное программирование, я справа снизу
🔥23🍌3🥰1
#лытдыбр #проекты

Блинб, как же мощно мой новый пет-проект пет-проектиться (см. рис. 1) с использованием китайской генеративной нейросеточки с весьма неудачным названием z.ai (ссылочка реферальная, вам даст 10% скидки, и мне немножко перепадёт🌚 Сначала нужно зарегистрироваться, потом прожать кнопку Subscribe). Сеточка эта от азиатских партнёров стоит буквально копейки ($3/месяц самый дешёвый план, но я таки рекомендую Pro) и совместима по интерфейсу с Claude Code, хотя работает раза в полтора быстрее. У меня даже для неё вот такой алиас в шелле заведён:
cz='ANTHROPIC_DEFAULT_HAIKU_MODEL="glm-4.5-air" \
ANTHROPIC_DEFAULT_SONNET_MODEL="glm-4.7" \
ANTHROPIC_DEFAULT_OPUS_MODEL="glm-4.7" \
ANTHROPIC_AUTH_TOKEN="токен с https://z.ai/manage-apikey/apikey-list" \
ANTHROPIC_BASE_URL="https://api.z.ai/api/anthropic" \
API_TIMEOUT_MS="3000000" \
claude'


LLM-ки вообще здорово справляются со скучными вербозными языками, где надо целую войну и мир написать, чтобы, не знаю, кнопку там покрасить, типа там ассемблер, си, жабаскрипт и всякое такое. Из этих соображений я и фигачу этот проект с использованием стильных-модных-молодёжных "ИИ" технологий — часть проекта неизбежно должна быть написана на C, а писать всерьёз на C после лет жизни в мире лиспов ощущается как бухгалтерскую документацию в камне высекать, медные слитки там некачественные, всё такое. Эти самые новые технологии повышают производительность если не 10x, то раз в несколько точно, но если только хорошо знать и разбираться в том, что оно там генерирует, и при необходимости мягко поправлять (см. рис. 2)
🔥8❤2👍2
#clojure #лытдыбр

Засим открываю новую рубрику #историисработы. Не далее, чем вчера, видел прекрасное: вот есть в новых версиях JVM (21+) такая замечательная штука, как Virtual Threads, по сути своей — "зелёные потоки", которые шедулятся не операционной системой, а самим рантаймом JVM, и которых можно наплодить реально много, как это любят в кровавом энтерпрайзе на яве. Казалось бы, если у тебя I/O bound профиль нагрузки — вообще супер, наплодил мильён штук и пусть они там себе ждут долгого ввода-вывода.

Но, как в известном анекдоте категории Б, есть нюанс, о котором узнаёшь, только целиком переписав своё приложение на virtual threads и погоняв его в реальном продакшене. Следите за руками: (1) JVM при шедулинге, само собой, отображает виртуальные треды на реальные треды ОС, выполняя их код внутри последних; (2) когда выполняется java-метод, помеченный как synchronized, виртуальный тред, его выполняющий, не может быть "припаркован" и будет работать на реальном треде ОС до тех пор, пока метод не завершится; (3) большая часть кода, делающего реальное I/O, например, методы Postgres JDBC, помечена как synchronized. В итоге получается, что каким бы большим не был пул реальных потоков ОС, при достаточно серьёзной нагрузке на какой-нибудь условный HTTP-сервер рано или поздно пул весь исчерпается и все треды в нём будут заниматься ожиданием synchronized-методов, выполняющих I/O, которые, в свою очередь, тупо ждут ответа от сети, и, скажем, новые входящие HTTP-запросы обработать будет попросту некому.

Таким образом, производительность новых распиаренных гринтредов в яве в какой-то момент начинает напоминать таковую у многопоточного приложения на, прости г-ди, питоне, в котором уже второй десяток лет global interpreter lock не могут выпилить. Вроде как в 24 версии JVM эту проблему поправили, но это автоматически означает миграцию приложения на новую версию рантайма, что ещё чёрти что принесёт. Вот так в кровавом энтерпрайзе и живём.
👍4😭3🙉2❤1
#лытдыбр

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

Поглазеть на фотки можно тут: мини-отпуск в Ульцине, отпуск в Стамбуле
🔥10❤4😎1
#лытдыбр

Что меня продолжает удивлять в Черногории, так это ее микроскопический размер. Давеча с девушкой идем в овощной ларек, а там у входа стоят два шкафа, оснащенных пиджачками с галстучками и наушниками-пружинками. Ну я подивился, зашел внутрь, — а там довольно тесно, два человека не разойдутся, не посторонившись, и почему-то почти никого нет, хотя обычно народу много. Стоим, обсуждаем, брать ли клубнику или она пока слишком зеленая, мимо проходит невысокий чувачок характерной черногорской наружности, и тут я понимаю, что это президент Черногории. Вот так и живем тут 🙈😁
❤‍🔥11❤2👀2🥰1😱1
#видео

Лучший способ изучать computer science: смотреть видео, где дед кряхтит на новинки ("да мой сайт старее, чем этот ваш протокол HTTPS!") и вручную кодит сумасшедше смешную ржомбу 😂
Как же я его обожаю, все видео смотрел ❤️
😁6
#common_lisp

Тут широко известный в узком Common Lisp-сообществе Robert Smith, aka stylewarning, выпустил новую IDE для Common Lisp — mine. Не базируется на Emacs, всё работает изкоробки — правда, запускается почему-то только на терминалах с GPU-рендерингом, а таковых, не зашкваренных rust и прочими зигами, только одна штука — kitty; впрочем, усилия по его установке воздаются неповторимым вайбом консольного Turbo Pascal (см. рис. 2) 😊
Вряд ли стану использовать, как основную IDE (Emacs über alles), но послеживать за проектом точно стоит)
🔥13🤷‍♂1
#лытдыбр

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

Поэтому сейчас я активно ищу работу — если у вас есть на примете люди в поиске мощных инженеров-рзработчиков, скиньте им моё резюме, пожалуйста 🥺
https://awkravchuk.me/resume
😢15🤝5🤗4😭1🗿1
Лисп в изгнании pinned «#лытдыбр Ну штош, прошлая неделя была моей последней рабочей в HealthSamurai — лэйоффы не обошли стороной и этот наш уютненький островок лиспа в море кровавого энтерпрайза 😔 Поэтому сейчас я активно ищу работу — если у вас есть на примете люди в поиске мощных…»
#лытдыбр #видео

На выходных в узком кругу друзяшек провёл открытую лекцию "Поиск работы в IT с помощью LLM (без привлечения внимания санитаров)", вот и запись подъехала 😌

Кстати, мой линкедин in/awkravchuk, добавляйтесь 😊
🔥13👍1
#common_lisp

А вот посмотрите-ка, человек взял и вместо того, чтобы переписывать рантайм JS на Rust заниматься фигнёй, переписал рантайм JS на Common Lisp. Чего только не сделаешь, имея в руках такой инструмент, как серийный бредогенератор большая языковая модель 😅
🔥11❤1