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

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

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


Прошло полгода после двух удачных проектов на Ардуино (декоративное освещение), а руки и мозг требовали продолжения возни с паяльником. Я долго держался, но в итоге поддался на третий проект (считыватель ключей-таблеток к домашней сигнализации) и решил использовать в нем 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
                В конце надо был дописать 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
                                            Плёнка — надёжный носитель? Она со временем такие искажения вследствие усыхания носителя претерпевает, что мама не горюй. Фильмофонды сейчас спешно пытаются оцифровать всё, что у них есть, пока эта плёнка совсем не сгнила.
                                              0
                                              мы с вами о разных пленках говорим.
                                                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.


                                                    0
                                                    Я сейчас как раз работаю с проблемами архивных плёнок, так что интересуюсь неспроста.
                                          +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

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

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