Сама мысль возникла очень давно, еще после прочтения последних пяти книг «Хроник Амбера» Роджера Желязного. Написать программу по принципу Колеса-Призрака для Интернета, казалось весьма заманчивой мыслью. Октопус Алекса оказался не столько безумной идеей, сколько бесконечно сложной и трудной задачей. Постепенно пришлось от многих задумок отказаться, замысел упростить и отработать только ряд основных функций.
Дело в том, что находящиеся в Интернете многочисленные поисковые машины имеют фиксированные адреса и располагаются каждая на своем конкретном сервере, рыская повсюду посредством личных роботов-поисковиков. Но Алексу хотелось не этого. Его целью была переползающая по Сети постоянно меняющая место, скрытная, способная к маскировке от защитных программ система поиска заданной информации. Программу Октопус пришлось наделить элементами искусственного интеллекта, способностью к примитивным оценкам и обработке информации из встреченных ею баз данных. Программа могла «учиться» — сохранять в собственной базе данных наиболее ценную, для собственного выживания, информацию. Снабдить программу способностью к самовосстановлению в случае частичного повреждения, оказалось довольно просто. Самокопирование программы в определенных обстоятельствах вообще не представляло трудностей. Это уже давно делали многочисленные вирусы и сетевые черви, алгоритмы которых были хорошо известны. По идее, эта программа должна была эволюционировать, но не «по Дарвину», а по «Ламарку» — используя полезные данные, вносить изменения в основной код. В тело программы был помещен заархивированный код ее основных модулей и библиотек. Была написана функция регенерации, на случай потери того или иного модуля. Внутренний архив периодически переписывался и обновлялся. Способность к адаптации пришлось напрямую увязать с возможностью самопереписывания и самомодернизации некоторых программных модулей. Нерабочие и поврежденные модули автоматически восстанавливались самим Октопусом. Однако окончательного, желаемого эффекта Алекс, как ему казалось, так до конца и не достиг, хотя на написание всего перечисленного у него ушло несколько лет.
Осталось ещё окончательно доработать функции перехода в другие сети. Выпросив на неделю у знакомых необходимое оборудование, Алекс на свободном столе смонтировал вторую мини-сеть, состоящую всего из двух компьютеров. Эта временная карликовая сеть была соединена с основной локальной сетью Института полноценным шлюзом и нормальным, хотя и коротким, каналом связи. В день испытаний Алекс физически отсоединил институтскую сеть от информационного канала в Интернет, и подключил на его место канал карликовой сети. Отсутствие связи в течение одного дня он заранее объяснил профилактическими работами. Надо было проверить ряд функций почти готовой, но не совсем отлаженной программы. Не особенно беспокоясь, Алекс запустил Октопуса в институтскую локальную сеть, а поскольку выход в Интернет в этот день отсутствовал, он не боялся утечки. Позже Алекс хотел вычистить Октопуса из сети, на что имелась заранее подготовленная программа-киллер. В этот день он доводил до ума ряд функций, дописывал и переписывал некоторые куски программы, постепенно исправляя шероховатости и недочеты. Он снова вычищал, и снова выпускал Октопуса, пока уже поздно вечером, когда почти все ушли, он не добился желаемого результата. Убедившись, что Октопус, как надо проходит в микро-сеть и обратно, Алекс запустил киллера, в последний раз вычистил живого Октопуса из микро-сети и локальной сети Института. Затем он отключил микро-сеть, восстановил связь с Интернетом и ушел домой.