Вообще я совершенно так же считал несколько лет назад. Сейчас уже становится больно, когда не можешь навести на переменную и узнать, какой конкретно интерфейс там лежит.
Кстати, звучит он как корреляция, а не причинно-следственная связь.
Например, может так оказаться, что люди с высокими интеллектуальными способностями меньше употребляют сладкое, и тогда тебе важно для предотвращения есть меньше сладкого, а не быть умным.
Зашёл точно так же не согласиться вот с этим пунктом:
В Австралии распространена узкая специализация, которая может быть очень некомфортной для российских инженеров. Там не поощряется (мягко говоря) выход за пределы должностных обязанностей и самостоятельное освоение навыков и технологий. То есть нельзя пойти и изучить что-то самому с помощью онлайн-ресурсов, курсов и т.д. Или найти новое решение старой проблемы и просто взять и внедрить.
В Canva вот совсем совершенно не так.
Например, у нас особо нет деления на фронтэндеров и Java-бэков – считается, что все Software Developers умеют всё. Естественно, это учитывается на личном уровне (просто говоришь "ребята, я фронт, я не умею Java", и без проблем), но если ты захочешь научиться в другой стэк, тебе выдадут задачи и будут ждать, пока ты будешь две недели учиться настраивать IDEA. А потом ещё всей командой будут объяснять, как работает Spring :)
Я вот сейчас уехал (тоже в Австралию), и не чувствую какого-то сильного слома. Сложно – да. Нужно искать новых знакомых и друзей, импрувить язык, знакомиться с менталитетом и новыми правилами играми. Но это вовсе не значит, что я что-то теряю, что у меня раньше было.
И более того, я не ощущаю это как "уехал" – я просто живу сейчас там, где мне сейчас лучше.
Я что, кого-то убиваю, если не хочу сидеть на карантине?
Вообще-то потенциально да, но я не об этом.
Ещё раз: я хочу продемонстрировать, что ваш аргумент "нельзя жертвовать свободой ради безопасности" (если я его правильно понял – поправьте, если не прав) не абсолютен. Потому что создание полиции – это жертвование огромным количеством свободы, это огромное количество разных полномочий и возможностей управляющим государством. В любой тоталитарной стране полиция это самое первое, что используется, чтобы репрессировать граждан, и используется максимально широко. Однако вы скорее всего согласитесь, что эта жертва свободой в общем и целом стоит того.
я не вижу, какое это имеет отношение к изначальной теме
Да, поэтому вы не ответили на мой вопрос. Представьте, что появилось первое государство и мы обсуждаем, какие меры помогли бы уменьшить количество преступлений. Я говорю: было неплохо создать людей с особыми полномочиями, которые бы арестовывали преступников. Вы отвечаете:
Если для вас это замечательно, да вы бы ещё и более жёстких мер накинули сверху, то мы с вами никогда не поймём друг друга, потому что я государствам и правительствам не доверяю и не желаю, чтобы они вмешивались в жизнь людей, и уж точно не хочу, чтобы они имели возможность наделять себя полномочиями без суда и следствия ограничивать свободу перемещения людей. Назад они такие полномочия сдают почти никогда.
Если вас вопрос свободы не тревожит, если вас правительства, которые плюют на права людей налево и направо по всему земному шару, тоже не волнуют, то, как говорил Франклин – "Те, кто готовы пожертвовать насущной свободой ради малой толики временной безопасности, не достойны ни свободы, ни безопасности."
Вы не очень поняли. Я бы посадил всех людей на самый жесткий карантин, что бывает, в марте 2020. Не получилось в марте -- в апреле. Не получилось до сих пор -- сейчас.
В этом случае все сидят на карантине две недели, а потом выходят и продолжают обычную спокойную жизнь, как будто ковида и не было. И никогда его больше не будет.
У нас же постоянно полумеры, которые не особо помогают и жизнь портят -- причем ухудшения жизни за полтора года полумер уже набежало больше, чем посидеть две недели дома. И да, разумеется, при таком долгом сроке кому-то выдаются полномочия, развиваются системы слежки и так далее и так далее.
Что касается, вопроса свободы, у этой цитаты и этого принципа очень явно есть границы применимости. Вы бы стали отменять полицию, например?
Про двоемыслие: речь про повседневную жизнь. Вы может забыли, как у нас было в тот момент, или живёте где-то в другом месте, но везде маски, много что закрыто и не работает. Австралия в тот момент уже забыла, как это: никаких мер, никаких ковидных новостей, ничего кроме нелетающих самолётов.
Во-первых, я совершенно спокойно приехал сюда в апреле, как и куча моих коллег, которые совершенно спокойно сюда понаезжали с сентября по июнь.
Во-вторых, посмотрите статистику: летом 2020 в Австралии ковид был, а в сентябре уже не было. Кто там медленнее заболевает, говорите? Точно ли в этом причина?
Наоборот замечательно. В сентябре год назад ковид в Австралии закончился. Да, страна большей частью была закрыта всё это время. Да, любой переболевший или привитый всё равно должен был просидеть в отеле 2 недели, ни с кем не контактируя. Но это того стоит: внутри страны почти год никто не болел, никакого локдауна не было, никаких ограничительных мер, люди жили как раньше. Когда я приехал, первые дни автоматически хватался за маску, входя в магазин. Никак не мог привыкнуть, что тут ну вообще как будто 2020 не было.
Собственно, я считаю, что и меры нужно было принимать максимально жёсткие, заперев всю страну на карантин недели на 2, а не бегать с полумерами, которые всё равно никак не помогают, по полгода.
Вообще мне после России довольно странно наблюдать местное возмущение полицией, когда к тебе даже за нарушения часто говорят "больше так не делай" и уходят вместо выписывания штрафа.
Актуальные модели ноутбуков и смартфонов на витрине предназначены, чтобы изнашиваться. Если их потом кому и продают, то с большущей скидкой за износ. И износ одной модели отлично окупается покупкой тысяч других, которые купили пощупавшие их люди. Если бы не окупались, их бы не было.
Будет ли разработчик из дешёвого места таким же качественным? Вспомним, что в среднем хорошие разработчики чаще переезжают из дешёвых мест в дорогие, чем наоборот. Подумаем о том, что в большинстве хорошие разработчики, переехавшие в более дешёвое место, не будут соглашаться на более дешёвую зарплату.
Даже если такого возможно найти, всё равно риски гораздо выше + разработчику нужно время вникнуть в проект и начать работать (сравниваем с существующим разработчиком, который уже работает, работает хорошо, а раз работает — не трогай). А ведь риски это не просто "один день поработал и уволился", это всё потраченное время и силы на онбоардинг, через которое вы узнаете, что вот этот разработчик из глубинки вам не подходит.
В TypeScript у людей всегда соблазн писать максимально строгие типы.
"А вот это поле бывает [number, number] если в соседнем поле лежит string, а бывает [string, number, string], если в другом соседнем поле лежит boolean, а оба соседних поле зависят от чего-то ещё, давайте все это типизируем чтобы оно соответствовало, сделаем цепочку из 20 наследований, где у каждого типа в цепочке ещё и по 20 дженериков".
В итоге у тебя сверхзапутанная система типов, которые не помогают примерно никогда, с трудом читаются и требуют неделю вносить в них изменения при 5-минутных правках кода. Я не шучу, столько раз об это спотыкался.
Из живых примеров — недавно редактировал код, где у компонента Table в Props захотели сделать, чтобы Cols.length == Rows[any index].length. Как-то сделали. Я часа два над этими типами медитировал, так до конца и не понял, как это должно работать.
А в итоге по всему коду проекта раскидано as Rows<rowLength>, потому что у явно заданного массива ts почему-то длину не распознаёт, а у динамически полученного в рантайме понятно почему не распознаёт. При этом, очевидно, не проверяет такая проверка абсолютно ничего – во всех живых кейсах данные для таблицы получаются в рантайме.
Проблема абсолютно такая же, как с динамической типизацией. Есть динамическая типизация — люди ей злоупотребляют и стреляют себе в ногу. Есть статическая — аналогично. Только злоупотреблять ей можно иначе.
Вообще я совершенно так же считал несколько лет назад. Сейчас уже становится больно, когда не можешь навести на переменную и узнать, какой конкретно интерфейс там лежит.
Кстати, знаете, как сделать вот этот код...
...читаемее в три раза?
Вот так:
Кстати, звучит он как корреляция, а не причинно-следственная связь.
Например, может так оказаться, что люди с высокими интеллектуальными способностями меньше употребляют сладкое, и тогда тебе важно для предотвращения есть меньше сладкого, а не быть умным.
Зашёл точно так же не согласиться вот с этим пунктом:
В Canva вот совсем совершенно не так.
Например, у нас особо нет деления на фронтэндеров и Java-бэков – считается, что все Software Developers умеют всё. Естественно, это учитывается на личном уровне (просто говоришь "ребята, я фронт, я не умею Java", и без проблем), но если ты захочешь научиться в другой стэк, тебе выдадут задачи и будут ждать, пока ты будешь две недели учиться настраивать IDEA. А потом ещё всей командой будут объяснять, как работает Spring :)
Почему именно "сломали"?
Я вот сейчас уехал (тоже в Австралию), и не чувствую какого-то сильного слома. Сложно – да. Нужно искать новых знакомых и друзей, импрувить язык, знакомиться с менталитетом и новыми правилами играми. Но это вовсе не значит, что я что-то теряю, что у меня раньше было.
И более того, я не ощущаю это как "уехал" – я просто живу сейчас там, где мне сейчас лучше.
А чем закрытый проект в этом случае лучше открытого?
Не правильнее ли для модульного телефона выпускать компоненты новых версий, а не новую версию всего?
Вообще-то потенциально да, но я не об этом.
Ещё раз: я хочу продемонстрировать, что ваш аргумент "нельзя жертвовать свободой ради безопасности" (если я его правильно понял – поправьте, если не прав) не абсолютен. Потому что создание полиции – это жертвование огромным количеством свободы, это огромное количество разных полномочий и возможностей управляющим государством. В любой тоталитарной стране полиция это самое первое, что используется, чтобы репрессировать граждан, и используется максимально широко. Однако вы скорее всего согласитесь, что эта жертва свободой в общем и целом стоит того.
Да, поэтому вы не ответили на мой вопрос. Представьте, что появилось первое государство и мы обсуждаем, какие меры помогли бы уменьшить количество преступлений. Я говорю: было неплохо создать людей с особыми полномочиями, которые бы арестовывали преступников. Вы отвечаете:
Вы не очень поняли. Я бы посадил всех людей на самый жесткий карантин, что бывает, в марте 2020. Не получилось в марте -- в апреле. Не получилось до сих пор -- сейчас.
В этом случае все сидят на карантине две недели, а потом выходят и продолжают обычную спокойную жизнь, как будто ковида и не было. И никогда его больше не будет.
У нас же постоянно полумеры, которые не особо помогают и жизнь портят -- причем ухудшения жизни за полтора года полумер уже набежало больше, чем посидеть две недели дома. И да, разумеется, при таком долгом сроке кому-то выдаются полномочия, развиваются системы слежки и так далее и так далее.
Что касается, вопроса свободы, у этой цитаты и этого принципа очень явно есть границы применимости. Вы бы стали отменять полицию, например?
Про двоемыслие: речь про повседневную жизнь. Вы может забыли, как у нас было в тот момент, или живёте где-то в другом месте, но везде маски, много что закрыто и не работает. Австралия в тот момент уже забыла, как это: никаких мер, никаких ковидных новостей, ничего кроме нелетающих самолётов.
Во-первых, я совершенно спокойно приехал сюда в апреле, как и куча моих коллег, которые совершенно спокойно сюда понаезжали с сентября по июнь.
Во-вторых, посмотрите статистику: летом 2020 в Австралии ковид был, а в сентябре уже не было. Кто там медленнее заболевает, говорите? Точно ли в этом причина?
А есть пруфы? У меня миллиард знакомых австралийцев аниме смотрит.
Наоборот замечательно. В сентябре год назад ковид в Австралии закончился. Да, страна большей частью была закрыта всё это время. Да, любой переболевший или привитый всё равно должен был просидеть в отеле 2 недели, ни с кем не контактируя. Но это того стоит: внутри страны почти год никто не болел, никакого локдауна не было, никаких ограничительных мер, люди жили как раньше. Когда я приехал, первые дни автоматически хватался за маску, входя в магазин. Никак не мог привыкнуть, что тут ну вообще как будто 2020 не было.
Собственно, я считаю, что и меры нужно было принимать максимально жёсткие, заперев всю страну на карантин недели на 2, а не бегать с полумерами, которые всё равно никак не помогают, по полгода.
Так это про антиковидные меры.
Вообще мне после России довольно странно наблюдать местное возмущение полицией, когда к тебе даже за нарушения часто говорят "больше так не делай" и уходят вместо выписывания штрафа.
Нет, положение женщины, сидящей с ребёнком дома – это ожидаемое изменение. Более того, желаемое изменение.
Разница в этом.
Актуальные модели ноутбуков и смартфонов на витрине предназначены, чтобы изнашиваться. Если их потом кому и продают, то с большущей скидкой за износ. И износ одной модели отлично окупается покупкой тысяч других, которые купили пощупавшие их люди. Если бы не окупались, их бы не было.
Если не изменяет память, в Яндексе налог на еду тоже вычитался.
Будет ли разработчик из дешёвого места таким же качественным? Вспомним, что в среднем хорошие разработчики чаще переезжают из дешёвых мест в дорогие, чем наоборот. Подумаем о том, что в большинстве хорошие разработчики, переехавшие в более дешёвое место, не будут соглашаться на более дешёвую зарплату.
Даже если такого возможно найти, всё равно риски гораздо выше + разработчику нужно время вникнуть в проект и начать работать (сравниваем с существующим разработчиком, который уже работает, работает хорошо, а раз работает — не трогай). А ведь риски это не просто "один день поработал и уволился", это всё потраченное время и силы на онбоардинг, через которое вы узнаете, что вот этот разработчик из глубинки вам не подходит.
В TypeScript у людей всегда соблазн писать максимально строгие типы.
"А вот это поле бывает [number, number] если в соседнем поле лежит string, а бывает [string, number, string], если в другом соседнем поле лежит boolean, а оба соседних поле зависят от чего-то ещё, давайте все это типизируем чтобы оно соответствовало, сделаем цепочку из 20 наследований, где у каждого типа в цепочке ещё и по 20 дженериков".
В итоге у тебя сверхзапутанная система типов, которые не помогают примерно никогда, с трудом читаются и требуют неделю вносить в них изменения при 5-минутных правках кода. Я не шучу, столько раз об это спотыкался.
Из живых примеров — недавно редактировал код, где у компонента Table в Props захотели сделать, чтобы Cols.length == Rows[any index].length. Как-то сделали. Я часа два над этими типами медитировал, так до конца и не понял, как это должно работать.
А в итоге по всему коду проекта раскидано
as Rows<rowLength>
, потому что у явно заданного массива ts почему-то длину не распознаёт, а у динамически полученного в рантайме понятно почему не распознаёт. При этом, очевидно, не проверяет такая проверка абсолютно ничего – во всех живых кейсах данные для таблицы получаются в рантайме.Проблема абсолютно такая же, как с динамической типизацией. Есть динамическая типизация — люди ей злоупотребляют и стреляют себе в ногу. Есть статическая — аналогично. Только злоупотреблять ей можно иначе.