Если корпоратив проводится в выходные - у меня могут быть уже выстроенные планы на выходные, не позволяющие в нем участвовать.
Вы читали первое моё сообщение, в котором написано:
Это решается просто — такой корпоратив проводится в рабочий день.
или не читали?
Более того, корпоратив проводится в пятницу, чтобы на следующий день не нужно было идти на работу.
Если же это проводится в рабочее время - то я готов в нем участвовать только при условии, что к моменту окончания рабочего дня я могу быть свободен в такое время, чтобы я успел на свои заранее распланированные активности после рабочего дня - например, забрать чадо из детсада. Или приехать поставить лежачему родственнику очередную капельницу.
Да, это условие тоже, насколько я помню, выполнялось.
Да, еще одно важное условие - что корпоратив не должен предполагать по умолчанию денежных трат участников.
Об этом даже мысли в голову не приходили, потому что это было так по определению, и во всём.
Например, компания даже оплачивала ужин, если человек задерживался на работе и ходил в кафе ужинать, нужно было только чек предоставить, хотя это и не относится впрямую к обсуждаемой теме.
Но компания оплачивает только билет - питаться за свои (а ценник там ой-ей-ей), проносить продукты на борт запрещено - будут досматривать вещи. Кто не едет - пишите служебки с обоснованием.
Это какая-то другая компания, я же описываю свой опыт и опыт и ощущения тех, кто был больше всех против, но, попробовав, изменил своё мнение.
Вы можете мне не верить, что так бывает. И что, когда бывает, именно так воспринимается теми, кто против.
Условия, которые необходимо соблюсти, чтобы так было, я описал.
Были и у нас ярые противники обязательного корпоратива, а с самым ярым из них я был в приятельских отношениях. Но даже он потом сказал, что в таком виде оно — вполне приемлемо (он как раз выбрал баню с пивом), хотя, пока не попробовал (вынужденно), он так не считал, даже зная наперёд все условия.
Если проводить такие хорошо организованные и продуманные корпоративы не более двух раз в год, то, как показал опыт, это приемлемо даже для самых ярых противников корпоративов, но, правда, они начинают это признавать только после того, как попробовали.
Летом корпоратив проводится, естественно, на пляже, со всякими необязательными развлечениями, типа футбола в надувном бассейне, в который налито 10-15 сантиметров воды, — безудержно ржут все, и те, кто играет, и те кто смотрит.
Ну приехал я в составе группы сотрудников под угрозой штрафов за неявку.
Это решается просто — такой корпоратив проводится в рабочий день.
Ну раздали нам эти квиточки на аренду снаряжения и подъемники.
Народ делится на несколько групп: горнолыжники (коих оказывалось большинство), квадрациклисты, пампушники (саночники), саунисты (парятся в бане, по желанию пьют там пиво и выпрыгивают из парилки в снег).
Я на горных не стоял, тренеров нет, выдали снаряжение - и давай вперед, лезь и учись сам. Удовольствие ниже среднего на мой (и не только мой) вкус.
Те из горнолыжников, кто уже умеет кататься, катаются в своё удовольствие, остальные же сначала проходят занятия с настоящим тренером, за которого уже заплачено, а потом, через час-другой, уже вполне сносно катаются, тоже в своё удовольствие.
Нужно просто нужно протусоваться несколько часов вне теплых помещений (потому что не заказывали) при температуре -10.
Там же арендуется несколько домиков, поскольку сами домики изначально там предусмотрены, куда народ с утра и заезжает, а в одном из домиков утром проводится презентация, днём — катания, а вечером — банкет с выпивкой.
И более никаких развлечений.
Части народа так нравится баня, что её ещё на ночь выкупают уже в частном порядке.
Офигенный корпоратив
Если организовывать с умом и проводить раз в год, то — да.
Когда-то (я еще успел) можно было поставить десктопную версию телеграма на комп с привязкой его к любому номеру телефона, на который можно получить смс с кодом.
Если вас раз'login'ит там, и больше сессий нет, то тогда - как сейчас:
Сейчас это не работает. Вы должны сначала поставить телеграм на телефон, а только потом уже сможете поставить его на десктоп.
Установить можно сразу, но авторизоваться через SMS можно только на мобильном устройстве, и это не обязательно должен быть телефон.
Кто мне объяснит - зачем Паше не просто знать номер моего телефона, но быть уверенным это реально действующий телефон? Вот чтобы что? Это ему лично надо, или он перед кем-то отчитывается?
Что значит, реально действующий телефон?
В таких случаях Telegram ставится, например, на планшет, в котором отродясь никогда не было никакой SIM-ки, на планшете вводится номер телефона, на который необходимо прислать SMS-ку, и она приходит, после чего код вводится в Telegram на планшете и происходит успешный login.
Далее, то же самое делается на Desktop'е, но код приходит в планшетный Telegram, он вводится в Desktop'ный Telegram, и теперь и там произошёл успешный login.
Всё, на планшете Telegram можно сносить, а через сутки можно будет завершить планшетную сессию Telegram'а из Desktop'ной версии.
Но, согласен, когда первый раз случайно обнаруживается, что теперь Desktop'ная версия специально отказывается прислать SMS-ку, возмущению, конечно, нет предела, но потом просто делаются выводы и меняется отношение к Telegram'у и основателям. И подкладывается соломка на будущее.
я согласен, чуток универсальности теряется. Но это довольно синтетический кейс, по крайней мере для меня. Мне гораздо чаще нужна работа с конкретной коллекцией.
Видите, вы хотели бы, чтобы C++ был "заточен" под вас. Но я почему-то думаю, что тот факт, что он "заточен" не под вас, — не повод для "Оды хейта C++". Видимо, не ваш это язык, не для вас, вот и всё.
Раскомментируйте последнюю строку в функции abcx() и заставьте работать ваш вариант так же, как работает вариант с функцией abcy().
Думаю, вам станет понятно, почему был сделан выбор в пользу свободных функций.
И обратите внимание, как пришлось протаскивать конструкторы через два шаблонных класса, чтобы my_vector можно было проинициализировать так же легко, как и std::vector.
Если касаться ТЕХНИЧЕСКОЙ стороны, то у Линуса работает, а у других нет.
К сожалению, не работает у Linus'а.
Лет 7 назад хотел проверить поведение множества вложенных tag'ированных VLAN'ов. На каждый вложенный VLAN тратится 4 байта, стандартный MTU сетевого интерфейса составляет 1500, поэтому я написал скрипт, который создаёт 350 вложенных enslave-интерфейсов, чтобы получить 350 вложенных tag'ированных VLAN'ов, чтобы, в результате, 1400 байт ушло на tag'и, и 100 байт осталось на другие заголовки и на payload пакета.
Скрипт логировал свои действия, чтобы я мог оценить скорость и динамику создания вложенных интерфейсов, поэтому я увидел, как после создания 301-го ил 302-го вложенного интерфейса ядро зависло. Курсор мыши намертво "прилип" к экрану, и даже SysRq не работал, пришлось перезагружаться. Ядро было версии 3.16.
Кстати, поведение ядра здесь замечательно сочетается с подходом Linus'а к вопросу тестирования:
About testing
"Regression testing"? What's that? If it compiles, it is good; if it boots up, it is perfect.
Не так давно решил проверить, что изменилось с тех времён. Сначала было удивительно, потом было очень смешно. После 8-ой вложенности выдаёт ошибку, что слишком много вложенностей, не могу добавить ещё одну вложенность.
Замечательное решение.
А вот если смотреть, кто когда что сказал и как это можно интерпретировать...
Не думаю, что там что-то, специально меняющее смысл без контекста. В частности, по поводу Standards and reality однозначно можно интерпретировать.
Когда в Shockwave Flash неправомерно использовали memcpy вместо memmove для копирования перекрывающихся областей памяти (чтобы побыстрее копировалось), а затем эти заботливо разложенные грабли сработали, когда для одной из архитектур реализация memcpy изменилась, но в пределах стандарта, звук Shockwave Flash стал искажённым, потому что копирование теперь происходило неверно.
Linus требовал вернуть предыдущую реализацию memcpy вместо того, чтобы требовать исправить код, неправомерно использующий memcpy вместо memmove. Когда же его ткнули носом в стандарт и прямо и недвусмысленно сказали, что ошибка — в коде Shockwave Flash, и поэтому исправлять следует именно там, а не где-то ещё, Linus выдал свой позорный опус про стандарты:
Standards and reality
Standards are paper. I use paper to wipe my butt every day. That's how much that paper is worth. Reality is what matters.
С этого момента я понял, что, с технической точки зрения, по крайней мере, для меня, Linus — 0, хотя в тот момент мне поверить в это было трудно, но я смог, с фактами не поспоришь.
А о чём же тогда речь? О том, что компилятор читает комментарии?
Да, и о том, что эта идея не только пришла кому-то в голову, но и была реализована для fallthrough, и что эта же идея хорошо подходит в обсуждаемом случае, поскольку комментарии как раз и предназначены для описания напрямую не очевидных из кода вещей, а намеренное использование переполнения — вещь, напрямую из кода не очевидная.
Вынужден с вами не согласиться:
Корень кубический из 380000 равен, примерно, 72, а не 716.
Сложности перевода.
Почему-то никто не говорит о стейтментах.
https://en.cppreference.com/w/cpp/language/statements
Это — очевидно.
Именно, поскольку это — не очевидно, в отличие от обратного.
Это не имеет отношения к ошибке выжившего.
Может казаться, что возможность организовать корпоратив правильным образом — чисто теоретическая, и на практике не достижима.
Но мой опыт говорит о том, что достижима и на практике.
И я привёл те важные условия, которые необходимо соблюсти, чтобы достичь этого на практике.
В этом — вся моя мысль, ничего другого я не подразумеваю.
Три компилятора говорят о том, что это совсем не то UB (unspecified).
Меня тоже удивляет, когда человек в упор не замечает написанное, просто его игнорируя, и повторяет фразу.
Именно.
Правильный корпоратив подобного толка проводится в рабочий день, причём, этот день — пятница, чтобы на следующий день не нужно было идти на работу.
Вы читали первое моё сообщение, в котором написано:
или не читали?
Более того, корпоратив проводится в пятницу, чтобы на следующий день не нужно было идти на работу.
Да, это условие тоже, насколько я помню, выполнялось.
Об этом даже мысли в голову не приходили, потому что это было так по определению, и во всём.
Например, компания даже оплачивала ужин, если человек задерживался на работе и ходил в кафе ужинать, нужно было только чек предоставить, хотя это и не относится впрямую к обсуждаемой теме.
Это какая-то другая компания, я же описываю свой опыт и опыт и ощущения тех, кто был больше всех против, но, попробовав, изменил своё мнение.
Вы можете мне не верить, что так бывает.
И что, когда бывает, именно так воспринимается теми, кто против.
Условия, которые необходимо соблюсти, чтобы так было, я описал.
Да, это — важный момент, без него — никак.
Были и у нас ярые противники обязательного корпоратива, а с самым ярым из них я был в приятельских отношениях. Но даже он потом сказал, что в таком виде оно — вполне приемлемо (он как раз выбрал баню с пивом), хотя, пока не попробовал (вынужденно), он так не считал, даже зная наперёд все условия.
Если проводить такие хорошо организованные и продуманные корпоративы не более двух раз в год, то, как показал опыт, это приемлемо даже для самых ярых противников корпоративов, но, правда, они начинают это признавать только после того, как попробовали.
Летом корпоратив проводится, естественно, на пляже, со всякими необязательными развлечениями, типа футбола в надувном бассейне, в который налито 10-15 сантиметров воды, — безудержно ржут все, и те, кто играет, и те кто смотрит.
Это — не операторы.
Никакие нельзя, нет такого понятия даже.
Если корпоратив плохо организован, — конечно.
Это решается просто — такой корпоратив проводится в рабочий день.
Народ делится на несколько групп: горнолыжники (коих оказывалось большинство), квадрациклисты, пампушники (саночники), саунисты (парятся в бане, по желанию пьют там пиво и выпрыгивают из парилки в снег).
Те из горнолыжников, кто уже умеет кататься, катаются в своё удовольствие, остальные же сначала проходят занятия с настоящим тренером, за которого уже заплачено, а потом, через час-другой, уже вполне сносно катаются, тоже в своё удовольствие.
Там же арендуется несколько домиков, поскольку сами домики изначально там предусмотрены, куда народ с утра и заезжает, а в одном из домиков утром проводится презентация, днём — катания, а вечером — банкет с выпивкой.
Части народа так нравится баня, что её ещё на ночь выкупают уже в частном порядке.
Если организовывать с умом и проводить раз в год, то — да.
Можно и на планшет установить, и планшет может быть без SIM-ки.
Написал в этом ответе.
Если вас раз'login'ит там, и больше сессий нет, то тогда - как сейчас:
Установить можно сразу, но авторизоваться через SMS можно только на мобильном устройстве, и это не обязательно должен быть телефон.
Что значит, реально действующий телефон?
В таких случаях Telegram ставится, например, на планшет, в котором отродясь никогда не было никакой SIM-ки, на планшете вводится номер телефона, на который необходимо прислать SMS-ку, и она приходит, после чего код вводится в Telegram на планшете и происходит успешный login.
Далее, то же самое делается на Desktop'е, но код приходит в планшетный Telegram, он вводится в Desktop'ный Telegram, и теперь и там произошёл успешный login.
Всё, на планшете Telegram можно сносить, а через сутки можно будет завершить планшетную сессию Telegram'а из Desktop'ной версии.
Но, согласен, когда первый раз случайно обнаруживается, что теперь Desktop'ная версия специально отказывается прислать SMS-ку, возмущению, конечно, нет предела, но потом просто делаются выводы и меняется отношение к Telegram'у и основателям. И подкладывается соломка на будущее.
А какие операторы являются перегружаемыми?
while,for, может быть,if?Видите, вы хотели бы, чтобы C++ был "заточен" под вас.
Но я почему-то думаю, что тот факт, что он "заточен" не под вас, — не повод для "Оды хейта C++". Видимо, не ваш это язык, не для вас, вот и всё.
Модифицированный вариант: https://gcc.godbolt.org/z/j5WsEo87E
Раскомментируйте последнюю строку в функции
abcx()и заставьте работать ваш вариант так же, как работает вариант с функциейabcy().Думаю, вам станет понятно, почему был сделан выбор в пользу свободных функций.
И обратите внимание, как пришлось протаскивать конструкторы через два шаблонных класса, чтобы
my_vectorможно было проинициализировать так же легко, как иstd::vector.В исходном фрагменте, на который я отвечал:
нет ни единого намёка "на выражение сравнения".
И не указатель на первый элемент.
Разве?
К сожалению, не работает у Linus'а.
Лет 7 назад хотел проверить поведение множества вложенных tag'ированных VLAN'ов. На каждый вложенный VLAN тратится 4 байта, стандартный MTU сетевого интерфейса составляет 1500, поэтому я написал скрипт, который создаёт 350 вложенных enslave-интерфейсов, чтобы получить 350 вложенных tag'ированных VLAN'ов, чтобы, в результате, 1400 байт ушло на tag'и, и 100 байт осталось на другие заголовки и на payload пакета.
Скрипт логировал свои действия, чтобы я мог оценить скорость и динамику создания вложенных интерфейсов, поэтому я увидел, как после создания 301-го ил 302-го вложенного интерфейса ядро зависло. Курсор мыши намертво "прилип" к экрану, и даже SysRq не работал, пришлось перезагружаться. Ядро было версии 3.16.
Кстати, поведение ядра здесь замечательно сочетается с подходом Linus'а к вопросу тестирования:
Не так давно решил проверить, что изменилось с тех времён.
Сначала было удивительно, потом было очень смешно.
После 8-ой вложенности выдаёт ошибку, что слишком много вложенностей, не могу добавить ещё одну вложенность.
Замечательное решение.
Не думаю, что там что-то, специально меняющее смысл без контекста. В частности, по поводу Standards and reality однозначно можно интерпретировать.
Когда в Shockwave Flash неправомерно использовали
memcpyвместоmemmoveдля копирования перекрывающихся областей памяти (чтобы побыстрее копировалось), а затем эти заботливо разложенные грабли сработали, когда для одной из архитектур реализацияmemcpyизменилась, но в пределах стандарта, звук Shockwave Flash стал искажённым, потому что копирование теперь происходило неверно.Linus требовал вернуть предыдущую реализацию
memcpyвместо того, чтобы требовать исправить код, неправомерно использующийmemcpyвместоmemmove. Когда же его ткнули носом в стандарт и прямо и недвусмысленно сказали, что ошибка — в коде Shockwave Flash, и поэтому исправлять следует именно там, а не где-то ещё, Linus выдал свой позорный опус про стандарты:Можете сами почитать здесь.
С этого момента я понял, что, с технической точки зрения, по крайней мере, для меня, Linus — 0, хотя в тот момент мне поверить в это было трудно, но я смог, с фактами не поспоришь.
Да, и о том, что эта идея не только пришла кому-то в голову, но и была реализована для fallthrough, и что эта же идея хорошо подходит в обсуждаемом случае, поскольку комментарии как раз и предназначены для описания напрямую не очевидных из кода вещей, а намеренное использование переполнения — вещь, напрямую из кода не очевидная.