Последние почести старым проектам

У каждого программиста есть личные проекты из разряда хобби. Со временем они теряют актуальность, перестают работать в новом окружении, начинают захламлять файловую систему. Но стереть или потерять их, тем не менее, жалко. Остается уделить им внимание в последний раз.

Мы должны их похоронить!


Прошло полгода после двух удачных проектов на Ардуино (декоративное освещение), а руки и мозг требовали продолжения возни с паяльником. Я долго держался, но в итоге поддался на третий проект (считыватель ключей-таблеток к домашней сигнализации) и решил использовать в нем ATTiny85 с восемью ножками в качестве микроконтроллера. Этого чипа не было в радиомагазинах моего города. Не было его и на eBay. Прождал два месяца, ситуация не изменилась. Пустился в авантюру и завел счет у посредника торговой площадки Taobao, но этих чипов не было и в Китае! Были только ATTiny25v-10PU, да и те втридорога.

Ответ на вопрос «почему?» искал на различных форумах и выяснил, что, во-первых, DIP-корпусы неуклонно теряют популярность двадцать лет как; что сейчас, если очень нужно DIP, то проще и дешевле будет купить переходники SOIС-DIP к SMD-микроконтроллерам. И, во-вторых, что ситуация с дефицитом ATTiny всех утомила и что сейчас модно STM8.

В голове возник образ умирающей платформы ATMega/ATTiny. И тут я понял, что должен буду похоронить свои проекты. И понял, каким образом.

С золотом и слугами


Зачем столько пафоса? Потому что главная идея — сбросить их вместе с используемыми фреймворками, библиотеками, средами разработки, диаграммами и текстурами, с утилитами и серийными номерами к ним, если понадобится, то и с операционными системами.

А если проект использовал систему контроля версий, то следует сделать импорт в Mercurial, экспорт в bundle, и его туда же, на вынос. Вместе с дистрибутивом hg, разумеется.

Что еще понадобится… Скриншот программы при жизни. Если найдется. Тэги. Тэги организовал в виде имен файлов в корневой папке: наглядно и кросс-платформенно. И банальный README, похоже.

Место под кладбище


К сожалению, Google Drive, видимо самое надежное хранилище из доступных, не подошел для моих целей. Как раз от локальной копии старых проектов я хотел избавиться, хотел оставить старые файлы в покое, избавить их от синхронизаций и прикасаний, отделить от живых проектов и документов.

По тем же причинам решил отказаться от хранения в репозитариях. Более того, нельзя доверять репозитариям, я лично наблюдал за восходом и закатом трех систем: CVS, VSS и SVN.

Поэтому — CD-R и коробка из-под обуви под кроватью. Когда умрут и закончатся CD-R, перейду на DVD-R. Когда закончатся они, коробка будет пополняться флешками, SD-карточками, а затем и microSD, nanoSD и picoSD.

Кроме того, прожиг CD-R — довольно-таки символичен, а мультисессионность сделает их похожими на старые европейские кладбища.

От слов к делу


В качестве примера хотел бы привести свой небольшой проект на JavaME — таймер для игры "Есть контакт" — под мобильный телефон 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. В качестве скриншота кладу историю общения с этим ботом из логов QIP. Записываю пару строчек в файле README.txt. И вот, один проект готов к погребению.

Три вечера потратил на упорядочивание старых проектов. Потом был финальный прожиг. Простенькая «Мои старые проекты» маркером на диске, бумажный конверт и место в коробке под кроватью. Среди аудиокассет для ZX Spectrum.
Поделиться публикацией
Комментарии 85
    +10
    Даже как то грустно стало при прочтении.
      +23
      Я бы не стал использовать CD-R для долговременного хранения информации. Не знаю почему, но они умудряются как-то умирать. Лучше, ИМХО, записать это барахло на старый, но рабочий (значит надежный) HDD.
        +8
        Где-то я видел сравнение по долговечности разных цифровых носителей… И победил диск DVD-RAM (кстати он обошел даже магнитную ленту)…
          +2
          Тогда лучше выложить в сеть.
            +1
            У меня умерла пара винтов, просто от долгого лежания в одном положении (лежали плашмя).
            Теперь если и приходится что то хранить на винтах, то винты держу только вертикально.

            Так что — будьте осторожны.
              –1
              Производителя и модель винтов скажите пожалуйста
                +1
                А смысл?
                Модель уже не помню, производителя тоже.
                К тому же дело было лет 6 назад, а за это времмя показатели качества и надежности могли сильно измениться
                  0
                  Что их не покупать, наверно…
                  Я делаю бэкапы именно на внешние диски. Получается, их надо раз в месяц подключать к питанию, чтобы не клинило или еще шаманство какое производить.
                    +1
                    Нет, раз в месяц — раздолбаете контакты. Но раз в год — да. Причем ещё и прочитать все данные, сравнить md5 (которые лежат не на этом же диске), а потом скопировать на новый, в два раза большего объёма жесткий, которые уже начали выпускать ;)
                      –1
                      Я думал не втыкать-вытыкать каждый месяц, а сделать автоматическое хранилище, которое это делало бы. Буквально, на 10-30 минут включить и снова баиньки)

                      Про прочитать мысль отличная, но для нее нужен уже компьютер полноценный, автоматикой не обойдешься.
                        +1
                        Ну просто включить и покрутить — бессмысленно, всё равно нужно знать что хард ещё или уже сдох, а это — читать данные.
                        В принципе, сейчас есть дешевые NAS, в которые можно это пристроить. Либо собрать комп на Atom'е (корпус правда придётся поискать) и тут уже можно изгаляться, т.е. ставишь RTC Alarm — он сам будет просыпаться, при запуске — запускать проверку, либо вообще плюнуть и сделать онлайн, поставить тот же SSD под систему + временную папку, чтобы харды не дёргать, раз в неделю будет чекать содержимое папки -> заводить хард и скидывать на неё.

                        В общем, полёт фантазии ограничен лишь бюджетом и удобством размещения =)
                          0
                          Резонно
                            +1
                            Тогда уже на Raspberry Pi :)
                • НЛО прилетело и опубликовало эту надпись здесь
                    0
                    долгое лежание это скольо?
                      0
                      полгода
                  0
                  В конце надо был дописать R.I.P.
                    +3
                    CD & DVD довольно быстро начинают отшелушиваться. Я так за пару лет библиотеку своих фильмов потерял. Потом переключился на внешние HDD. Цена за ГБ сравнима или даже меньше чем у CD/DVD.
                      +1
                      Это смотря какого производителя болванки все-таки. Многим из дисков уже больше 5 лет точно, полет нормальный. А вот нонэйм производители — тут как повезет, видимо.
                        +1
                        Согласен.
                        У многих производителей есть болванки, предназначенные для архивного хранения.
                        В итоге — сам записал несколько лет назад (после смерти винта, см. выше) на Verbatim, на тот момент самый дорогой, с надписью на коробке «для архивного хранения» несколько фотоальбомов и проектов.
                        Результат — все открывается. Сейчас.
                        На всякий случай, переписал на DVD, тоже с лейблом «для архивного хранения» — доволен.
                      +19
                      Я в таких случаях просто выкладываю исходники в сеть — открываю их под свободной лицензией.
                        +5
                        Вот. Я тоже первое, о чём подумал, — github
                          +4
                          Я видел восход и закат sourceforge.net, поэтому github-у не доверяю. Отдаю голос за Google Code + Mercurial.
                            +2
                            Против GoogleCode и, тем более, Mercurial я ничего не имею — сам использую эту связку для своих проектов. Но вот проблема sourceforge, как помнится, была в рекламе. GitHub же не идёт тем путём, так что и будущее у него будет светлее.
                              +6
                              Сколько раз был на sourceforge — всегда был жутко тормозным… Сейчас заглянул — светло, чистенько, шустренько, функциональненько. Почитал список доступных фич — вроде, вообще круто. Реклама? Где там реклама?

                              * Отключил блокировку рекламы. *

                              Йоооо шшшш мойоооо!!! Там же за рекламой страницу не видать! И всё сверкает и крутится!

                              У них не может быть будущего при таком отношении к посетителям. Один блок, два, ну три — понимаю. Один идиотский флеш-ролик — поскриплю зубами, но переживу. Но 10 реклам в 6 блоках, 2 из которых флеш — они из ума выжили что ли?
                            • НЛО прилетело и опубликовало эту надпись здесь
                                0
                                С 2007 года терпит убытки, будущее туманно.
                            +1
                            Когда стал разбирать старые проекты, то увидел, что некоторые остановились на этапе наброска, а некоторые были откровенными велосипедами. Открывать исходники можно, но не все и это отдельная история.
                            +3
                            «Более того, нельзя доверять репозитариям, я лично наблюдал за восходом и закатом трех систем: CVS, VSS и SVN»

                            Ну, SVN всё еще весьма и весьма активно используется.
                            Кроме того, к любой из этих систем всё еще несложно найти клиент. И вряд ли это изменится в обозримом будущем.
                              0
                              Простите за мою неграмотность, но очень хочется знать, какая же система контроля версий сейчас в моде?
                                0
                                Вроде как набирает (ну и уже набрал) популярность git. Хотя найти точную статистику не удалось.
                                  0
                                  На вкус и цвет. По моим наблюдениям — git.
                                    +7
                                    Но многие по разным причинам предпочитают Mercurial ;)
                                    0
                                    Если говорить о моде, то однозначно Git. Не считается неприличным использовать Mercurial (тоже DVCS, но немного более человечен), Bazaar; при желании платить — какие-нибудь TFS (если весь софт от MS, разработка под MS, то логично и VCS брать от MS), Perforce. CVS мёртв (неатомарность коммитов — это несмешно), SVN вымирает (бранчи неюзабельны, да и стали модными DVCS).

                                    На сайтах для расшаривания сорцов наиболее популярны Git (если не было, то приделывают) и SVN (из соображений совместимости).
                                      +4
                                      Между тем, внутри небольших IT-контор SVN всё ещё популярен.
                                        –1
                                        Вот прям уж так «однозначно» гит.
                                        Имхо HG рулит.
                                        (давайте холивар что-ли?:))
                                          0
                                          Я говорю про моду, а не про какие-то технические достоинства.

                                          По сорцам не сказать, что так уж часто лазаю, но когда приходится, то они в основном оказываются или в Git, или в SVN. HG встречал, но редко. Если с SVN на что-то переходят, то почти всегда на Git. Это так, личные наблюдения, статистики не собирал.

                                          Если посмотреть, какие VCS используются на самых распространённых хламокодошарилках, то за исключением GitHub получится, что или поддерживается и то, и другое, или ни то, ни другое. Однако какой один из самых распространённых первых комментариев на хабре? «Выложите сорцы на GitHub». То есть здесь он тоже считается вариантом «по умолчанию».
                                            0
                                            Меркуриал просто моложе. А так он активность набирает с большой скоростью. Думается скоро гит обгонит по популярности.
                                              +2
                                              Git: 7 April 2005
                                              Mercurial: 19 April 2005
                                              Если бы он набирал темп быстрее Git, мы бы это уже давно заметили.
                                        0
                                        Сейчас git, однозначно. К тому же есть github, где любой может помочь коммитом.
                                      –3
                                      самые долговечные носители — пленка. Именно до сих пор в репрографии фотографируют на нее старые бумажные архивы.
                                        0
                                        Вы не понимаете разницу между хранением фотографий на плёнке, и хранением ноликов и еденичек?
                                          0
                                          я про самый надежный носитель.
                                            0
                                            может быть тогда уточните, носитель чего именно?
                                              –1
                                              аналоговой информации
                                                +1
                                                учитывая контекст топика (информация тут цифровая), ваш комментарий про «самые долговечные носители» не к месту. Ну, я думаю, вы это уже сами поняли.
                                                  –2
                                                  хранение исходных кодов можно сфотографировать на пленку. Если уж они так важны. Другое дело что в этом мало смысла и нет опыта и оборудования.
                                                    +6
                                                    платиновые перфоркарты будут ещё надежнее, чем плёнка.
                                                    и что?
                                                      +1
                                                      Предлагаю делать архивы из звёзд, сохранность — несколько миллиардов лет. Главное — не использовать черные дыры в качестве ноликов, а то сохранность архива — не гарантируется.
                                            • НЛО прилетело и опубликовало эту надпись здесь
                                                0
                                                мы с вами о разных пленках говорим.
                                                • НЛО прилетело и опубликовало эту надпись здесь
                                                    +1
                                                    Ничто не вечно под Луной — это понятно.

                                                    Пленки используются с высоким разрешением и не любительские. Естественно ее нужно хранить аккауратно. Но для этого все условия есть в репрографиях. В отличие от платиновых перфокарт, они значительно дешевле и универсальнее, что и является причиной их масового использования. Пленка сегодня остается самым лучшим носителем для хранения бумажной информации.

                                                    en.wikipedia.org/wiki/Microform
                                                    Advantages

                                                    With appropriate storage conditions, this film has a life expectancy of 500 years.[11] Unfortunately, in tropical climates with high humidity, fungus eats the gelatin used to bind the silver halide. Thus, diazo-based systems with lower archival lives (20 years) which have polyester or epoxy surfaces are used.


                                                    • НЛО прилетело и опубликовало эту надпись здесь
                                            +2
                                            Каменные таблички выигрывают тогда уж. Вот они на практике показали наибольшее время жизни. Пергамент, папирус, бумага, деревянные и восковые таблички проигрывают. Ну, сравнимое время жизни ещё обожжённые глиняные таблички имеют.
                                              –2
                                              Плотность упаковки вашего носителя столь мала, что не рассматривается как потенциальный носитель информации.
                                                0
                                                Ну, плотность упаковки информации на плёнке тоже очень мала по сравнению со, скажем, microSD ;)
                                                  0
                                                  microSD это цифровой носитель. Дело в совокупности вещей. Флешка может не открыться завтра, этого никто не знает. Скачек питания, статическое электричество, сильное магнитное поле, даже пожар. Восстановить информацию с половины пленки горелой можно, а с половины горелой флешки нет, старение флешки определить можно, цифровых носителей адекватно невозможно и прочее. Поэтому цифровые носители не рассматриваются как долговременные носители в принципе.
                                                    0
                                                    * старение флешки определить можно нельзя,
                                                      0
                                                      ** старение пленки определить можно
                                                      (шо за день… )
                                                0
                                                Береста православнее!
                                                  0
                                                  Не. Менее долговечная.
                                              +4
                                              Хоронить проекты в коробке под кроватью — слишком жестоко. Свою аналогичную проблему я решил, выложив проекты с кодом на специальном сайте (kvatom.com). База там, конечно, далеко не полная (обещаю, обещаю!), но видеть своё добро доступным приятнее :)
                                                +1
                                                Долгих лет жизни этому проекту :)
                                                  +1
                                                  Да, забавно получилось… Сайт для заброшенных проектов сам пополнил их ряды :) Там для него, между прочим, изначально место полагалось.
                                              • НЛО прилетело и опубликовало эту надпись здесь
                                                  +5
                                                  Ох уж эти хобби… Не так давно пробило на ностальгию, откопал в закромах свои проекты школьных времён.


                                                    –6
                                                    комик сенс… — хапрещеннный шрифт.) Этим все сказано.)
                                                      +6
                                                      Вы бы видели, как я на Visual Basic вычленял биты из переменных. Я конвертировал их в битовые строки и брал нужный символ с «1» или «0» с помощью mid :)
                                                      +4
                                                      А я своей школьной разработкой до сих пор пользуюсь.



                                                      Если надо прогресс-бар в какой-нибудь программе растянуть от 30 пипселей во всю ширину окна (чтобы реально прогресс видеть) — самое то. Хотя, наверное, есть какие-то нормальные тулзы…

                                                      Наверное, окончательно потеряет актуальность, только когда все приложения будут на WPF, HTML5 и т.п.
                                                        0
                                                        Вам надо с _cybermaniac_ подружиться) и его софтом — window scanner.
                                                          0
                                                          Мои школьные разработки поскромнее будут :).
                                                          Benchmark CPU и замена explorer (так и не дописал, в эру компьютерных клубов надо было кое-где, в итоге проще было LiteStep настроить).
                                                            0
                                                            А, чего-то поскромничал, еще был редактор БД Акссесс, и затем редактор xml но это уже в эру .NET к концу школы.
                                                              0
                                                              У меня где-то до сих пор валяется файл менеджер а-ля NC на QBasic. Правда, если мне не изменяет память, для получения содержимого каталогов ему требовался NDOS (из пакета Norton Utilities) в качестве командного интерпретатора. Но это был наверное мой первый workaround, которым я даже гордился).

                                                              Времени было много, мой AMD 386SX умел мало, но писать было интересно)
                                                              0
                                                              Самая удобная программка для операций с окошками, по моему — Spy & Capture, ничего удобнее и функциональнее не видел.
                                                            +1
                                                            А google code че? Прекрасное кладбище, имхо. Тизо, спокойно, надежно, красиво.
                                                              0
                                                              Его разве не собираются закрывать?
                                                                0
                                                                Ограничение на 10 реозиториев у них.
                                                                  0
                                                                  Перельют на developers.google.com, делов-то.
                                                                +2
                                                                Ох. Выложил свои школьные потуги на J2ME на github после прочтения поста =)
                                                                  0
                                                                  Жалко, не могу похвастаться школьным проектом. Первый компьютер увидел на первом курсе в 18 лет.
                                                                    +1
                                                                    современных болванок cd-r хватит примерно года на 3.

                                                                    После этого прочитать вы их не сможете.
                                                                      +4
                                                                      Следующая статья автора — стартап по ритуальным услугам: погребение программ в болванках, сожжение распечатанного исходного кода, мумификация на магнитую ленту.

                                                                      В перспективе — освобождение алгоритмического духа путём транслирования кода на радио-волне в направлении Альфа Центавры, где духи программ обретают свой покой.
                                                                        0
                                                                        Я начинал с QBasic для CLI, а для GUI — страшно подумать — Corel Script… и уже, наверно, нигде не запустить эти идиотские бесполезные программки, если даже найти их. И, пожалуй, к счастью.
                                                                          0
                                                                          плохо искали, в местных магазинах attiny навалом,
                                                                          в районе 60руб за attiny85

                                                                          сейчас лучше ИМХО заюзать atmega8 или atmega16

                                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                          Самое читаемое