Случился у меня как-то один курьез на работе и в этом посте я бы хотел рассказать, насколько мы иногда неосознанно действуем в жизни, даже не задумываясь о своих действиях, а во многих случаях такое поведение может принести много бед. Речь пойдет об обычной вредной привычке разработчика (будем именовать его безликим Разработчиком или Программистом).
Работа ведется над средним проектом посещаемостью до пятнадцати тысяч уникальным посетителей в сутки, не много, но и не сайт-визитка. Отдельный dev-сервер, Merсurial, распределенная разработка, выкатка обновлений, документирование. В общем обычная налаженная среднестатистическая схема разработки проекта.
Дело было днем, работы было валом. Программист, как обычно, шествуя по todo-листу, выполнял мелкие задачи, которые входили в крупные задачи, которые, в свою очередь, касались новых модулей или рефакторинга старых. Все шло как обычно. И вот одна из задач потребовала от Разработчика найти один из файлов *.php среди тысяч других файлов в проекте. Дергать ПМ'а Программист не решился по такому мелкому вопросу, и решил, пока будет заниматься одной из задач, запустить mc в консоли и прогнать поиск по содержимому файла по файловой структуре проекта. Запускает любимый putty, активирует нужное подключение, вводит root/пароль — соединение установлено (не буду уточнять, почему именно этот разработчик мог подключаться к руту). Практически не глядя, привычный клик курсорной клавиши вверх, для вызова последней команды «screen -r» и enter. В последнее мгновенье разработчик замечает что-то не стандартное, однако становится уже поздно. Процесс "/sbin/shutdown -h now" пошел.
Через пару секунд удивленный возглас ПМ'а, ворчание коллег разработчиков и «мягкое» посылание системного администратора, что не предупредил. Ничего критичного не произошло: за-shutdown-нился девелоперский сервер и работа временно встала.
Итак, что мы имеет: root доступ у разработчика (хотя этого нужно избегать), привычку включать screen не глядя, сисадмин накануне перезагружал сервер.
Однако, и естественно, девелоперский сервер полностью изолирован от всех других серверов компании (начиная от production-сервера, заканчивая тестовыми серверами для отдела тестирования), поэтому критичных сбоев в работе компании не последовало.
Смысл истории таков, что в независимости от каких-либо окружающих обстоятельств, других людей, собственных убеждений, мы всегда должны стараться быть максимально осознанными (прим. автора: осознание — осознавать свои действия в каждый момент времени, понимать и помнить, что мы делаем и почему). Это позволит избежать множества проблем, неприятностей и «искусанных» локтей в последствии. В сфере IT, так же как и в других сферах, машинальное, пусть и привычное действие, может стать отправной точкой к различным проблемам и неприятностям.
Но, конечно же, важную роль играет настройка окружения и прав доступа, если рассматривать вышеупомянутый случай.
Работа ведется над средним проектом посещаемостью до пятнадцати тысяч уникальным посетителей в сутки, не много, но и не сайт-визитка. Отдельный dev-сервер, Merсurial, распределенная разработка, выкатка обновлений, документирование. В общем обычная налаженная среднестатистическая схема разработки проекта.
Дело было днем, работы было валом. Программист, как обычно, шествуя по todo-листу, выполнял мелкие задачи, которые входили в крупные задачи, которые, в свою очередь, касались новых модулей или рефакторинга старых. Все шло как обычно. И вот одна из задач потребовала от Разработчика найти один из файлов *.php среди тысяч других файлов в проекте. Дергать ПМ'а Программист не решился по такому мелкому вопросу, и решил, пока будет заниматься одной из задач, запустить mc в консоли и прогнать поиск по содержимому файла по файловой структуре проекта. Запускает любимый putty, активирует нужное подключение, вводит root/пароль — соединение установлено (не буду уточнять, почему именно этот разработчик мог подключаться к руту). Практически не глядя, привычный клик курсорной клавиши вверх, для вызова последней команды «screen -r» и enter. В последнее мгновенье разработчик замечает что-то не стандартное, однако становится уже поздно. Процесс "/sbin/shutdown -h now" пошел.
Через пару секунд удивленный возглас ПМ'а, ворчание коллег разработчиков и «мягкое» посылание системного администратора, что не предупредил. Ничего критичного не произошло: за-shutdown-нился девелоперский сервер и работа временно встала.
Итак, что мы имеет: root доступ у разработчика (хотя этого нужно избегать), привычку включать screen не глядя, сисадмин накануне перезагружал сервер.
Однако, и естественно, девелоперский сервер полностью изолирован от всех других серверов компании (начиная от production-сервера, заканчивая тестовыми серверами для отдела тестирования), поэтому критичных сбоев в работе компании не последовало.
Смысл истории таков, что в независимости от каких-либо окружающих обстоятельств, других людей, собственных убеждений, мы всегда должны стараться быть максимально осознанными (прим. автора: осознание — осознавать свои действия в каждый момент времени, понимать и помнить, что мы делаем и почему). Это позволит избежать множества проблем, неприятностей и «искусанных» локтей в последствии. В сфере IT, так же как и в других сферах, машинальное, пусть и привычное действие, может стать отправной точкой к различным проблемам и неприятностям.
Но, конечно же, важную роль играет настройка окружения и прав доступа, если рассматривать вышеупомянутый случай.