Как стать автором
Обновить
52
0.3

Программист

Отправить сообщение

 каменщик, возводивший Аушвиц причастен к геноциду или нет?

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

Мера ответственности солдата существенно выше, потому как он имеет и оружие, и непосредственно может нанести ущерб. Мера ответственности командования и идеологов ещё выше, потому что они построили такую систему, в которой появился Аушвиц.

Так что каменщик каменщику рознь. Поэтому по итогам Второй мировой это решал не суд Линча, а трибуналы, которые принимали во внимание совокупность факторов.

Если я усну и проснусь через сто лет и меня спросят, что сейчас происходит в России, я отвечу: "В РФ планируют запретить".

Множество массивов для результатов создаются каждый вызов функции.

Это всё хорошо оптимизируется, и влияние на результирующую скорость исполнения здесь околонулевое.

Я воздержусь от продолжения бесполезного флуда.

Я уже ответил: сложность меньше тем, что вы контролируете каждое ветвление, а не ловите всевозможные ошибки из блока.

Про GC лучше даже не заикаться в контексте исключений. Исключения -- это дорого, там буквально для throw создаётся целый объект исключения, и производительность там будет проседать значительно, если использовать это под высокой нагрузкой. Куда сильнее, чем создание какого-то там массива на два элемента.

Важна концептуальная сложность кода, а не "размер кода в высоту". Например, regex-выражения записываются очень коротко, но хорошо ли они читаются? Не очень. Если не влезает код, значит пора разбивать функцию на части. Ну, либо купите монитор побольше.

Если это оно, то даже не планируют. Draft proposal, вместо которого рассматривают другие альтернативы. Так что сугубо разминка для ума.

Во-первых, у вас в версии с ?= три разных обработчика ошибок, а не один, и try-catch версия была бы сильно длиннее. Во-вторых, снижение вложенности полезно тем, что вы как программист при отладке можете просматривать меньший объём кода: вместо одного большого блоба, где "что-то пошло не так" у вас явная последовательность действий, в которой разваливается конкретное ветвление. Если же, наоборот, мы упростим обработчики до return false, то будет очень компактно, хотя и менее информативно.

Интересно, можно ли использовать с ?= встроенные средства отладчика в браузере по остановке на обработанных исключениях. Вызывается ли вообще исключение, или всё это обрабатывается под капотом.

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

Это составляет меньшую несущественную часть моих расходов.

Покупал GPU, не заметил, что RTX 4080 для меня дешевле, чем для швейцарца. С авто тоже как-то в Европе и США можно получше купить за те же деньги. Если определение "богатства" -- это не сдохнуть с голоду, то ок, допускаю.

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

Мне тут видится нарушение довольно базовых физических законов.

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

Не любые кондиционеры работают строго за счёт включения-выключения (скважности, как выразился Wesha), большинство моделей начиная со средней ценовой категории также может изменять мощность компрессора и частоту вращения (инверторные модели). В результате, установка 18 градусов на таких моделях действительно охладит быстрее, чем установка на 24 градуса при 26 в комнате (наиболее типичный случай), т.к. любой кондиционер будет вынужден работать на полной мощности. Мы не затрагиваем вопросы удобства такого решения или его комфортности для нахождения в комнате, но ситуация не так проста, как описывают комментаторы выше. Не знаю, к чему выше приплели Оккама.

Да, вот такой я душнила.

Инверторных кондиционеров, я так понимаю, в вашем мире не изобрели.

Как минимум, заставит подумать, как под капотом это может быть реализовано, и каковы могут быть последствия.

А можете привести пример, как понимание железа помогает на фронте/JS?

У меня был случай, когда фронтендер недоумевал, почему подобный код имеет низкую производительность:

arr.reduce((acc,cur)=> [...acc, cur+1], [])

Мы же всего лишь увеличиваем на 1 каждый элемент массива из миллиона элементов.

Был и другой чел, который с фронта отправлял забросы в SQL напрямую, текстом, потому что никто не проследил, когда он себе на бэке решил создать php-скриптик. Отличные фронтедеры, ничего не скажешь. Свою область знают отменно.

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

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

Почему вы на Си остановились? Почему бы ещё ассемблер не выучить, а потом не научиться писать в машинных кодах, и нам закуску коснуться разработки железа?

А кто вам сказал, что мы остановились? Лично я не останавливался, и писал на всём: от TypeScript до машинных кодов. Сейчас вот в Rust вкатываюсь.

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

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

1
23 ...

Информация

В рейтинге
2 410-й
Откуда
Новосибирск, Новосибирская обл., Россия
Зарегистрирован
Активность