Такты, стеки, два колеса
1.35K subscribers
487 photos
26 videos
4 files
342 links
О технологиях, научной фантастике, программировании и схемах.

Навигация по каналу: https://t.me/clockstackwheels/3

Чат канала: https://t.me/joinchat/VNhNF1NF70dkFgUX
Download Telegram
Вот такой ляп в четвёртой серии «Чужой: Земля». Персонаж, который должен быть супер гением, цитирует третий закон Артура Кларка, но почему-то приписывает его Азимову. Вроде бы никакие сюжетные особенности не должны в этом месте допускать именно ошибку персонажа. Я даже переключился на оригинал, чтобы убедиться, что это не косяк переводчика.

Тогда что это? Ошибка сценариста, которую прозевал режиссёр, монтажёр, звукач и сам актёр? Причём, это же не какое-то нишевое знание. Законы Кларка вообще попса в кинофантастике, особенно третий, его очень любят в Голливуде, даже в каких-то Трансформерах был. #fiction
😁91👍1🔥1👏1
Media is too big
VIEW IN TELEGRAM
Trigger warning: скрепы.

TL;DR: Я сделал механическую игрушку на российский конкурс, и это была очень сложная инженерная задача.

Несколько месяцев назад Российское Общество «Знание» объявило конкурс «Родная Игрушка»: нужно было отправить идею какой-нибудь куклы, модельки, конструктора, настолки итд, которая впоследствии может производиться в России и обладать соответствующим культурным или научным колоритом. Было подано что-то около 22 тысяч идей, я отправил две. В следующий тур вышло несколько сотен, в том числе внезапно одна из моих — заводная подводная лодка, которая плывет не вперед, как существующие заводные игрушки для ванны, а прям погружается и всплывает. Связал я это не с военными подлодками, а с научными глубоководными аппаратами, по которым у России несколько мировых рекордов. Вы знали, например, что Кэмерон брал наши глубоководные «Мир-1/2» для съемок Титаника? А еще они первыми достигли дна Северного Ледовитого Океана.

После отбора вы попадали в этап моделирования, где нужно было сделать 3D-модель, чертежи, спецификацию, описание и так далее. Здесь я уже не обошелся без помощи профессиональных 2D и 3D художников. Заказал эскизы и моделирование внешнего вида, а сам уже в Компасе дорабатывал нужные элементы для сборки.

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

Герметичность корпуса, например, испытывает противоположные воздействия при движении в среде вверх и вниз — швы, не пропускающие при погружении, начинают пропускать при всплытии. Разница в два грамма балласта на таких масштабах влияет на плавучесть очень значительно, поэтому балласт должен легко регулироваться (я остановился на двух отсеках с ружейной дробью). Мультипликатор заводного механизма пришлось перепроектировать пять раз, попутно печатая фотополимером зубчатые колеса с модулем пол миллиметра. Сделать фотополимер цветным с устойчивостью к воде — офигенно непростая задача с не самым очевидным решением: в жидкий раствор с нужным базовым оттенком подмешивается пигмент для эпоксидных смол, и только потом печатается на чуть увеличенной засветке. Сделать полностью прозрачное стекло не вышло, но и текущая частичная прозрачность получилась не сразу. Даже у жетонов был десяток итераций, чтобы они не оказались слишком тяжелыми, и чтобы металлическое ядро для захвата магнитом не было слишком далеко от стенок. Добавьте сюда подбор шага и размеров винта, сложности работы с моделью такой формы, летнюю жару, из-за которой постоянно забивался подающий механизм принтера...

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

#gadgets #diy #hobby
10🔥111👍1714❤‍🔥3👏3🏆1
39🔥26👏20👍8❤‍🔥2
В общем, да, в комментах уже спалили, что я в итоге взял призовое место в своей номинации :) Теперь, если «Знание» сможет довести свои планы до конца, то быть тиражу игрушки. Практически год работы не впустую!

Финал очень понравился. Считаю правильным решением сделать именно выставку, а не, например, индивидуальные презентации участников перед жюри. Во-первых, на презентации всё равно всего не покажешь. Во-вторых, и это важнее, харизма и уверенный тон нередко позволяют побеждать одной презентацией, не имея вообще работоспособного продукта. На хакатонах такое сплошь и рядом. Да что там хакатоны, в Кремниевой Долине инвестиции в десятки миллионов долларов тоже частенько дают за умение на уши присесть, а потом мы получаем Humane AI Pin.

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

Для более сложных игрушек ситуация совсем иная. Ко мне в какой-то момент пришли и попросили модели для изготовления. Я им скинул файл в Компасе и подробное описание текущей стадии, какие проблемы уже решены и как, а какие нужно решить. «Нет, вы не поняли, нам нужны STL!», — был мне ответ. «Эээ, чего?» — удивился я, — «Но прототипирование это поиск решения инженерных проблем, перебор вариантов, не будет совершенно никакого смысла в печати пары промежуточных STL-ок». Я там что-то ещё мямлил про конструкцию мультипликатора, подбор балласта и способа его изменения, версии винта и так далее. Скинул прямо несколько STL-моделей винта, а в итоге меня спросили, какую из них выбрать. Ту, которая покажет лучшее соотношение момента и времени в воде, конечно, но я пока не знаю, какая это!

Понятное дело, что прототипы от подрядчиков оказались в итоге не подходящими для демонстрации на выставке. Они выглядели примерно как надо, но механизм не то, что не приводил к нужному результату — ось винта вообще не была соединена с ведомой шестернёй, заводной ключ отваливался, а на развесовку и герметичность я даже проверять не стал. Так и получилось, что в сложных номинациях «Конструктор», «Техническая игрушка», «Сборная модель» — если человек не занимается самоделками, не имеет личной мастерской, не договорился ни с каким бизнесом на мелкий тираж, то представить хороший прототип он не мог. В каком-то смысле то, что задумывалось, как конкурс идей, превратилось в конкурс мастеров. Хотя, конкретно я видел его конкурсом мастеров с самого начала. Никто не воплотит вашу идею и ваше детище лучше, чем вы сами!
5🔥3913👍12
На финале при этом быстро решались все проблемы и реализовывались хотелки. Организаторы профинансировали всем билеты и гостиницу (хорошую), а на месте готовы были помочь с чем угодно. У меня игрушка для ванн, я запросил аквариум, и его действительно купили и поставили. Не будь воды, демонстрировать лодку было бы бесполезно, а так и эксперты увидели, и дети с удовольствием поиграли. Всего представили, кажется, 59 стендов в пяти номинациях, но возможности посмотреть остальные у меня, к сожалению, не было. День был очень насыщенный, внимания прям много. Невероятно понравился состав экспертов: умные и приятные люди, преподаватели, профессора, деятели образовательной и воспитательной сферы, представители производств. Разных возрастов, у многих свои дети. Кто-то прям говорил, что его/её ребёнок точно хотел бы такую игрушку. Оценивали все аспекты: одни смотрели на дизайн, другие на интересность, третьи на физические параметры или экономику. Понравилась беседа с женщиной инженером-конструктором, прям обсудили близкие темы.

И отдельными секциями была оценка группками детей, тоже разных, с разных регионов и разных возрастов. Кажется, целевая аудитория моей лодки это пацаны примерно начальной школы плюс-минус, потому что они чаще всего прибегали по многу раз и запускали. Забавный момент: я ушёл на обед, а мне организаторы пишут: «Не могли бы вы подойти на стенд, там интересуются?». Прихожу, а толпа ребят с громкими криками и вся мокрая устроила соревнование на количество поднятых жетончиков. Без меня разобрались, что это и как работает. Приятно :)

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

Если доведут до тиража, напишу тоже об этом. И вообще было бы круто посмотреть изнутри на какое-нибудь такое производство. Очень надеюсь на экскурсию на завод и вообще участие в процессе.

#gadgets #diy #hobby
5👍66🔥398🥰4
Выступил на DotNext сегодня, уже второй раз в жизни. Вообще, во времена хайпа ML и нейросетей было любопытно подать доклад, который рассказывает о том, как обойтись БЕЗ нейросетей и сделать всё на привычных алгоритмах. Видимо, не один я устал от ИИ, народу было достаточно, прошло вроде хорошо.

Сходил на четыре других доклада, и, пожалуй, с точки зрения докладов этот год лично для меня один из лучших, потому что два прям очень зашли: увидел то, что хотел по темам, всеобъемлюще, с ответами на возникающие в процессе вопросы. Вообще, нередко авторы боятся показывать совсем азы и тривиальные вещи — возможно, чтобы доклад не казался слишком простым. Но вот мне при введении в любую новую технологию или новый подход часто не хватает как раз основ. Чтоб прям с фундамента разжевали. И тут наконец-то такое было.

А вот со стендами дела похуже, имхо — из известного бигтеха только Озон и Контур. Завтра второй день, пойду подробнее посмотрю, что там. И да, снова сама конференция не предложила никакие тематические наклейки, и непонятно, что клеить на ноутбук :)

#dev
536👍11🔥9🥰1
Несколько лет назад на конференции TechTrain я впервые сыграл в Code in the Dark. Два разработчика параллельно садятся за компьютеры, запускается таймер. Дается картинка, которую нужно сверстать в HTML, но важный нюанс: ты не видишь результат до самого конца, пока не отправишь своё решение. Вёрстка вслепую. Если где-то поехало, можешь вообще всё сломать, но не узнаешь об этом. Мне очень понравилось, но я никак не мог придумать, как бы подобное соревнование выглядело для бэкенд-разработчиков.

А тут вот на стенде Контура была версия как раз для бэкендеров: даётся набор данных, отражающий валидные вводы и выводы для неизвестных юнит-тестов, и нужно закодить функцию, которая пройдёт эти тесты.

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

Мне понравилось. Нужно на вечеринках с коллегами играть :)

#dev
14🔥8👍3🤔1
Вернор Виндж — «Глубина в небе».

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

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

Но это просто базис местной вселенной. Сам сюжет сосредоточен вокруг попытки установки контакта с другой расой — разумных пауков, находящихся на уровне развития примерно нашей середины 20-го века. У людей при этом есть серьёзнейший внутренний конфликт между двумя группами. Повествование переходит от людей к паукам и обратно. Интересный эффект: пауки воспринимаются ближе к читателю, потому что их цивилизация похожа на известный нам реальный мир, а люди выглядят настоящими инопланетянами со своими кораблями и нестандартным обществом.

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

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

#fiction
1🔥219👍6🤝1
А мы тут сделали практически лучший на хакатоне проект и заняли последнее место. Нет, команд было больше одной. Нет, нас не дисквалифицировали, и сами мы не отдавали никому победу.

В общем, вписался я с новыми коллегами в хакатон от 2ГИС. Номинально он был для внешних участников, но в рамках отдельной оценки разрешили поучаствовать и своим. Надо сказать, что внутренний трек был с вдвое меньшими призовыми, защищаться одновременно с остальными было нельзя, и о самом существовании этого трека не упомянули ни в каких публикациях и отчётах об этом хакатоне. Ну да ладно.

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

Идея такая: когда застройщик проектирует двор, он часто не учитывает предполагаемые потоки пешеходного трафика. Люди потом вытаптывают тропинки, которые редко облагораживают. А ещё отсутствие внимания к движению пешеходов может приводить, например, к переходу дорог в неположенном месте, перепрыгиванию через ограду и так далее. Почему бы заранее не оценить движение людей по информации с карты?

В итоге мы сделали редактор, который позволяет выбрать область на карте и разметить там зоны: проходимые, непроходимые, газон. Отметить взвешенные точки интереса. Например, вход в здание это менее популярная точка, чем остановка, потому что одной остановкой пользуются жильцы сразу нескольких зданий. В дополнение воспользовались привилегией сотрудников и автоматически грузим первичный набор точек и зон из API 2ГИС. Точки сразу бьются по категориям, чтобы выставить им вес, вокруг зданий рисуются границы, но результат можно редактировать и тюнить.

Самое сложное это алгоритмы. По размеченным зонам строится нерегулярная сетка (точнее на газоне, грубее за его пределами), а затем бьётся на рёбра триангуляцией Делоне. Далее у меня была мысль использовать алгоритм Муравьиной Колонии, но при таком числе рёбер он оказался абсолютно неприменимым. Так что поступили проще: вытаптываем первоначальные тропинки с помощью А*, а затем уменьшаем виртуальный вес вытоптанных рёбер для следующих итераций (чтобы будущим потокам было привлекательнее ходить по уже вытоптанному). Причём, степень этого уменьшения зависит от числа людей, идущих по маршруту, которое уже зависит от популярности точек в кластерах начала и конца.

В общем, повозиться пришлось изрядно. В конце второго дня мы всё ещё сидели пилили маршруты, уж было думали, что не успеем, но в итоге отправили решение почти ровно в 23:59, и ушли довольные спать. Получилось и правда круто: полноценный редактор с кучей функций и нормальным UI, работоспособная (хоть и не идеальная) система построения, «one more thing» с предзагрузкой из 2ГИС...

На защите, когда я смотрел другие доклады, сразу увидел, что наше решение на две головы более доделанное, чем остальные. Так и вышло: получили практически максимальный среди всех команд балл за реализацию и презентацию. Выше нас по этим показателям был только один проект (хороший, но очень простой в исполнении, поэтому реализовать его плохо было невозможно). Ну, хоть не зря сидели двое суток на выходных, да ведь?
🔥19👍5💔21
Объявили результаты. Из четырёх команд мы оказались на четвёртом месте. Сказать, что это стало мягко говоря удивлением — ничего не сказать. Секрет оказался прост: мы пришли четверо разработчиков делать проект на хакатон, который был назван таковым организаторами по ошибке. А оказался конкурсом бизнес-идей. В общей шкале оценки реализация значила всего 20%. Двадцать процентов. Двухдневная работа заняла одну пятую от общей оценки (презентация делалась за пределами основного времени). Зато более половины уделялось умозрительным критериям, не имеющим никакого отношения к собственно работе, проделанной командами на самом хакатоне: например «Прогнозируемый объём аудитории», «Вирусный эффект» (ага, для B2G продукта вирусный эффект). Как в той картинке, где разных животных, включая рыбу, просят залезть на дерево, кто быстрее.

При цене реализации в 20% можно было вообще ничего не кодить два дня, прийти без проекта, но зато удачно придумать и продать комиссии маркетинговую лапшу. Хакатоны нередко ругают за возможность «выиграть одной презентацией», но в такой критике обычно речь идёт об обмане относительно степени готовности прототипа. Здесь же такие условия были с самого начала заложены в систему.

Даже не знаю, как к этому относиться. Ну типа чуваки просто не донесли, что реализация почти ничего не значит, и стараться не нужно. На мой взгляд это противоречит концепции хакатона, тогда уж стоило просто объявить конкурс идей, у него совсем другие правила игры. С другой стороны, участвовать нас никто не заставлял, проект получился прикольный, делать его было интересно. С третьей стороны, одно из самых сокрушительных поражений в моей жизни.

В ноябре будет уже более масштабный внутренний so-called-хакатон в компании. Не понимаю, хочу ли теперь участвовать или нет. #dev
1🤯31👍76👨‍💻2🔥1
Media is too big
VIEW IN TELEGRAM
Вот демка как работает
6🔥44👍9
Самое удивительное в энтерпрайз-разработке — необходимость специально доказывать и аргументировать объективно правильные решения. Представь, приходишь на автомобильный завод, а там выпускают бензобаки с дыркой в центре одной из стенок. Причём, это не особенность конкретного рынка или потребителя, просто исторически так процессы сложились. Ты такой: «Эээ, зачем с дыркой, давайте делать без дырки». Но тебе отвечают, что нужно аргументировать, защитить эту позицию перед бизнесом, ещё и с цифрами. Показать, что затраты ниже, чем профит. А начальник производства тебе ещё и раскладывает: на бензобаки без дырки будет уходить больше металла, так что твоё предложение приведёт к росту расходов. Ещё и у клиентов баки начнут заполняться дольше, негативный опыт.

Ты находишь инженерные книжки с описанием физики сплошных сред: «Вот гляньте что пишут, вот аргументы, вот схемы и формулы». А в ответ слышишь, что книги это идеализация, и в жизни оно всё иначе, нужно реалистично смотреть. Но самое главное: перестраивать линию на отсутствие дырки это прям очень дорого: станки переконфигурировать, персонал обучать, да и наверняка первое время будут косяки, поставки снизятся. Короче если прям не докажешь, что профит от твоего предложения принесёт миллиард за день, то иди нафиг.

Почему в разработке такого много, а на реальных автомобильных заводах всё-таки делают без дырок? Я вижу две причины:

1. Во-первых, когда бензобак еб**ёт, или там самолёт упадёт, это очень заметно. Аварии происходят с шумом, нередко с травмами. А падение какого-нибудь входящего интеграционного потока из-за отсутствия контроля состояния модели — это тихо, без фейерверков. Ну насыпется в лог ошибок, пошёл, руками поправил пару записей в БД, запустил снова.

2. Во-вторых, всё-таки у разработки низкая степень разнообразной конкуренции из-за склонности этой сферы к монополизации (которая обусловлена простотой доставки потребителю). В мире порядка тысячи автопроизводителей, а вот софт одного типа обычно выпускает едва ли десяток компаний. Сколько фирм делают, например, САПР для твердотельного моделирования? Нейросетка мне привела девять. Сколько настоящих конкурентов у какого-нибудь Майкрософт Офиса? Один: гугл документы.

И вроде всё понятно, как оно работает, но не перестаю удивляться. Нужно прям реально убеждать людей, не на инженерном языке, а на языке бизнеса и маркетинга, что дырка в бензобаке это плохо. #dev #life
👍22💯10😢72😁1
Завёл тут в рабочей флудилке по Питеру тему про настольные игры. Предлагаю как-нибудь устроить настольный вечер, рассказываю, что у меня есть. Но реакции вялые, в духе «Надо спросить у всех». Ну и пофиг, не особо рассчитывал, честно говоря.

А потом кто-то приходит и спрашивает, не хотят ли коллеги сыграть в покер. И посыпались ответы: «Я хочу!», «Я тоже хочу!», «И меня зовите!»...

Я cижу и думаю: «БЛ**Ь!!! Боже, нет! Люди, остановитесь! Прекратите немедленно, что вы делаете?! То, что вам известно о существовании покера из американских фильмов, не делает его хорошей игрой! Даже сносной не делает, вы чего?!!!». Короче словил чувство, будто бы я начал разговор про Queen, а кто-то пришёл и сказал: «Кстати, о музыке, кто-нибудь хочет на концерт Бузовой?». И все такие оживились: «Да, я хочу, возьмите меня!», «Ооо, Бузова, и меня зовите», «Я пойду, когда?».

Прям чуть не нажал кнопку выхода, но удержался. Прости их, Господи, не ведают, что творят.

#life
😁40🤣16👍62🌭2