Що небезпечно для програміста?.

Із серії "Парадокси програмування" З якою небезпекою може зустрітися програміст у своїй роботі, і як її уникнути?

; Ігор Корсар


Ти сидиш за комп'ютером і программіруешь. Об'єктно орієнтована мова
ти вибрав або простий операторний - неважливо. Все одно захоплююче.
На екрані відразу бачиш результати. Трохи порухати мишкою - результати
змінилися. Знову порухати - вони зникли. Цікаво!
Пішов перекурив, потім в сусіднє бюро - поспілкувався і з провітреним
мізками знову за справу.
А щоб тонус собі додати - заварив кави. У шлунку заурчала - купив
пиріжок. І результати - знову на екрані. Та ще й які!
Так що ж тут небезпечного? Працюй і радій.
Давай подумаємо.

Ну, кава не так сьорбнув, клавіатуру залив. Ну, і що? У ремонт віднесеш,
в крайньому випадку, нову виділять. Хіба це небезпечно?
Випромінювання? Але з кожним поколінням техніки - воно все менше. Та й організм
вже адаптувався. Сидіти за роботою безперервно теж ніхто
не змушує. Тобі належить разів на годину перерву робити.
Або перекурювати виходь або в сусіднє бюро анекдоти розповідати.
Там народу теж треба абстрагуватися.
Зір сідає? Теж можна виправити. Частіше моргай.

Помічав коли-небудь - заходиш в незнайомий відділ, а там за комп'ютером
чарівна дівчина і часто-часто кліпає очима. Думаєш це вона від твого
появи такою стала? Ні, це вона зі своїм монітором контакт шукає.

То де ж небезпека в кінці кінців?
А от уяви таку сцену ...

... Ранок . До кабінету начальника влітає системний програміст. Дихання
нерівне, очі лізуть з орбіт.
- Василь Іванович! Вночі був збій з харчування! У сервера диск відмовив.
А там половина наших вихідних текстів!
Василь Іванович хапається спочатку за серце потім за трубку:
- Леонід Дмитрович! У нас ЧП! Терміни треба змістити на три місяці!
Винна підстанція!

Чи реальна сцена? Можливо, так. Але бути такого не повинно.
Будь-яку програму, яку пишеш, будь-яку навіть незначну інформацію
треба періодично запам'ятовувати десь поза твого комп'ютера.
Одним словом - регулярно робити копії.
У цьому випадку аварія лише трохи сповільнить роботу, але не зірве її.

Програміст без копії своїх напрацювань схожий на альпініста, який лізе
на стрімку стіну без страхувального спорядження.
І чим більше він зробив, тим вище забрався, тим простіше йому зірватися вниз.
І вже розбитися це точно.

ЗАПАМ'ЯТАЄТЕ! Будь-яка, навіть сама сучасна і надійна техніка може відмовити
в найнесподіваніший момент.
Цього може, звичайно, і не статися, і ти так і не скуштуєш того
неповторного почуття втрати, з яким колись Якось довелося зіткнутися мені.
Аварія, може, мати місце і один раз на десять років. Але повір мені,
одного цього разу на всі десять років вистачить!

А, якщо не аварія, то яке-небудь непорозуміння. Ну, видалили випадково
твою інформацію! Ну, не хотіли! Ну, що тепер зробиш?
Розповім випадок з практики.

***

.. Вона була безпосереднім і дуже товариською натурою. Її звали Світу.
Одного разу, затримавшись після перерви, вона увійшла в машзал і застала свого
молодого начальника за дисплеєм.
- Що, Льоня, тестування запускаєш? - Ласкаво запитала вона.
- Ні, це ти тестування запускаєш! - Жорстко відповів Льоня.
Вона не образилась, а тут же переключилася на двох електронників, які
возилися неподалік з величезною стійкою ЄС 1020, і весело защебетала з ними.




Такий же веселою і життєрадісною вона була, коли робила копії дисків.
Вона не забула посміхнутися Олені, запускаючи процес. Єдино, що вона
забула, так це - де встановлений диск з копією, а де з оригіналом.
У результаті копія місячної давності без збоїв накрила диск з останніми
напрацюваннями.
Наступне ранок був важким для начальника Льоні ...

Я тим часом, відпочив і повний енергії, повернувся з відпустки і ...
гірко пошкодував, що дуже швидко працюю.
Мені три місяці довелося заново виловлювати те, що я спокійно зробив за
місяць і благополучно забув.

***

Отже, необхідність копій я довів. Але питання - скільки їх необхідно мати
і як часто робити?
Особисто я обов'язково створюю копію по закінченню чергового
етапу (великий він чи маленький - неважливо)
Не перешкодить у кінці робочого дня швидко перекинути свою інформацію на
інший комп'ютер. І в цьому випадку ранок для тебе не зможе виявитися моторошним.
Адже як іноді буває? Пара питань за зданими програмами. Невдоволення
користувачів, а тут ще і вчорашня коректура навернулася ...

Тепер - скільки копій варто зберігати? Чим більше, тим краще, але існує
стара перевірена норма, практично абсолютно надійна.
Досить, щоб інформація зберігалася в трьох місцях: оригінал і дві копії,
але все це обов'язково на різних носіях.
Чому три, а не дві? При копіюванні взаємодіють між собою два
носія: диск з оригіналом і диск для отримання копій. Мало що може з ними
з обома статися в результаті збою з харчування? У цей час у надійному
місці повинен знаходитися третя носій з інформацією, з якого, можна
буде в разі чого її відновити.

Отже, три місця для зберігання наших програм цілком достатньо .
Але! Якщо раптом з одним з цих місць щось станеться, то відразу треба
його заповнити! Страхувальний канат надірвався і може не витримати
твоєї ваги!
І саме дивне - коли є копії ніякого псування інформації не відбувається!
Досить позбутися хоча б однієї з них - як на тебе навалюються всі
нещастя відразу.
Ще один випадок з практики.

***

Це було на іншому місці роботи і на іншій техніці. Але ЇЇ теж чомусь
звали Світу. Вона була оператором на СМ4 і раз на тиждень робила копії дисків
на магнітні стрічки. Ті дбайливо зберігалися на стелажах, а в журнал містилася
роздруківка процесу з датою створення.
Дата з копією одного з дисків була вже дуже давньою, і я неодноразово
просив Світлану її оновити. А вона посміхалася і обіцяла ...
Одного разу з диском щось сталося. Він перестав читатися.
Не було провини Свєти в тому, що магнітна стрічка, з якої намагалися
відновити диск виявилася збійної.
Навпаки, відчувши небезпеку ситуації, вона вирішила виконати всі обіцянки
відразу і швидко скопіювала запорченний диск на стрічку зі старою датою ...

У результаті ми втратили інформації повністю.
А звали оператора Свєтою ...

** *

Ти сидиш за комп'ютером, программіруешь. Це цікаво.
Але не завжди ти думаєш про безпеку. Не полінуйся, скопіюй напрацьоване
за день. Так, техніка зараз хороша, надійна. Але хіба мало що!
Ти відмахнувся? Ти досвідчений і багато програм написав?
Тим більше, поглянь наверх і уяви собі скелелаза без страхувального
пояса! Ось він оступився ... Розтиснув пальці лівої руки ... Не зміг втриматися
правою ...
А, НУ, ШВИДКО РОБИ КОПІЮ!