Ответ на пост «Компенсации за "ухудшения условий труда при работе в офисе"»1
Когда работаешь на промышленном строительстве там обычно очень и очень много гастарбайтеров. Эти обезьяны когда едят в столовой имеют обыкновение замешивать в еду кетчуп, майонез, соус чили, аджику.... Одним словом всё что они находят на столе, хуярят в порцию. Немножечко всё это томим в гастерской утробе, и вуаля. Сверхновая в кишках сбрасывается в пластиковые кабинет. Гастеров много,кабинок мало. Откачивают и промывают их нечасто. Клянусь перед выходом из дома , утром, выдавливал из себя всё до последнего. Ну и разумеется следил за своим питанием. Иначе сверхновая в кишках, и здравствуй пластиковая кабинка, в баке которой обитает голгофианский дерьмодьявол. А вы про опенспейс. После 10 лет такой работы,весь этот азиатский биомусор терпеть не могу. Ну и отдельное спасибо спасибо ИТРам нашим,белокасочникам. Тем, кто так умело организовывают порядок на площадке. Для этих господ, как правило,стоит отдельная кабинка под замком, они не парятся этими проблемами. Добро пожаловать на промстрой, граждане офисные хомячки.
«На собеседованиях я стараюсь понять, как мыслит кандидат»
Ответ tefalika в «Как отрезал)»6
В России действительно придумали Nginx. А ещё много чего в ИТ. И Тетрис тоже придумали, и крутой банкинг сделали, и крутой телеком, который не существует без ИТ-школы. Огромное количество у нас крутых ребят, причём их корни идут из энтузиастов, которые находили новые решения, учили английский, общались с такими же людьми на западе. И устроили главную "пиратскую" гавань в мире, ломая всякие программы защиты. Многие из нас тянули сети между домами и кварталами. Любой чел до ± 2000 года рождения обменивался данными путём прихода к другу со своим HDD, который перемычками ставился в позицию "раба" и на него качал контент. Потом так делал другой. СНГ дал ИТ миру очень многое, причём, без желания получить что-то взамен.
В чём была причина этого? Любознательность. Желание что-то сделать, чего не делали. Желание меняться, развиваться. Молчу уже о том, что это была сильная база математики у людей и эффект низкого старта. Нам свойственно очень быстро вникать в технологии и уметь их улучшать.
Что же изменилось? Мир изменился. Политически, экономически. Технологии стали определять мировую политику. Причём везде. Во всех сферах. Конечно, можно надрачивать на гиков Дуровых или Цукерберга, которые сделали соцсети. Но нельзя обходить те факты, что эти соцсети из прикола для поиска баб из универа стали средством массовой информации. Создатели ютуба, когда выложили первый ролик из зоопарка даже думать не знали, что их дурацкий, по их мнению, сайт станет мощнейшим инструментом пропаганды. И далее по списку. Даже, блин, Яндекс - это был в своё время акроним от английского "yet another search indexer" или вроде того. То есть, Волож и ко сделали просто "ещё один поисковик из многих". Они все относились к этому иронично. А потом внезапно стали миллиардерами.
Результат: любое государство - это не только монополия на насилие, но и ещё - монополия на информацию. То, что сейчас происходит - всего лишь исторический процесс сегментирования средств доставки информации. Скоро об этом все забудут, а восприниматься это будет как телек или радио в принципе. Никакого свободного Интернета уже давным давно нет. Нет нигде. Вопрос в охватах аудитории. Я расскажу ещё детям и внукам, что был такой странный Интернет, где было всё подряд. Мой ребенок уже не расскажет. Господа, это просто ход истории. И я не понимаю тех, кто думает, что Интернет чем-то отличается от прочих СМИ по своей сути.
Как курьер умный список покупек в Docker писал
Наверное серия постов будет, или не будет, я вообще только закончил свой пробный первый проект в докере - список покупок с синхронизацией в группе пользователей, с авторизациями, избранным, голосовым вводом, с упором на минимум тапов и максимум удобства, с голосовым вводом, потом с LLM, которая обрезана чтобы из сумбурной речи выдернуть список покупок.
Тута здеся непонятные слова, можно не подглядывать даже.
Технологический стек проекта «Список покупок»:
Backend: Go 1.23, gorilla/mux
База данных: MySQL 8, SQL
Frontend: HTML5, CSS3, JavaScript
Инфраструктура: Docker, Docker Compose, Ubuntu Server 24.04 LTS, VMware
Локальный ИИ: Ollama, Qwen 3 4B
Распознавание речи: Whisper / faster-whisper
Взаимодействие компонентов: HTTP, JSON, REST-подобный API
Голосовой ввод в браузере: MediaRecorder, WebM/Opus
Администрирование и эксплуатация: Linux, systemd timers, автоматическое резервное копирование MySQL
Естественно я с помощью chatgpt писал, но это была боль, про которую я хотел просто рассказать и поделиться впечатлением и тем как добавлял всякие фишечки, как оно чуть ли не из хелловорлда стало тем, что как по мне не стыдно даже показать.
Для начала, коротко вводная. Последние уже пару лет курьером работаю, то в самокате, то в яндексе, даже пост писал про это, но забыл пароль от аккаунта, и даже почту через которую входил. Так что пост будет от "Пикабушника 20 секунд". Если что погромирование я в школе только изучал - там паскаль был, всякие устройства ввода-вывода, потом тетрис на паскале, попытки в какую-то симуляцию гравитации. Один раз еще были попытки подружиться adnroid studio - но не срослось. С тех пор я максимум там эникей - чуть лучше мастера по обьявлению.
Начну вообще сильно сначала, как я до такого докатился от курьерства. Так случилось, что наткнулся сначала на пост, что как обновление компа можно занедорого взять какую-нибудь китайскую материнку с xeon на 28 ядер и 32гб ddr4. Подумал, присмотрел на маркетплейсе, получил, собрал вместо своей сборки на селероне, воткнул туда свою lowprofile geforce 750 4gb, да NVME. Как-то на этой сборке даже KCD2 прошел. Но сидел, и не понимал, а на кой мне эти 28 не самых быстрых ядер? Посмотрел игрульки которым бы это пригодилось - да не особо, кроме stellaris (нравится как времяпровождение вечером). Подумал еще - ну можно виртуалки поднять типа win serv, попробовать себя в доменах, да тоже без задач не прёт - непонятно что и зачем делаешь. Спросил у chatgpt, а он мне говорит - чувак, ты девопс будущий, сиди докер изучай. Я на тот момент о Docker знал что это такой синий кит для айтишников, а у девопсов положено фурсьюты носить. И что там можно на уаленке работать и деньги даже за это получать.
Штош, началось обучение. Накатил Убунту, под руководством уже устаревшего ChatGpt 3.5 вроде бы, началось - поставить докер, всё окружение к нему, какой-то go, всякое остальное, чтобы я свой первый Hello World увидел в окошке браузера на 127.0.0.1. Далее был затуп. А что можно сделать, что-то реальное, что бы я мог сам использовать. Пока думал - пытался через chatgp попробовать сделать в браузере древнюю новосибирскую забаву gopnik.exe (из промпта в начале был только readme и копипсата "игрового" процесса). Ну увидел, что через жопу, но оно работает так.
Вспомнил, что у родителей часто было такое, что регулярно им надо было согласовывать что надо в супермаркете домой купить. Каждый раз звонки - это надо? А хлеб надо? А что-то еще кончилось? Каждый раз уточнения и всё время по кругу. Решил - сделать какой-нибудь список покупок онлайн. Но так, чтобы тапов по экрану было минимум. Чтобы то что постоянно берут можно было в пару тапов отметить, что-то из редкого - вписать на раз. А в магазине это сразу увидеть и тоже отметитить в один тап, что куплено. Ну и началось.
А началась жопа. Из html у меня были только совсем основы, когда еще в школьные годы пытались свои странички рисовать в web 1.0. Накидал полукилометровый промпт в чатгпт, что я хочу, как оно должно работать, всё остальное - и получил результат - он мне сразу скинул почти готовое решение в несколько файлов. Я подкинул их - вроде даже что-то работает, кнопочки жмутся, количество увеличивается.
Но оно же не могло заработать с первого раза. Я первый раз вообще писал в окошко ИИ что я хочу, он ловко отвечал, что нужно поменять какую-то функцию, или перепиши там в css чтото. А я вот эти ваши питоны от go не отличаю, а тут сразу в разных места и sql и go и js и css и html и json и всё это непонятное. Но хуже того, я кидаю в чат все файлы разом (они тогда еще влезали в окно контекста, но только единожды) и этот ваш ИИ начинает мне переписывать их. Вот ваши файлы с функцией онлайн обновления списков - если добавили на одной странице, где заказ делать, хлеб, то на странице с которой в магазин идти - там тоже будет хлеб, причем сразу. Но только что-то докер не собирался. Я кидаю ошибку в чат - а chatgpt мне - да, точно, как филигранно написан у вас код, но вот только версии go друг с другом несовместимы. Просто исправьте на более новую, вот команда в консольку.
Я меняю, компилтся и на следующей итерации, он опять пишет на другой версии go. Ну ладно. Через эти попытки, постоянные уточнения что ему нужно делать и на какой версии приходим так скажем к версии, которая хотя бы работает
Работает так, что у меня порт через роутер проброшен наружу, я белым айпишником свечу в интернет, любой може зайти и увидеть и править список покупок, технологический стек безопасности "неуловимый джо".
Окей, я за это время немножечко наловчился - кидать не весь порект разом, а промпт был уже более технологичным - вот те файл, вот дерево файлов, вот что я хочу сделать/что не работает - он правил. Правда через полчаса уже забывал свои функции, и это как с бухим в усмерть друганом общаться - он забывал наглухо вообще что сделали, как сделали - одно чинил, ломал всё остальное. То разметка сьедет, то кнопки не жмутся, то вообще компиляци не происходит. Тем не менее, этот процесс был быстрее, чем если бы я сам сел что-то писать. Вайбкодинг как есть.
Ну и когда оно примерно так начало работать - я такой думаю - а может я в домовой чат скину, чтобы там соседи попользовались, может кто спасибо скажет. Но для этого надо хотя бы чтобы разные пользователи были. И это была фатальная ошибка что будет просто. Естественно, для этого надо было сначала переписывать как у нас сама база товаров работает, потому что пользователями там и не пахло. А значит что это алкоgpt мне похерил вообще все на первой же попытке. Я пару дней пытался чтобы у меня обратно что-то работало.
Вот с этой плюшкой, чтобы в один жест можно было купить не все товары сразу, а часть я провозился часов 5-6, чтобы оно на телефоне работало.
Яже погромист - я в дефолтном терминале код делал. Я VS Code на прошлой неделе поставил, но про это в следующем посте. Я нихера не понимал вообще что сломалось и где и как смотреть и как чинить. Было обидно, и я почти забросил это на какое то время. Но потом увидел новость про версию chatgpt поновее, да откопал в архивах убунты примерно последнее что у меня не работало и решил продолжить прогресс, ведь планов было - громадье. Ну и за примерно неделю вывел несколько в более удобный вид уже считай сервис.
Кстати, одна из штук, которая мне больше всего зашла как задумка - это реально голосовой ввод просеяный через LLM - он всё что угодно понимал и в список переводил, я почти день только промпт нужный допиливал. А вот и тестовая фраза для промпта, чтобы он учел всякое и лишнего не нёс.
Так, запиши, пожалуйста, что надо купить, а то я сейчас всё забуду. Значит, молока возьми три бутылки, хотя нет, не три, две хватит. Хлеба батон обычного и ещё один нарезной, если нарезного не будет, тогда второй обычный. Яйца десяток... нет, стоп, яйца не бери, я только что увидела, что у нас ещё две упаковки есть. Грибов возьми немного, ну килограмм, наверное, хотя если шампиньонов нет, можно вешенки.
Ещё надо что-нибудь к чаю, только не слишком сладкое — ну там печенье, вафли какие-нибудь, короче сам выбери. И для пиццы всё, потому что вечером будем делать пиццу. Тесто я вроде сама сделаю, мука дома есть, сыр тоже кажется есть, надо посмотреть. Колбасу возьми, помидоры возьми, а, нет, помидоры не надо, они у нас есть. Огурцы тоже не бери, я их сначала зачем-то сказала, не знаю.
А ещё на завтра хочу пельменей налепить, поэтому возьми муку, мясо трёх видов и минералку. Мясо — ну говядину, свинину и курицу, наверное. Хотя курицу можно индейкой заменить, если индейка нормальная будет, тогда курицу не бери. И сметаны возьми, нет, сметану не надо, она уже есть.
Для окрошки всё купи, квас дома есть, картошка тоже есть, яйца мы уже выяснили есть, так что их точно не надо. Колбаса, кажется, нужна. Огурцы нужны. Зелень какая-нибудь. Редиску возьми. И вообще если чего-то важного для окрошки не хватает — добавь сам, но не тащи всякую ерунду.
Ещё коту еды надо, обычный корм, какой-нибудь нормальный для стерилизованных. И наполнитель. Конфет дочке не надо, она вчера сама купила. А свечки для торта возьми, маленькие, потому что торт будем ставить на стол. Хотя торт мы вроде не покупаем, его испечём сами.
И ещё красной рыбы на бутерброды... нет, отбой, рыба осталась после праздника, её не покупай. Масла сливочного пачку возьми. Нет, погоди, масла тоже не надо, его буквально вчера купили. Лимоны два штуки. И кофе, обычный молотый, одну пачку.
Вроде всё. А, чуть не забыл: если будешь проходить мимо овощного, возьми картошки килограмма три. Хотя картошку мы для окрошки уже вроде дома имеем... но три килограмма всё равно возьми, потому что потом пригодится. Всё, теперь точно всё.
Теперь всё реально удобно, голосовое распознавание есть, тёмная тема, PWA, офлайн режим который помнит список даже на парковке, логины по приглашениям, группы, сейчас следующий этап - это алису прикрутить чтобы вообще без тапов добавлять себе в список покупок, потом динамическую фильтрацию товаров, если списочек большой. И еще несколько приколюх, которые не будут засирать интерфейс, но кажется, что будут удобнее. Единственное, у меня QWEN сейчас на процессоре крутится, и обрабатывает голосовой список несколько секунд, так что если кто хочет попробовать - не ругайте голосовой ввод, я и так постарался, чтобы он не сразу всё отадавал, а по мере формирования списка.
Это мне qwen чайный пирог предлагает к чаю. Нерешаемо на данный момент - qwen поумнее будет отвечать минут по 5.
И да, если кто-то хочет попробовать, у меня там сейчас регистрация по приглашениям, чтобы мой процессор дома не охренел LLM крутить. Напишите, я кину ссылку в личку и код приглашения. Я бы очень рад был любым отзывам.
А то что оно в темном режиме на пикабу похоже - это я случайно увидел, уже когда темную тему доделывал вчера. В следующем посте расскажу уже про то как всякие плюшки для удобства придумывал.
Заставили программиста заполнять отдельный отчёт по безопасности. Он проверил свой стул
Есть у меня приятель, назовём его Майк. Раньше он работал программистом в компании, которая занималась автоматизацией на стройках.
В бригаде было три-пять электриков. Они прокладывали трубы для кабелей, тянули провода и подключали оборудование. А Майк настраивал всё это хозяйство, чтобы системы работали вместе.
Рабочее место у него было нехитрое: маленькая комнатушка, походный стул, который он принёс из дома, и ноутбук на самодельном столике.
На стройках с техникой безопасности строго. Каждое утро бригада обязана проводить инструктаж, после которого все расписываются в специальном бланке FLHA — оценке опасностей на рабочем месте.
Однажды специалист по охране труда заглянул к Майку и спросил, где его бланк. Майк показал общий документ, который утром заполнила вся бригада.
Но специалист заявил, что Майк обязан заполнять отдельный бланк, поскольку его работа отличается от работы электриков.
Майк попытался объяснить, что сидит в помещении, где все строительные работы уже закончены. Осталось только программирование. Никаких дополнительных опасностей, которые нужно отдельно описывать, там нет.
Но специалист стоял на своём: работа другая — значит, и бланк должен быть отдельный. Заполняй, и точка.
Ну что ж, раз положено — будем выполнять.
С этого дня Майк начал ежедневно заполнять отдельные бланки по технике безопасности. И посвящал их проверке своего походного стула.
Причём подходил к делу основательно: проводил проверку безопасности по пяти пунктам. Осматривал ткань на предмет разрывов, проверял заклёпки на износ, пластиковые ножки — на наличие трещин и так далее.
Каждое утро. Новый бланк. Новая проверка стула.
Через пару недель специалист по охране труда снова заглянул к Майку и попросил показать заполненные документы.
Майк протянул ему целую стопку бланков за последние две недели.
Специалист начал читать. Один лист, второй, третий... Майк наблюдал, как с каждым новым документом лицо проверяющего становилось всё мрачнее.
Наконец тот дочитал стопку, поднял глаза и сказал:
— Знаешь что, с этого момента можешь просто расписываться в общем бланке своей бригады. Мне даже стыдно, что теперь придётся подшивать все эти отчёты.
И ушёл, качая головой.









