- PVSM.RU - https://www.pvsm.ru -
У каждого программиста есть личные проекты из разряда хобби. Со временем они теряют актуальность, перестают работать в новом окружении, начинают захламлять файловую систему. Но стереть или потерять их, тем не менее, жалко. Остается уделить им внимание в последний раз.
Прошло полгода после двух удачных проектов на Ардуино (декоративное освещение), а руки и
Ответ на вопрос «почему?» искал на различных форумах и выяснил, что, во-первых, DIP-корпусы неуклонно теряют популярность двадцать лет как; что сейчас, если очень нужно DIP, то проще и дешевле будет купить переходники SOIС-DIP [3] к SMD-микроконтроллерам [4]. И, во-вторых, что ситуация с дефицитом ATTiny всех утомила и что сейчас модно STM8 [5].
В голове возник образ умирающей платформы ATMega/ATTiny. И тут я понял, что должен буду похоронить свои проекты. И понял, каким образом.
Зачем столько пафоса? Потому что главная идея — сбросить их вместе с используемыми фреймворками, библиотеками, средами разработки, диаграммами и текстурами, с утилитами и серийными номерами к ним, если понадобится, то и с операционными системами.
А если проект использовал систему контроля версий, то следует сделать импорт в Mercurial, экспорт в bundle, и его туда же, на вынос. Вместе с дистрибутивом hg, разумеется.
Что еще понадобится… Скриншот программы при жизни. Если найдется. Тэги. Тэги организовал в виде имен файлов в корневой папке: наглядно и кросс-платформенно. И банальный README, похоже.
К сожалению, Google Drive, видимо самое надежное хранилище из доступных, не подошел для моих целей. Как раз от локальной копии старых проектов я хотел избавиться, хотел оставить старые файлы в покое, избавить их от синхронизаций и прикасаний, отделить от живых проектов и документов.
По тем же причинам решил отказаться от хранения в репозитариях. Более того, нельзя доверять репозитариям, я лично наблюдал за восходом и закатом трех систем: CVS, VSS и SVN.
Поэтому — CD-R и коробка из-под обуви под кроватью. Когда умрут и закончатся CD-R, перейду на DVD-R. Когда закончатся они, коробка будет пополняться флешками, SD-карточками, а затем и microSD, nanoSD и picoSD.
Кроме того, прожиг CD-R — довольно-таки символичен, а мультисессионность сделает их похожими на старые европейские кладбища.
В качестве примера хотел бы привести свой небольшой проект на JavaME — таймер для игры "Есть контакт [6]" — под мобильный телефон Motorola L2, но не нашел к нему даже исходников, одни лишь готовые файлы для установки на телефон. Нет и соответствующей JDK, нет и эмулятора с отладчиком от Motorola. Пример того, что будет с проектом, если его правильно не похоронить.
Чуть более везучий — проект Majordomo на Perl-е: ICQ-бот, ведущий учет предстоящих мероприятий для друзей и потерявший актуальность с приходом Фейсбука и дешевого интернета.
В папку на прожиг попадают ветки majordomo-dev и majordomo-production. Теги такие: _bot, _icq, _internet, _perl (в алфавитном порядке). В папку с дистрибутивами попадает ActivePerl-5.10.1.1006-MSWin32-x86-291086.msi и чудом найденный скомпиллированный под эту версию модуль OSCAR.pm [7]. В качестве скриншота кладу историю общения с этим ботом из логов QIP. Записываю пару строчек в файле README.txt. И вот, один проект готов к погребению.
Три вечера потратил на упорядочивание старых проектов. Потом был финальный прожиг. Простенькая «Мои старые проекты» маркером на диске, бумажный конверт и место в коробке под кроватью. Среди аудиокассет для ZX Spectrum.
Автор: 0x3f00
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/backup/7398
Ссылки в тексте:
[1] мозг: http://www.braintools.ru
[2] ATTiny85: http://www.atmel.com/devices/attiny85.aspx
[3] SOIС-DIP: http://www.ebay.com/sch/i.html?_nkw=soic dip20
[4] SMD-микроконтроллерам: http://www.youtube.com/watch?feature=player_detailpage&v=b9FC9fAlfQE#t=900s
[5] STM8: http://www.st.com/internet/mcu/subclass/1244.jsp
[6] Есть контакт: http://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82_%28%D0%B8%D0%B3%D1%80%D0%B0%29
[7] OSCAR.pm: http://search.cpan.org/~toddr/Net-OSCAR-1.928/lib/Net/OSCAR.pm
Нажмите здесь для печати.