Спортивное программирование → Когда алгоритм верный, а всё равно TL
Многие удивляются, а как это разные людишки решают задачи так, что они принимаются моментально или почти моментально? Ответ прост: они ставят много интересных экспериментов, оптимизируют код, и порой приходят к забавным результатам. Тут я приведу несколько своих.
Cisco → Курс молодого бойца: тонкости настроек маршрутизаторов и коммутаторов
Будем считать, что вы уже активно осваиваете хитрости настройки через консоль. Пришло время рассказать ещё несколько тонкостей. О чём имеет смысл подумать при настройке маршрутизаторов и коммутаторов cisco.
Тонкость 1. Аккуратность.
Часто возникает задача что-нибудь добавить в текущую конфигурацию. Наверняка вы знаете, что многие элементы пишутся отдельно, а отдельно применяются (на интерфейс, ко всей железке и т.д.). Будьте крайне осторожны, изменяя настройки таких технологий, как PBR (route-map), QoS (policy-map), IPSec (crypto map), NAT. Лучше всего сначала снять их с использования, потом изменить, потом повесить снова. Связано это с тем, что все изменения вы вносите сразу же в состояние железки. Иногда то, что уже работает (например, подгружено в оперативку) конфликтует с новым конфигом. Не редки ситуации, когда железка уходит в перезагрузку после попытки изменения конфига.
Пример: пусть у нас есть route-map, примененный на интерфейс. Пусть нам надо его изменить. Наиболее «чистый» способ такой:
Тонкость 1. Аккуратность.
Часто возникает задача что-нибудь добавить в текущую конфигурацию. Наверняка вы знаете, что многие элементы пишутся отдельно, а отдельно применяются (на интерфейс, ко всей железке и т.д.). Будьте крайне осторожны, изменяя настройки таких технологий, как PBR (route-map), QoS (policy-map), IPSec (crypto map), NAT. Лучше всего сначала снять их с использования, потом изменить, потом повесить снова. Связано это с тем, что все изменения вы вносите сразу же в состояние железки. Иногда то, что уже работает (например, подгружено в оперативку) конфликтует с новым конфигом. Не редки ситуации, когда железка уходит в перезагрузку после попытки изменения конфига.
Пример: пусть у нас есть route-map, примененный на интерфейс. Пусть нам надо его изменить. Наиболее «чистый» способ такой:
PHP → Чудеса оператора ==
Как вы думаете, обладает ли оператор == в PHP свойством транзитивности? Транзитивность в данном случае означает следующее:
А вот и нет:
если $a == $b и $b == $c, то $a == $cПервое, что приходит в голову: "это ж очевидно, конечно обладает!"
А вот и нет:
'0' == false; // true
false == ''; // true
'0' == ''; // false :)))
Добро пожаловать в увлекательный мир PHP. Занавес...
P.S.: Вот тут (и ещё тут, спасибо
Kupyc
P.P.S.: Пост не для холивара, а к сведению и чтобы улыбнуться. Сам активно пишу на PHP.