Змахнув пил з давно закинутих початкових кодів мого першого досить серйозного проекту, який за сумісництвом був дипломною роботою на першій ітерації навчання в коледжі. Основна функціональність програми була в підвищенні продуктивності ПК і гнучкі настройки системи для потреб користувача. Найбільшою її проблемою було те, що необхідність таких налаштувань була дуже сумнівна і цікавила тільки окремих ентузіастів з пустотливими руками, які не боялися багаторазово заново систему в разі фатальних помилок.
Запустив програму. Не тут то було! Вимагає права адміністратора. Ностальгічно посміхнувся - вже тоді у мене було це своєрідне почуття гумору.
Як не дивно, запустилось, навіть кодування не злетіла. Пам'ятаю минулого разу на windows 7 з цим були проблеми, лікувалося правками в реєстрі. З'явилося вікно в мінімалістичному стилі: повзунок, з вибором кількості внесених змін для посилення ефекту оптимізації, та 3 кнопки - нічого зайвого (Хоча зараз я б посперечався з цим твердженням, скоротивши кількість керуючих елементів спочатку до 1 кнопки, потім і зовсім налаштував повну автоматизацію, яка потребує уваги користувача).
Коли я робив програму - я ставив себе на місце користувачів, різних користувачів. Це вікно для тих, кому потрібен результат, хто не готовий витрачати свій час на копання в налаштуваннях. Таких зараз більшість. Та й чого лукавити - я став таким же. Дайте мені кнопку "зробити добре", інакше мені доведеться зайнятися створенням такої кнопки. Яжпрограмміст.
Першочерговим пунктом у будь-який программерскую ситуації, яка теоретично може зламати систему є резервування вихідного стану змінних параметрів, щоб в подальшому, при появі небажаних ефектів була можливість зробити все "як було". Я не нехтував цією простою істиною вже тоді. Згодом ця гарна звичка рятувала мене, коли підводив софт або кривизна рук.
Через 10 років я пам'ятаю щось своє бажання створити не просто маленьку системну утилітки, а цілий контруктор утиліт, щоб вже кожен зміг налаштувати її під свої завдання. Крім найпопулярніших налаштувань, зібраних по сайтам Лайфхак для windows, я натрапив на русифіковану базу з описом тих чи інших гілок реєстру. Записів було близько 3-х тисяч. Мій внутрішній ледар радів. У своїй програмі я дав можливість змінити будь-яку настройку, шляхом вибору в контекстному меню кнопки "редагувати" і вибір з усього списку запропонованих варіантів з описом.
Останню вкладку займає вікно лога змінюваних параметрів, в яке виводиться налагоджувальна інформація про внесені програмою зміни до реєстру. Вона була дуже корисною при налагодженні, тому я вирішив її залишити звичайним користувачам - може стати в нагоді.
Програма працює на подив стабільно. Це незважаючи на неструктурований, некоментіруемий бидлокод в исходниках. Я б посоромився його показувати іншим людям, якщо б не переконався, що є код горааааздо гірше цього, і він працює кожен день протягом довгих років. можете самі переконатися в абсолютній некомпетентності автора програми. Сподіваюся коли-небудь я повернуся і приведу весь код до стандартів розробки. Але це не точно.