Так у нас, вроде, — профессиональный фронтенд-разработчик этим занимается. Как я понял, это он был главным евангелистом, в коммитах всегда пишет довольно умные вещи, и всё такое. Но имеем что имеем.
И всё-таки, для меня лично странно, что вы не называете проблемной систему, в которой основной инструмент для решения задач нуждается в тонкой настройке чтобы только показывать результаты, сравнимые с аналогичными инструментами в соседних системах, а из коробки заточен в основном под демо-проекты на одну страницу кода и Hello World.
Я прекрасно знаю, что профилированием пайплайна сборки фронтенда можно достигнуть приемлемых результатов скорости сборки. У нас как раз кто-нибудь этим займётся, когда более важных задач не останется. Тем не менее, на бекенде у нас никто компилятор не настраивал — уж поверьте, я эти скрипты читал от и до — и он собирает примерно на порядок больше loc в три раза быстрее.
Да, но таких механизмов много в почти любой стране. Я сходу как-то не могу придумать, в какой стране механизмов нет — разве что в каких-нибудь неправовых государствах, где вся власть принадлежит военному вождю механизмов меньше, но это компенсируется более прямой их работой.
Проблема только в том что в одних странах большинство "частных случаев" выглядит скорее как у меня и всё отремонтировано, чисто, мусор вывозят и крыс нет. А в других почему-то ситуация немного другая.
Во-первых, крысы сами по себе не прямая проблема — они следствие возможности выкидывать мусор, включая пищу, не выходя из подъезда на мороз. За удобство нужно платить, да. Во-вторых, различие в странах, по моему опыту, неоднозначное. Бывает разное, и зависит, видимо, как раз от договора между жильцами и обслугой. В среднем.
Здесь уже от частных случаев придётся идти. В договорах с компаниями так-то тоже вполне определённые вещи указаны, кто и что должен, а не "всё будет отремонтировано и будет порядок", и очень часто краевые случаи доведения порядка до состояния "везде" в договор просто не входят. Пока что у меня нет данных чтобы однозначно утверждать — являются ваши ожидания подмножеством обязанностей управляющей компании, берите договор и смотрите. Дальше дело техники, впрочем, вам и так известно, думаю.
Например, тут вот в соседнем доме есть ясный договор с управляющей компанией об обслуживании мусоропровода и вывозе мусора N раз в неделю. Но я точно знаю, что из-за мусоропровода размножаются вредители (тараканы, крысы), а большинство жителей дома ожидают, что крыс не будет. Решение, по вашей модели — это "сделать нормально" (запечатать мусоропровод), но в договор это не входит, следовательно, делать это нужно жильцам своими силами. Строго говоря, в результате всю операцию придётся брать на себя единственному человеку, а потом выставить счёт дому за свои услуги. Это вот, кстати, тот самый титульный крашеный заборчик. И у вас будет такой же заборчик, в итоге (или не будет, зато будет ещё много веток комментариев тут про то, как в стране никто никогда не делает нормально).
ваши хотелки какого-то там специфического смартфона это уже всё-таки немного о другом и за него вы пока деньги не заплатили
Компании сегодня очень любят считать недополученную прибыль, и я — хороший пример недополучения кем-то прибыли. К сожалению, как мне уже множество раз говорили — всем плевать, это рынок, и далее по списку.
Учитывая, что это Cycles — там вряд ли есть какая-то разница в итоговой картинке. Разве что некий AI denoiser из статьи что-то поменяет, не знаю.
Могу только сказать, что я сцены из воркшопа сам пробовал считать на своей машине на RTX 2070S и на Ryzen 3800X, и для, например, 1000 проходов заметный шум был и там и там, потому поднимал проходы до 3000. С тремя тысячами проходов видеокарта справилась за ~15 минут, процессор, что характерно, почти не отстал (может быть, дело в драйверах под Linux). Попиксельного сравнения я делать не стал — но если интересно, в принципе, могу пересчитать обе сцены ещё раз и залить эти четыре картинки на хабр, чтобы более знающие люди могли посмотреть разницу.
Там уже тоже ответили, что вы разные вещи сравниваете. Четыре часа на Jenkins идёт не билд, там именно идут тесты, очень тяжёлые тесты с точки зрения количества операций.
А так как вам пальцем потыкать хочется — если я ко времени тестов на своей машине (напомню — это примерно один час) добавлю время полного билда с нуля, то получится два часа, где из одного часа на сам билд — 45 минут идёт именно билд фронтэнда. А знаю я это потому что давным-давно у нас билд шёл 15 минут, но потом мы мигрировали с "устаревшей" технологии (где билд фронтенда был синонимом простой конкатенации файлов, занимавшей меньше десяти секунд на всё про всё) на модный технологический стек на jsx, время билда стало плавно увеличиваться по мере добавления компонентов, и в итоге дошло до часа, причём миграция вообще-то не закончилась, то есть и 3 четверти времени билда на компиляцию пары десятков jsx — это ещё не предел. Плюс это ещё TypeScript втащить не успели.
Кстати, юнит-тесты у нас есть и там и там, и они занимают примерно по три секунде и на фронте, и на беке, со сравнимым числом тестом. И вот они-то у нас являются частью билда, но как легко видеть — их влияние на время прохождения близко к статистической погрешности.
А я вот когда в капиталистической стране жалуюсь, что мне смартфон с современным фаршем и 4 дюйма по диагонали никто не делает — всегда начинают рассказывать, что рынок порешал, моё мнение никому неинтересно, и это совершенно правильно и именно так и надо, а если я всё равно хочу смартфон — я должен его сам разработать и произвести.
Это если и отличается от предложения куда-нибудь жалобу написать, то уж точно в худшую сторону. Так какой из капитализмов правильнее?
Потому, что один-два случая ничего не показывают об остальных 80-90% жителей. Так сейчас во всём мире капитализм работает — на меньшинство, даже платёжеспособное, всем плевать, бой всегда идёт за большинство, причём как правило вдобавок не за реальное большинство, а за представление о большинстве. А раз большинство всё устраивает (иначе бы не молчали) — зачем кому-то напрягаться и тратить ресурсы?
Интеграция бывает не только с вебдрайвером, но и с базой данных. Когда тест (но лучше группа тестов) настраивает себе окружение на живой базе данных, проходит по своим шагам и потом за собой подчищает, чтобы не мешать остальным. При таком подходе у нас 2800+ тестов бегают на моей машине примерно час, а на слабенькой ноде Jenkins могут и четыре.
А я вот не люблю AssertJ, и предпочитаю Hamcrest. По базовому функционалу у них паритет, но на мой вкус написание собственных проверок у Hamcrest куда проще, и, в отличие от AssertJ, не требуется писать (или по новой моде — кодогенерировать) своих версий assertThat для кастомных типов и прочей обвязки.
Вот эта самая "недавняя статья" с критикой подходов чуть более чем полностью состоит из воды. Единственная конкретика (из тех, что я успел увидеть, пока мне окончательно не надоело читать эту пресноту) — это что для письма в LKML нужен аж целый почтовый клиент, который не будет делать из простого текста простыню на HTML. Вообще не описана проблема, которую Сара пытается решать, и вообще каждая её цитата в той статье — образец политического заявления (там, где высшим искусством считается сказать много слов, но при этом не сказать ничего).
Бросил читать ссылку, так и не докопавшись до сути претензий. Наверное, настоящие контрибьюторы — сущие ангелы с ангельским же терпением.
врядли [AMD] выкатят серьезного конкурента по производительности — не думаю что они расчитывали, что NVidia в два раза увеличит производительность между поколениями
Или по-другому — Nvidia получили информацию, что по производительности ожидается паритет с RTX 3xxx, и решили заранее захватить долю побольше за счёт радикального снижения цены.
Нет, как раз на 5ГГц. Может кто-то и фонит, конечно, но тогда другой вопрос — почему из всего домашнего зоопарка самый новый аппарат по совместительству самый неустойчивый к помехам.
В том, что WebView — встраиваемый компонент, а аргументы командной строки бывают у процессов.
Слушайте, это вообще уже несеръёзно. Вы мне тут, похоже, клиническую олигофрению пришить пытаетесь, судя по стилю ответов.
Потому, давайте-ка сначала. WebView, как встраиваемый компонент, должен либо запускать процесс бразуера напрямую, либо общаться с сервисом, который уже будет запускать процесс, включая также передачу команд от клиентов WebView самому сервису. Так как в конечном итоге WebView или сервис — запустят процесс бразуера, то в чём проблема при запуске процесса отдать ему все параметры через командную строку?
В том, что обратная совместимость — это про код, а не скрипт инициализации и module-path. Код, который написан до выкидывания javax.xml (кстати, заметьте — javax, то есть не стандартная библиотека, стандартная-то в java.*) работает как до, так и после — поменялись флаги компилятора, и class-path нужно теперь заменить на module-path.
А что до "таких фокусов" — я и покруче видел. Когда кое-кто реэкспортировал тот же самый javax.xml из пяти, что ли, jar-ников на одном и том же class-path, да ещё немного разные версии, так что в зависимости от положения звёзд грузились классы разных версий (как этого никто не заметил — атличный вопрос для отдельного расследования). В итоге когда они смигрировали — "внезапно" у них посыпались ошибки о том, что javax.xml.bind экспортируют несколько модулей, включая сам javax.xml (который они по всем правилам добавили в module-path, а как же иначе-то).
Да вот просто так не мониторил — даже не подумал о какой-то грядущей смене поколений, да и так глаза разбегались между разными производителями и моделями даже в том что уже было. А сейчас, насколько вижу, появится ещё больше различий, что где-то будет DDR 6x, а где-то не будет.
Плюс, сейчас я вот помониторил ещё чуток, и вывод такой, что скоро будут два крупных анонса от AMD — сначала новые процессоры, потом линейка видеокарт. С такой логикой как бы не пришлось весь фарш в системном блоке заменять. Ну и наконец — карту я уже купил, для моих похождений за компьютером её пока что хватает с запасом, продать я её всё равно вряд ли смогу, учитывая обстановку — куда проще забить на волнения и получать удовольствие от покупки.
Так у нас, вроде, — профессиональный фронтенд-разработчик этим занимается. Как я понял, это он был главным евангелистом, в коммитах всегда пишет довольно умные вещи, и всё такое. Но имеем что имеем.
И всё-таки, для меня лично странно, что вы не называете проблемной систему, в которой основной инструмент для решения задач нуждается в тонкой настройке чтобы только показывать результаты, сравнимые с аналогичными инструментами в соседних системах, а из коробки заточен в основном под демо-проекты на одну страницу кода и Hello World.
Я прекрасно знаю, что профилированием пайплайна сборки фронтенда можно достигнуть приемлемых результатов скорости сборки. У нас как раз кто-нибудь этим займётся, когда более важных задач не останется. Тем не менее, на бекенде у нас никто компилятор не настраивал — уж поверьте, я эти скрипты читал от и до — и он собирает примерно на порядок больше loc в три раза быстрее.
Нет, это всё же проблема экосистемы, если надо даже компиляцию профилировать, анализировать, и тюнить — а иначе система рождает чудовищ.
Да, но таких механизмов много в почти любой стране. Я сходу как-то не могу придумать, в какой стране механизмов нет — разве что в каких-нибудь неправовых государствах, где вся власть принадлежит военному вождю механизмов меньше, но это компенсируется более прямой их работой.
Во-первых, крысы сами по себе не прямая проблема — они следствие возможности выкидывать мусор, включая пищу, не выходя из подъезда на мороз. За удобство нужно платить, да. Во-вторых, различие в странах, по моему опыту, неоднозначное. Бывает разное, и зависит, видимо, как раз от договора между жильцами и обслугой. В среднем.
Здесь уже от частных случаев придётся идти. В договорах с компаниями так-то тоже вполне определённые вещи указаны, кто и что должен, а не "всё будет отремонтировано и будет порядок", и очень часто краевые случаи доведения порядка до состояния "везде" в договор просто не входят. Пока что у меня нет данных чтобы однозначно утверждать — являются ваши ожидания подмножеством обязанностей управляющей компании, берите договор и смотрите. Дальше дело техники, впрочем, вам и так известно, думаю.
Например, тут вот в соседнем доме есть ясный договор с управляющей компанией об обслуживании мусоропровода и вывозе мусора N раз в неделю. Но я точно знаю, что из-за мусоропровода размножаются вредители (тараканы, крысы), а большинство жителей дома ожидают, что крыс не будет. Решение, по вашей модели — это "сделать нормально" (запечатать мусоропровод), но в договор это не входит, следовательно, делать это нужно жильцам своими силами. Строго говоря, в результате всю операцию придётся брать на себя единственному человеку, а потом выставить счёт дому за свои услуги. Это вот, кстати, тот самый титульный крашеный заборчик. И у вас будет такой же заборчик, в итоге (или не будет, зато будет ещё много веток комментариев тут про то, как в стране никто никогда не делает нормально).
Компании сегодня очень любят считать недополученную прибыль, и я — хороший пример недополучения кем-то прибыли. К сожалению, как мне уже множество раз говорили — всем плевать, это рынок, и далее по списку.
Учитывая, что это Cycles — там вряд ли есть какая-то разница в итоговой картинке. Разве что некий AI denoiser из статьи что-то поменяет, не знаю.
Могу только сказать, что я сцены из воркшопа сам пробовал считать на своей машине на RTX 2070S и на Ryzen 3800X, и для, например, 1000 проходов заметный шум был и там и там, потому поднимал проходы до 3000. С тремя тысячами проходов видеокарта справилась за ~15 минут, процессор, что характерно, почти не отстал (может быть, дело в драйверах под Linux). Попиксельного сравнения я делать не стал — но если интересно, в принципе, могу пересчитать обе сцены ещё раз и залить эти четыре картинки на хабр, чтобы более знающие люди могли посмотреть разницу.
Там уже тоже ответили, что вы разные вещи сравниваете. Четыре часа на Jenkins идёт не билд, там именно идут тесты, очень тяжёлые тесты с точки зрения количества операций.
А так как вам пальцем потыкать хочется — если я ко времени тестов на своей машине (напомню — это примерно один час) добавлю время полного билда с нуля, то получится два часа, где из одного часа на сам билд — 45 минут идёт именно билд фронтэнда. А знаю я это потому что давным-давно у нас билд шёл 15 минут, но потом мы мигрировали с "устаревшей" технологии (где билд фронтенда был синонимом простой конкатенации файлов, занимавшей меньше десяти секунд на всё про всё) на модный технологический стек на jsx, время билда стало плавно увеличиваться по мере добавления компонентов, и в итоге дошло до часа, причём миграция вообще-то не закончилась, то есть и 3 четверти времени билда на компиляцию пары десятков jsx — это ещё не предел. Плюс это ещё TypeScript втащить не успели.
Кстати, юнит-тесты у нас есть и там и там, и они занимают примерно по три секунде и на фронте, и на беке, со сравнимым числом тестом. И вот они-то у нас являются частью билда, но как легко видеть — их влияние на время прохождения близко к статистической погрешности.
А я вот когда в капиталистической стране жалуюсь, что мне смартфон с современным фаршем и 4 дюйма по диагонали никто не делает — всегда начинают рассказывать, что рынок порешал, моё мнение никому неинтересно, и это совершенно правильно и именно так и надо, а если я всё равно хочу смартфон — я должен его сам разработать и произвести.
Это если и отличается от предложения куда-нибудь жалобу написать, то уж точно в худшую сторону. Так какой из капитализмов правильнее?
Конкретно для температуры есть ещё система счисления по Кельвину. Вот скажите, вам комфортно будет при 319К в тени?
Потому, что один-два случая ничего не показывают об остальных 80-90% жителей. Так сейчас во всём мире капитализм работает — на меньшинство, даже платёжеспособное, всем плевать, бой всегда идёт за большинство, причём как правило вдобавок не за реальное большинство, а за представление о большинстве. А раз большинство всё устраивает (иначе бы не молчали) — зачем кому-то напрягаться и тратить ресурсы?
Интеграция бывает не только с вебдрайвером, но и с базой данных. Когда тест (но лучше группа тестов) настраивает себе окружение на живой базе данных, проходит по своим шагам и потом за собой подчищает, чтобы не мешать остальным. При таком подходе у нас 2800+ тестов бегают на моей машине примерно час, а на слабенькой ноде Jenkins могут и четыре.
А я вот не люблю AssertJ, и предпочитаю Hamcrest. По базовому функционалу у них паритет, но на мой вкус написание собственных проверок у Hamcrest куда проще, и, в отличие от AssertJ, не требуется писать (или по новой моде — кодогенерировать) своих версий
assertThatдля кастомных типов и прочей обвязки.Вот эта самая "недавняя статья" с критикой подходов чуть более чем полностью состоит из воды. Единственная конкретика (из тех, что я успел увидеть, пока мне окончательно не надоело читать эту пресноту) — это что для письма в LKML нужен аж целый почтовый клиент, который не будет делать из простого текста простыню на HTML. Вообще не описана проблема, которую Сара пытается решать, и вообще каждая её цитата в той статье — образец политического заявления (там, где высшим искусством считается сказать много слов, но при этом не сказать ничего).
Бросил читать ссылку, так и не докопавшись до сути претензий. Наверное, настоящие контрибьюторы — сущие ангелы с ангельским же терпением.
В Blender добавили поддержку больше года назад — судя по их графикам, скачок производитености таки был.
Или по-другому — Nvidia получили информацию, что по производительности ожидается паритет с RTX 3xxx, и решили заранее захватить долю побольше за счёт радикального снижения цены.
Нет, как раз на 5ГГц. Может кто-то и фонит, конечно, но тогда другой вопрос — почему из всего домашнего зоопарка самый новый аппарат по совместительству самый неустойчивый к помехам.
Слушайте, это вообще уже несеръёзно. Вы мне тут, похоже, клиническую олигофрению пришить пытаетесь, судя по стилю ответов.
Потому, давайте-ка сначала. WebView, как встраиваемый компонент, должен либо запускать процесс бразуера напрямую, либо общаться с сервисом, который уже будет запускать процесс, включая также передачу команд от клиентов WebView самому сервису. Так как в конечном итоге WebView или сервис — запустят процесс бразуера, то в чём проблема при запуске процесса отдать ему все параметры через командную строку?
В том, что обратная совместимость — это про код, а не скрипт инициализации и module-path. Код, который написан до выкидывания
javax.xml(кстати, заметьте — javax, то есть не стандартная библиотека, стандартная-то в java.*) работает как до, так и после — поменялись флаги компилятора, и class-path нужно теперь заменить на module-path.А что до "таких фокусов" — я и покруче видел. Когда кое-кто реэкспортировал тот же самый
javax.xmlиз пяти, что ли, jar-ников на одном и том же class-path, да ещё немного разные версии, так что в зависимости от положения звёзд грузились классы разных версий (как этого никто не заметил — атличный вопрос для отдельного расследования). В итоге когда они смигрировали — "внезапно" у них посыпались ошибки о том, чтоjavax.xml.bindэкспортируют несколько модулей, включая самjavax.xml(который они по всем правилам добавили в module-path, а как же иначе-то).Да вот просто так не мониторил — даже не подумал о какой-то грядущей смене поколений, да и так глаза разбегались между разными производителями и моделями даже в том что уже было. А сейчас, насколько вижу, появится ещё больше различий, что где-то будет DDR 6x, а где-то не будет.
Плюс, сейчас я вот помониторил ещё чуток, и вывод такой, что скоро будут два крупных анонса от AMD — сначала новые процессоры, потом линейка видеокарт. С такой логикой как бы не пришлось весь фарш в системном блоке заменять. Ну и наконец — карту я уже купил, для моих похождений за компьютером её пока что хватает с запасом, продать я её всё равно вряд ли смогу, учитывая обстановку — куда проще забить на волнения и получать удовольствие от покупки.