А может наоборот?
Когда следят скрытно — не хотят, чтобы контролировали соразмерность/законность слежки.
Когда следят открыто — показывают, что им самим скрывать нечего и они уверены в законности своих действий.
Понятно, что в реальности черного и белого нет, но все же мне гораздо больше импонирует то, что наши хотя бы не строят невинную рожу, когда им говорят об их слежке за нами. Так оно как-то честнее.
> Если выяснится, что меня за одежду останавливают для проверки документов, то это будет повод устроить кипиш по поводу «мешают
> одеваться как я хочу» и начать движение за популяризацию ношения капюшона и т.д.
Да Вам не скажут, почему. Ответ стандартный: «Показался подозрительным». Как и тов. Циммерману. Просто показался, ничего личного.
> Но поведение на дороге как раз должно быть абсолютно стандартизировано
Да просто последствия суровее. В метро тоже есть куча правил — придерживаемся правой стороны эскалатора, правой стороны перехода и т.п. Хотя последствия не особо суровые. И никто не протестует. Вопрос лишь — где граница дозволенного и где гарантия, что она неподвижна?
> А в обыденной жизни никакая стандартизация не прокатит — это легко можно видеть по «любви» к дресс-коду. Только за большие > деньги или от безвыходности.
> Семь лет назад в столице Соединённого Королевства было введено ограничение на ношение толстовки с капюшоном (hoddie),
> скрывающей лицо.
А вот британцам — ок. Почему?
> Вопрос в том, где проходит линия допустимой инвазивности. Скажем, я на человека в больших зеркальных очках, маске от простуды и > капюшоне на глаза, буду смотреть с большой опаской. Вне зависимости от стандартов.
Вот в этом основой поинт: эта самая линия имеет тенденцию двигаться. Не то, чтобы очень быстро, но — двигаться.
Нет, как раз логика вполне ясна.
Если кто-то в поле зрения системы™ начнет вести себя нешаблонно — ну там выглядывать из-за каждого угла и двигаться перебежками, прятаться от ментов, скучающих у метро, ну или там бегать на четвереньках — он вполне логично будет остановлен. На всякий случай. Потом может выясниться, что все ок и повода для беспокойства нет, но время отнимет это изрядно.
А потраченное время является само по себе хорошим мотиватором не действовать так, чтобы не привлекать ментов.
Применительно к текущей ситуации: Если каждый раз при выходе из дома Вы надеваете капюшон и темные очки и каждый же раз вас тормозят и просят предъявить документы — раза через 3 желание носить капюшон и очки отпадет у любого. То есть мы плавно подходим к мысли, что безобидный в общем-то капюшон будет вытеснен из употребления. И чем дальше, тем этот процесс будет идти быстрее. В конечном итоге кто-то в капюшоне будет выглядеть как белая ворона.
Что дальше — высокий воротник? Шарф, закрывающий пол-лица? Шапка, надвинутая на глаза? И так далее, до полной стандартизации. Как во внешнем виде, так и в поведении.
Вспомните штатовский кодекс поведения при остановке местным гайцом. Руки на руле, из машины не вылезать, резких движения не совершать. Это ли не терминальная стадия стандартизации поведения?
Если мы говорим о *действительно* случайных числах — то только квантовые аппаратные генераторы, там жестко подперто, что за рандомность отвечает вселенная в лице квантовой механики.
На практике такая пунктуальность не особенно важна, поэтому используются разнообразные шумы из драйверов, типа младшего бита на линейном входе аудиокарточки.
> А не кажется ли Вам, что в rand() можно встроить проверку был ли инициализирован srand()?
Он всегда инициализирован. По умолчанию единицей. Что дает полностью предсказуемый результат. Для тех, кого не устраивает, как раз и сделали функцию srand(). Просто про нее надо знать.
> И ещё сделать его сразу threadsafe?
Да запросто. С бесплатным бонусом в виде возросшего на порядок времени исполнения и малопредсказуемыми дедлоками.
> и избавить их от необходимости выискивать неочевидные ошибки?
Вы хотите сказать — добавить им необходимости выискивать неочевидные ошибки?
Собственно, rand() так и сделан — предельно просто и очевидно. И потому для реальных целей малоприменим. Все равно придется писать объекты-обертки, если не вообще менять алгоритм генерации, т.к. дефолтная реализация, скажем прямо, не жжет.
Языки программирования, они как правило делаются не для студентов все же, а для коммерческого ПО. Где подразумевается, что пишущие имеют представление о том, как оно должно работать. Поэтому C#-овский рандом сделан именно так — минимализм и расширяемость в ущерб удобству использования «из коробки». Зато максимально прозрачно.
Практика показывает, что если Вы пишете что-то сложнее курсовой младших курсов института, то подводные камни — есть.
Просто Вы о них(пока еще) не знаете. Но в продакшне вылезет.
То же rand() без srand() — а, от запуска к запуску будет выдавать одно и то же. Ну то есть игра, например, в нарды будет вызывать чувство дежа вю. А если с srand()-ом с сидом с таймера — то как воспроизвести в тестах? Да и вообще — воспроизвести.
Когда следят скрытно — не хотят, чтобы контролировали соразмерность/законность слежки.
Когда следят открыто — показывают, что им самим скрывать нечего и они уверены в законности своих действий.
Понятно, что в реальности черного и белого нет, но все же мне гораздо больше импонирует то, что наши хотя бы не строят невинную рожу, когда им говорят об их слежке за нами. Так оно как-то честнее.
Это правильно. Может хоть там АНБ не услышит ;)
> одеваться как я хочу» и начать движение за популяризацию ношения капюшона и т.д.
Да Вам не скажут, почему. Ответ стандартный: «Показался подозрительным». Как и тов. Циммерману. Просто показался, ничего личного.
> Но поведение на дороге как раз должно быть абсолютно стандартизировано
Да просто последствия суровее. В метро тоже есть куча правил — придерживаемся правой стороны эскалатора, правой стороны перехода и т.п. Хотя последствия не особо суровые. И никто не протестует. Вопрос лишь — где граница дозволенного и где гарантия, что она неподвижна?
> А в обыденной жизни никакая стандартизация не прокатит — это легко можно видеть по «любви» к дресс-коду. Только за большие > деньги или от безвыходности.
> Семь лет назад в столице Соединённого Королевства было введено ограничение на ношение толстовки с капюшоном (hoddie),
> скрывающей лицо.
А вот британцам — ок. Почему?
> Вопрос в том, где проходит линия допустимой инвазивности. Скажем, я на человека в больших зеркальных очках, маске от простуды и > капюшоне на глаза, буду смотреть с большой опаской. Вне зависимости от стандартов.
Вот в этом основой поинт: эта самая линия имеет тенденцию двигаться. Не то, чтобы очень быстро, но — двигаться.
Если кто-то в поле зрения системы™ начнет вести себя нешаблонно — ну там выглядывать из-за каждого угла и двигаться перебежками, прятаться от ментов, скучающих у метро, ну или там бегать на четвереньках — он вполне логично будет остановлен. На всякий случай. Потом может выясниться, что все ок и повода для беспокойства нет, но время отнимет это изрядно.
А потраченное время является само по себе хорошим мотиватором не действовать так, чтобы не привлекать ментов.
Применительно к текущей ситуации: Если каждый раз при выходе из дома Вы надеваете капюшон и темные очки и каждый же раз вас тормозят и просят предъявить документы — раза через 3 желание носить капюшон и очки отпадет у любого. То есть мы плавно подходим к мысли, что безобидный в общем-то капюшон будет вытеснен из употребления. И чем дальше, тем этот процесс будет идти быстрее. В конечном итоге кто-то в капюшоне будет выглядеть как белая ворона.
Что дальше — высокий воротник? Шарф, закрывающий пол-лица? Шапка, надвинутая на глаза? И так далее, до полной стандартизации. Как во внешнем виде, так и в поведении.
Вспомните штатовский кодекс поведения при остановке местным гайцом. Руки на руле, из машины не вылезать, резких движения не совершать. Это ли не терминальная стадия стандартизации поведения?
Ну и на дороге уважают, тоже важно…
Также будет доступна функция «сделать бочку».
Отличная фраза. :)
На практике такая пунктуальность не особенно важна, поэтому используются разнообразные шумы из драйверов, типа младшего бита на линейном входе аудиокарточки.
Он всегда инициализирован. По умолчанию единицей. Что дает полностью предсказуемый результат. Для тех, кого не устраивает, как раз и сделали функцию srand(). Просто про нее надо знать.
> И ещё сделать его сразу threadsafe?
Да запросто. С бесплатным бонусом в виде возросшего на порядок времени исполнения и малопредсказуемыми дедлоками.
> и избавить их от необходимости выискивать неочевидные ошибки?
Вы хотите сказать — добавить им необходимости выискивать неочевидные ошибки?
Собственно, rand() так и сделан — предельно просто и очевидно. И потому для реальных целей малоприменим. Все равно придется писать объекты-обертки, если не вообще менять алгоритм генерации, т.к. дефолтная реализация, скажем прямо, не жжет.
Языки программирования, они как правило делаются не для студентов все же, а для коммерческого ПО. Где подразумевается, что пишущие имеют представление о том, как оно должно работать. Поэтому C#-овский рандом сделан именно так — минимализм и расширяемость в ущерб удобству использования «из коробки». Зато максимально прозрачно.
Просто Вы о них(пока еще) не знаете. Но в продакшне вылезет.
То же rand() без srand() — а, от запуска к запуску будет выдавать одно и то же. Ну то есть игра, например, в нарды будет вызывать чувство дежа вю. А если с srand()-ом с сидом с таймера — то как воспроизвести в тестах? Да и вообще — воспроизвести.
Перед тем, как обвинять, не поленитесь разобраться, о чем вообще речь идет.