Для сопоставления на произвольных графах (и строго, и нет) мне пока хватает простого поиска в ширину. Может что-то интересное и появлялось, давно не следил
Вот здесь я тоже по Visitor прошёлся на пути к паттерн-матчингу писал https://habr.com/post/270173/
Вообще, паттерн-матчингу (ПМ) находится применение довольно быстро… если он есть. Мой самый востребованный сейчас юскейс — ассёрты в тестах. Иногда гораздо проще с ПМ писать, чем кастить результат и доставать необходимое для сравнения.
Аргументы "у нас не будет ПМ" — понятны. В дизайне языка — всё компромиссы. Но вот что интересно было бы услышать — есть ли попытки сделать синтаксис языка таким, чтобы сторонние решения по ПМ было удобно использовать (пусть даже и не так эффективно как будь это встроено в язык).
Дело даже не только в том что контексты у одиночек и коллективов разные. Для коллектива — сложно структурированной и заумно-иерархизированный код — такое же зло как и для одиночек. Дело в том что роль наследования гипертрофирована в практически всех учебниках, и вытесняет композицию и копи-пасту. А нужно бы учить людей так: сначала копи-пастим, потом переиспользуем ф-цией или композицией, и только в крайнем, железобетонно-доказанном случае — используем иерархию.
Ещё могу сказать, что на самом деле и нет большой разницы между одиночкой и коллективом вот с какой точки зрения. И у одиночек есть участки кода, которые будут переиспользоваться много раз и будут вылизываться «как у взрослых» — всякие кор-компоненты. И у команд есть участки кода, которые нужно «просто написать» и не переусложнять — потому что завтра клиент может по этому ф-ционалу попросить что-то совсем другое. Просто соотношение одного и другого в разных проектах может отличаться.
Да, с Юнити грусть, выходит. Они уже создали золотую жилу, свой собственный рынок, с которого собирают свой бешеный процент. Ну и сосредоточились бы на этом — стабильный движок (а не с фичами). Т.е., имхо, это плохая практика — будучи хозяевами рынка — пытаться конкурировать с продавцами (создавать сервисы, включать ассеты в основной движок, добавлять фичи), вместо улучшения условий самого рынка (повышение стабильности движка, стимулирование продавцов/покупателей ассетов).
И добавили бы больше возможностей, собственно, для ассетов, разных лицензий, подписок — чтобы пользователи могли не только единоразово покупить, но и спонсировать, как на патреоне. Это я исхожу из своего опыта ещё. Вот я выпустил ассет, он нужен не всем, но для кого он нужен — он экономит сотни часов аниматора, или вообще является ключевым для игры. И, выходит, что продажи не покрывают мою работу над ассетом, а те для кого он важен — готовы платить за апдейты/помесячно, но не могут.
Про трейлеры. Я страдал до тех пор, пока не понял две вещи.
Первое — нужно найти удобный редактор. Т.е. поставили себе задачу — и пытаетесь решить в разных редакторах. Большинство выбешивает ещё на этапе загрузке, с двумя двумя-тремя в принципе что-то можно сделать, а в единственный — влюбляетесь, и, наконец, можете делать дело :) (я остановился на kdenlive).
Второе. Так же как у автора. Слушаю музыку и представляю что будет происходить на экране. А потом всё просто — нарезать под трек, под бит, под смену мелодии.
Кстати, в своём движке (на джаве) — сделал безлаговую запись звука и видео, чтобы получать плавные ролики. Это те самые редкие ролики, которые смотришь, и сразу видишь плавность и те саме 60 кадров. В Юнити такое получалось сделать только без звука и с не-реалтайм рендером.
Сложные задачи/действия нужно разбивать на цепочки более мелких до тех пор, пока первое из них не будет проще сделать чем сомневаться.
Прогулки 10-15 минут каждый час это вообще золотое открытие, кучу фич содержит:
взгляд "сверху" на то что делаешь. Могут прийти внезапные решения, можно вдруг понять что ты что-то делаешь не так, или наоборот, можно скорректировать направление, понять что что-то упущено, и т.д.
лучше концентрация в пределах этого часа (потому что до конца не "целый день", а "Х минут")
Запертые, конечно, выбраться не смогут, но вот создать «посланцев» — вполне. Достаточно светить определённым образом исходящей из звезды материей, чтобы она при остывании составляла какую-то структуру (как 3D принтер, но в абсолютно экстремальных условиях и размерах). А в этой структуре может быть отпечатан уже интеллект, культура, знания.
Но проще, конечно, «свободных» попросить создать носитель и передать на него информацию.
Мне кажется, «выйти из коробки» — легко. Надо просто смотреть на проблему под разными углами. С точки зрения заказчика, вселенной, процессора, провода… Утрирую, конечно, но примерно так.
Про 10х. Тут скорее по другому. «Звёзды» не пишут код в 10 раз больше или безбажнее. Просто их (наши :) ) решения иногда (!) дают выхлоп для бизнеса х10. А иногда х100.
Панацеи вообще не бывает. Это НЕОБХОДИМОЕ условие, но НЕ ДОСТАТОЧНОЕ (как любил акцентировать нам наш математик). Ищите дальше, я бы смотрел в сторону воздуха (постоянно скидываю эту ссылку, но уж очень полезно для меня оказалось). Ну и главное — кто ищет — тот найдёт (в данном случае — причину).
Я бы добавил про воздух. Легко могу воспроизвести на себе неспособность спать дольше 5-6 часов — достаточно закрыть все окна на ночь. Недосыпание ведёт ко всему — к усталости, к снижению иммунитета. Иммунитет — вообще что угодно за собой тащит — от постоянных простуд, до чего посерьёзнее.
Был в гостях у знакомых. Отопление электрическое, экономят (потому что могут). А ещё окна закрыты практически всё время (чтобы тепло не выпускать). А ещё газовая плита поработала пол-часа. И привет — концентрация CO2 3000-10000. Сами ходят как сонные мухи. У меня от таких посещений весь следующий день голова болит. А люди живут как-то. Какие-то болезни ищут. Было уже тут
Ну, для обоснования вывода «цены растут» — следовало бы взять больший промежуток. Я прекрасно помню топовые модели не-смартфонов по $800-$1200… В начале двухтысячных. Siemens SL45 тот же. Всякие микро-пудреницы, нокии странных форм.
Разница может быть колоссальная — насколько эффективно топливо, сколько нужно его везти на борту, на сколько взлётов/спусков хватит запаса, какое ускорение мы можем себе позволить.
Ну, электромобиль появился раньше авто с ДВС, если что. А SpaceX — это конкурентноспособная версия государственных космческих агентств. Колонии на Марсе это совсем другой порядок сложности. И Маск это понимает лучше всех нас вместе взятых — поэтому и делает то, что можно сделать сейчас. Это всё ни капли не умаляет достоинств Маска, но всё же не обязывает верить в сказки.
Довод столь же упорно появляется, сколь упорно ему сопротивляются.
Если вы не знали, в Индию путь искали вовсе не ради великих географических открытий. Причём даже если это было бы так — доплыть до Африки, а потом доплыть до Индии — это не то же что до северного полюса, а потом до Марса.
А с исследователями против дорог вы откровенно передёргиваете. Почему бы тогда не заказать отправку корабля сразу в галактику Андромеды? Чего мелочиться с Марсом?
В общем аналогии у вас ни куда не годятся. Так что лучше, действительно, не продолжайте.
Все эти разговоры о колонизации Марса кажутся мне аналогичными попыткам добывать нефть в океане до изобретения даже паруса.
Я считаю что человечество сможет выйти за пределы Земли только благодаря одному из двух изобретений. Это либо совершенно новый источник огромной энергии (какое нибудь прямое разложение материи в энергию). Либо изменение сущности человека — перенос сознания на другие, более транспортабельные носители (но будет ли это человечеством?).
С другой стороны — совершенно не важно что движет Маском — мечты о Марсе, спор, или какие-то впечатления из детства. Важно — что он сумел собрать команду специалистов, сумел составить конкуернцию государствам, посадить первую ступень обратно (в том смысле, что собирается поставить это на поток). И может значительно удешевить полёты на орбиту.
Пускай у вас идеальный продукт, пускай поддержка в нём не заключается в борьбе с устаревшей архитектурой. Вы никуда не убежите от поддержки массива крайних случаев, бизнес-ограничений, спец. подходов в сторонних АПИ и сервисах, корректировок ТЗ от клиентов, итд итп. Но это если продукт успешный. Если у продукта нет клиентов (например, только пока) — то вполне можно мечтать об идельной архитектуре в стиле «написал и забыл».
Внутренние инструменты обычно скучны
Здесь прям к каждой посылке противоположный вывод. С друзьями интересно обсуждать очередной сетап докера, а не самопальный скрипт с самопальным рендерером для полной переупаковки ассетов проекта? Ну-ну.
Я тоже этого ожидал. Однако по моему опыту, сделать анимацию живого существа выходит проще, чем именно робота. Первые же тесты показали что голый алгоритм без настроек — уже скорее жив.
Мне кажется, одень тут шкурку животного и будет не плохо. Может быть мне ещё придётся поработать чтобы оно было более робототм :)
Кроме того у ребят выше по комментам — и люди и животные анимированы.
Сам работаю над процедурной анимацией. Говорят, получается неплохо. Здесь — двуногий шагающий робот. Может смотреть в одну сторону, а идти в любую другую. При этом слушается мышь в ран-тайме без всяких нейронных сетей или приготовленных заранее анимацией. Толкать его тоже можно в любую сторону — реагирует адекватно. Кушает отдачу от выстрелов. У ходьбы куча параметров, походки размеры конечностей, пропорции, и т.п., всё настраивается.
Тут движения немного гипертрофированы, но это эффекта ради.
Есть и четырёх-, шести- ногие, тоже симпотно бегают.
Вот здесь я тоже по Visitor прошёлся на пути к паттерн-матчингу писал https://habr.com/post/270173/
Вообще, паттерн-матчингу (ПМ) находится применение довольно быстро… если он есть. Мой самый востребованный сейчас юскейс — ассёрты в тестах. Иногда гораздо проще с ПМ писать, чем кастить результат и доставать необходимое для сравнения.
Аргументы "у нас не будет ПМ" — понятны. В дизайне языка — всё компромиссы. Но вот что интересно было бы услышать — есть ли попытки сделать синтаксис языка таким, чтобы сторонние решения по ПМ было удобно использовать (пусть даже и не так эффективно как будь это встроено в язык).
Ещё могу сказать, что на самом деле и нет большой разницы между одиночкой и коллективом вот с какой точки зрения. И у одиночек есть участки кода, которые будут переиспользоваться много раз и будут вылизываться «как у взрослых» — всякие кор-компоненты. И у команд есть участки кода, которые нужно «просто написать» и не переусложнять — потому что завтра клиент может по этому ф-ционалу попросить что-то совсем другое. Просто соотношение одного и другого в разных проектах может отличаться.
Да, с Юнити грусть, выходит. Они уже создали золотую жилу, свой собственный рынок, с которого собирают свой бешеный процент. Ну и сосредоточились бы на этом — стабильный движок (а не с фичами). Т.е., имхо, это плохая практика — будучи хозяевами рынка — пытаться конкурировать с продавцами (создавать сервисы, включать ассеты в основной движок, добавлять фичи), вместо улучшения условий самого рынка (повышение стабильности движка, стимулирование продавцов/покупателей ассетов).
И добавили бы больше возможностей, собственно, для ассетов, разных лицензий, подписок — чтобы пользователи могли не только единоразово покупить, но и спонсировать, как на патреоне. Это я исхожу из своего опыта ещё. Вот я выпустил ассет, он нужен не всем, но для кого он нужен — он экономит сотни часов аниматора, или вообще является ключевым для игры. И, выходит, что продажи не покрывают мою работу над ассетом, а те для кого он важен — готовы платить за апдейты/помесячно, но не могут.
Про трейлеры. Я страдал до тех пор, пока не понял две вещи.
Первое — нужно найти удобный редактор. Т.е. поставили себе задачу — и пытаетесь решить в разных редакторах. Большинство выбешивает ещё на этапе загрузке, с двумя двумя-тремя в принципе что-то можно сделать, а в единственный — влюбляетесь, и, наконец, можете делать дело :) (я остановился на kdenlive).
Второе. Так же как у автора. Слушаю музыку и представляю что будет происходить на экране. А потом всё просто — нарезать под трек, под бит, под смену мелодии.
Кстати, в своём движке (на джаве) — сделал безлаговую запись звука и видео, чтобы получать плавные ролики. Это те самые редкие ролики, которые смотришь, и сразу видишь плавность и те саме 60 кадров. В Юнити такое получалось сделать только без звука и с не-реалтайм рендером.
Пришёл к некоторым похожим вещам.
Но проще, конечно, «свободных» попросить создать носитель и передать на него информацию.
Про 10х. Тут скорее по другому. «Звёзды» не пишут код в 10 раз больше или безбажнее. Просто их (наши :) ) решения иногда (!) дают выхлоп для бизнеса х10. А иногда х100.
Был в гостях у знакомых. Отопление электрическое, экономят (потому что могут). А ещё окна закрыты практически всё время (чтобы тепло не выпускать). А ещё газовая плита поработала пол-часа. И привет — концентрация CO2 3000-10000. Сами ходят как сонные мухи. У меня от таких посещений весь следующий день голова болит. А люди живут как-то. Какие-то болезни ищут.
Было уже тут
Если вы не знали, в Индию путь искали вовсе не ради великих географических открытий. Причём даже если это было бы так — доплыть до Африки, а потом доплыть до Индии — это не то же что до северного полюса, а потом до Марса.
А с исследователями против дорог вы откровенно передёргиваете. Почему бы тогда не заказать отправку корабля сразу в галактику Андромеды? Чего мелочиться с Марсом?
В общем аналогии у вас ни куда не годятся. Так что лучше, действительно, не продолжайте.
Я считаю что человечество сможет выйти за пределы Земли только благодаря одному из двух изобретений. Это либо совершенно новый источник огромной энергии (какое нибудь прямое разложение материи в энергию). Либо изменение сущности человека — перенос сознания на другие, более транспортабельные носители (но будет ли это человечеством?).
С другой стороны — совершенно не важно что движет Маском — мечты о Марсе, спор, или какие-то впечатления из детства. Важно — что он сумел собрать команду специалистов, сумел составить конкуернцию государствам, посадить первую ступень обратно (в том смысле, что собирается поставить это на поток). И может значительно удешевить полёты на орбиту.
Пускай у вас идеальный продукт, пускай поддержка в нём не заключается в борьбе с устаревшей архитектурой. Вы никуда не убежите от поддержки массива крайних случаев, бизнес-ограничений, спец. подходов в сторонних АПИ и сервисах, корректировок ТЗ от клиентов, итд итп. Но это если продукт успешный. Если у продукта нет клиентов (например, только пока) — то вполне можно мечтать об идельной архитектуре в стиле «написал и забыл».
Здесь прям к каждой посылке противоположный вывод. С друзьями интересно обсуждать очередной сетап докера, а не самопальный скрипт с самопальным рендерером для полной переупаковки ассетов проекта? Ну-ну.
Это то, что на глаза попалось только.
Мне кажется, одень тут шкурку животного и будет не плохо. Может быть мне ещё придётся поработать чтобы оно было более робототм :)
Кроме того у ребят выше по комментам — и люди и животные анимированы.
Тут движения немного гипертрофированы, но это эффекта ради.
Есть и четырёх-, шести- ногие, тоже симпотно бегают.