Як демонізувати процес

Створення демона не є особливо складним, але воно включає в себе деякі частини системи, з якими розробники часто не мають справу явно, і можуть не розуміти їх добре. Це може призвести до карго-культового програмування, а іноді й до помилок.

Кулінарна книга

Ось проста процедура Perl, яка демонізує процес

use POSIX;
sub daemonize
{
fork and exit;
POSIX::setsid();
fork and exit;
umask 0;
chdir '/';
close STDIN;
close STDOUT;
close STDERR;
}

Якщо демон має код, який покладається на STDIO, ви можете повторно відкрити дескриптори системних файлів у /dev/null

sub daemonize

sub daemonize
{
    fork and exit;
    POSIX::setsid();
    fork and exit;
    umask 0;
    chdir '/';
    open STDIN , '<', '/dev/null';     open STDOUT, '>', '/dev/null';
    open STDERR, '>', '/dev/null';

}

Якщо ви хочете створити іншу програму, додайте виклик exec. Залиште дескриптори системних файлів відкритими для виконуваної програми.

sub daemonize
{
    fork and exit;
    POSIX::setsid();
    fork and exit;
    umask 0;
    chdir '/';
    exec 'my-daemon';
}

Якщо ви хочете, щоб батьківський елемент продовжив виконання, виконайте повернення замість виходу

sub daemonize
{
    fork and return;
    POSIX::setsid();
    fork and exit;
    umask 0;
    chdir '/';
    exec 'my-daemon';

Для робочого коду додайте перевірку помилок


use POSIX;
sub Fork
{
    my $pid = fork;
    defined $pid or die "Can't fork: $!\n";
    $pid
}

sub daemonize

{
    Fork and return;
    POSIX::setsid();
    Fork and exit;
    umask 0;
    chdir '/' or die "Can't chdir to /: $!\n";
    exec 'my-daemon'
    die "Can't exec my-daemon: $!\n";

}

Аналіз

Щоб створити демон, вам потрібно зробити шість речей.

вилка (перший раз)

  1. Перше розгалуження дозволяє нащадковій системі запускати демон, поки батьківська програма продовжує виконання або виходить. Крім того, це гарантує, що дочірній процес не є лідером групи процесів, тому наступний виклик setsid() буде успішним.
  2. setsid

Таким чином ми втрачаємо контрольний термінал. setsid робить наш процес лідером нового сеансу, і коли створюється новий сеанс, лідер сеансу не має керуючого терміналу.

  1. вилка (вдруге)

Лідер нового сеансу не має керуючого терміналу, але він може отримати його, наприклад, відкривши /dev/tty або подібне. Щоб цього не сталося, ми знову розгалужуємося.

Після другого розгалуження дочірній елемент не є лідером сеансу (батьківський є лідером сеансу), і лише лідер сеансу може отримати керуючий термінал. Звичайно, дитина може стати лідером сеансу, виконавши setsid знову, але, мабуть, кожен, хто це робить, знає, що робить.

  1. umask 0

umask успадковується через fork і exec, і ми не хочемо, щоб наш демон був обмежений будь-якою umask, яку він успадкував від свого батька.

  1. chdir ‘/’

Поточний робочий каталог успадковується через fork і exec. Якщо ми залишимо демон запущеним у якомусь випадковому каталозі, тоді файлова система, яка містить цей каталог, ніколи не може бути відмонтована, і хтось може цього захотіти.

  1. закрити

Незважаючи на те, що демон не має керуючого терміналу, він може мати відкриті дескриптори файлів на терміналі, і це може спричинити проблеми. Для надійної роботи закрийте дескриптори системних файлів.

У Perl несистемні файлові дескриптори (вище $^F) автоматично позначаються як close-on-exec.

Деякі модулі Perl дублюють STDERR. Ви можете закрити STDERR, але дубльований дескриптор залишається відкритим на терміналі. Один із способів уникнути цього — закрити STDERR у блоці BEGIN перед завантаженням модулів

BEGIN { close STDERR; }

Якщо це не зручно, ви можете відшукати дубльовані дескриптори та закрити їх за допомогою такого коду

my $fd2    = "/proc/$$/fd/2";
my $stderr = readlink $fd2 or die "Can't readlink $fd2: $!\n";
for my $link ()
{
    my($fd) = $link =~ /(\d+)$/;
    $fd > $^F or next;
    readlink($link) eq $stderr and POSIX::close($fd);
}

Контекст

Більшість плутанини пов’язана з викликом setsid(). Довідкові сторінки setsid(2) і setpgid(2) містять відповідні факти; однак, як це типово для документації Unix, вони надають мало контексту.

Ось трохи контексту.

Процеси та термінали

Усе це стосується керування тим, які термінали спілкуються з якими процесами. Термінал надає процесу три речі

  • введення (клавіатура)
  • вихід (екран)
  • сигнали (Ctrl-C, Ctrl-Z, перерва тощо)

Термінал, налаштований на надання цих речей, називається керуючим терміналом для процесу. Процес може мати або не мати керуючого терміналу. Як правило, ви хочете, щоб процеси, які ви запускаєте в сеансі оболонки, наприклад ls або cat, мали керуючий термінал. Ось як ви ними керуєте. І навпаки, ви хочете, щоб демони не мали керуючого терміналу.

  • демон не повинен читати введені дані з клавіатури (хто на ньому друкуватиме?)
  • демон не повинен друкувати вихідні дані на екран (хто збирається це читати?)

і, мабуть, найважливіше

  • демон не повинен отримувати сигнали від терміналу

Проблема із сигналами полягає в тому, що вони, швидше за все, призведуть до виходу демона, а весь сенс запуску демона полягає в тому, щоб мати процес, який не завершує роботу (принаймні, якщо ви цього не хочете).

Особливою проблемою є SIGHUP. HUP – це скорочення від Hang UP; термінологія сягає часів, коли люди підключали фізичні термінали до комп’ютерів за допомогою модемів і телефонних ліній.

Багато програмістів розпізнають SIGHUP як сигнал, який ви надсилаєте демону, щоб наказати йому перечитати файли конфігурації. Однак початкове використання SIGHUP полягало в тому, щоб повідомити процесу, що телефонне з’єднання з його терміналом було розірвано: що він буквально більше не мав керуючого терміналу. Стандартною дією для процесу, який отримує SIGHUP, є завершення (див. сигнал (7)).

Сучасним еквівалентом фізичного терміналу є псевдотермінал типу XTerm або PuTTY. Коли псевдотермінал завершує роботу (наприклад, через те, що користувач закриває вікно на своєму екрані), ОС надсилає SIGHUP процесам, які контролюються цим терміналом. (Детальніше дивіться у setpgid(2).) Якщо ваш демон все ще має керуючий термінал, він може завершити роботу, коли це станеться. Отже, ви хочете, щоб ваш демон не мав керуючого терміналу.

Правильно запущений демон без керуючого терміналу ніколи не отримає SIGHUP від ОС. Таким чином, зручно змінити призначення SIGHUP, щоб наказати демону читати файли конфігурації.

Сесії та групи процесів

Демон просто повинен втратити свій керуючий термінал, але оболонка повинна використовувати свій керуючий термінал і керувати використанням цього терміналу процесами, які він запускає. Наприклад, якщо ви це зробите

% cat > foo

тоді ви хочете, щоб STDIN, Ctrl-D і Ctrl-C були спрямовані на кота, а не на вашу оболонку.

Якщо ти зробиш

% cat foo | sort | more

тоді ви хочете мати можливість використовувати STDIN, щоб контролювати більше, і ви хочете, щоб Ctl-C вимкнув увесь конвеєр, що означає, що він повинен бути доставлений до всіх трьох процесів.

Якщо ти зробиш

% sort foo > bar &
% more baz

тоді ви хочете, щоб сортування тихо виконувалося у фоновому режимі, поки ви використовуєте термінал для перегляду баз.

Щоб керувати всім цим, Unix надає деякі додаткові структури для процесів

  • процеси організовані в групи процесів
  • групи процесів організовані в сесії

Це сувора ієрархія стримування. Це виглядає як

+-session 1 ----------------+
|                           |
|  +-process group 1-----+  |
|  |                     |  |
|  | process 1           |  |
|  | process 2           |  |
|  |                     |  |
|  +---------------------+  |
|                           |
|  +-process group 3-----+  |
|  |                     |  |
|  | process 3           |  |
|  | process 4           |  |
|  | process 5           |  |
|  |                     |  |
|  +---------------------+  |
|                           |
+---------------------------+

Загалом, сеанс відповідає термінальному сеансу: оболонка та всі процеси, які оболонка виконує від імені користувача. Коли ви запускаєте новий термінал, ОС створює для вас новий сеанс, а оболонка стає лідером сеансу.

Зазвичай оболонка створює нову групу процесів для кожного конвеєра, який вона виконує (навіть якщо в конвеєрі є лише один процес).

Будь-який процес у сеансі може писати на термінал. Ось чому ви іноді бачите вихід фонових процесів посеред чогось іншого.

Одна група процесів призначена для переднього плану; всі інші групи процесів працюють у фоновому режимі. Процеси в групі переднього плану можуть читати з терміналу; процеси у фоновому режимі будуть заблоковані, якщо вони спробують прочитати з STDIN. Якщо сигнал генерується терміналом (наприклад, Ctrl-C), тоді цей сигнал доставляється кожному процесу в групі процесів переднього плану.

Ця система дозволяє оболонкам керувати процесами так, як цього бажають користувачі, і робити введення, вихід і сигнали так, як очікують користувачі.

Процес, який хоче вийти з системи, щоб не бути в тому самому сеансі, що й оболонка, викликає setsid(). Потім він стає лідером нового сеансу, і цей сеанс не має керуючого терміналу.

Чи є браузер частиною операційної системи?

Вправа на введення в оману

У 1998 році федеральний уряд Сполучених Штатів звинуватив компанію Microsoft у порушенні антимонопольного законодавства. Одна зі скарг полягала в тому, що Microsoft “поєднала” свій веб-браузер Internet Explorer (IE) разом з операційною системою (ОС) Windows. З точки зору споживача, IE постачався разом з ОС безкоштовно. Оскільки на той час частка Windows на ринку перевищувала 95%, це означало, що практично кожен, хто купував комп’ютер, отримував також і IE. Це серйозно підірвало використання єдиного конкуруючого комерційного браузера Netscape, і Netscape Communications Corporation згодом занепала.

На свій захист Microsoft стверджувала, що веб-браузер фактично є частиною операційної системи. Тому не було сенсу говорити про пакетування браузера; було природно, що постачальник ОС включив браузер у свій продукт.

На перший погляд, це вагомий аргумент. Всі продукти мають частини, і ми не звинувачуємо виробників у тому, що вони включають частини своїх продуктів. Коли ви купуєте автомобіль, він поставляється з двигуном. Це дуже ускладнює незалежним виробникам двигунів продаж автомобільних двигунів широкому загалу. Але ми не звинувачуємо автомобільні компанії в тому, що вони постачають двигуни в комплекті з автомобілями, щоб витіснити виробників двигунів з бізнесу: ми приймаємо той факт, що двигун є частиною автомобіля.

Отже, звинувачення проти Microsoft зводилося до питання факту: чи є веб-браузер частиною операційної системи? Само собою зрозуміло, що під час судового процесу прозвучало багато свідчень та аргументів з цього приводу. Я спостерігав за процесом випадково; мені це питання здавалося непрозорим, і я не міг почути в аргументах більше, ніж “так” – “ні”.

Зрештою, Microsoft було визнано монополістом, але вона отримала лише мінімальні санкції. Microsoft все ще постачає IE з Windows, але окремі браузери, такі як FireFox, зараз відновлюють свою частку на ринку. Мабуть, питання все ще залишається відкритим: чи є браузер частиною операційної системи?

Так, чи є?

Тут є (щонайменше) чотири різних питання, і Microsoft багато років наполегливо працювала над тим, щоб їх заплутати і збити з пантелику. Вони не хочуть, щоб люди мали чітке розуміння цього питання, тому що чітке розуміння цього питання зовсім не слугує їхній справі. Давайте розглянемо питання по черзі і подивимося, чи зможемо ми розібратися з ними. Ось питання:

1. Чи очікує клієнт, що комп’ютер буде поставлятися з веб-браузером?

2. Хто повинен вибирати браузер та інтегрувати його з комп’ютером?

3. Чи є браузер частиною широкого набору програмного забезпечення, що називається “операційною системою”?

4. Чи повинен код, який реалізує браузер, бути інтегрований з ядром операційної системи?

Чи очікує клієнт, що комп’ютер буде постачатися разом з веб-браузером?

Це питання про поведінку та очікування споживачів. Коли Джо Споживач – або Джо Бізнесмен – купує комп’ютер, дістає його з коробки та вмикає, чи очікує він, що на ньому вже буде встановлений веб-браузер? Щоб дізнатися відповідь, ми просто поговоримо зі споживачами та поспостерігаємо за їхньою поведінкою. Відповідь виявилася позитивною.

Під час попередніх обговорень з урядом юрист Microsoft сказав про операційну систему Windows

Ми могли б покласти в неї бутерброд з шинкою, але ніхто б його не купив.

Фраза про бутерброд з шинкою була вирвана з контексту та подана як приклад зарозумілості Microsoft; однак суть висловлювання юриста полягала в тому, що Microsoft реагує на очікування споживачів, а споживачі очікують, що їхні комп’ютери будуть оснащені веб-браузерами.

Відповідь на це питання підтверджує позицію Microsoft.

Хто повинен вибирати браузер та інтегрувати його в комп’ютер?

Це питання про індустріальну організацію: як має бути організовано виробництво і розповсюдження комп’ютерів? У Сполучених Штатах ми дозволяємо ринкам вирішувати більшість подібних питань.

Індустрії персональних комп’ютерів (ПК) близько 25 років. За цей час відбулися деякі зміни, але основні контури чіткі та стабільні. Комп’ютери створюються виробниками оригінального обладнання (OEM) – такими компаніями, як Dell, Gateway і Hewlett-Packard. OEM 

  • купує компоненти (корпус, блок живлення, материнську плату, жорсткий диск тощо)
  • збирає їх у комп’ютери
  • встановлює програмне забезпечення
  • пише інструкцію та гарантію
  • пакує все це в коробку
  • ставить на них своє ім’я
  • продає його роздрібним торговцям або споживачам

OEM бере на себе відповідальність за вибір та інтеграцію всього програмного забезпечення, яке встановлюється на комп’ютер – за одним винятком. Корпорація Microsoft вимагає, щоб OEM-виробники, які встановлюють Windows, також встановлювали IE на всіх комп’ютерах. Корпорація Microsoft забезпечує виконання цієї вимоги за допомогою умов ліцензії на Windows.

Якби Microsoft не використовувала монопольну владу, є всі підстави вважати, що виробники обладнання обирали б веб-браузер так само, як вони обирають всі інші компоненти своїх продуктів.

Відповідь на це питання не підтверджує позицію Microsoft.

Чи є браузер частиною широкого набору програмного забезпечення, що називається “операційною системою”?

Це питання є або питанням думки, або просто не має відповіді. Причина в тому, що термін “операційна система”, як він використовується тут, не має конкретного технічного значення. Це більше схоже на термін “місто”.

Міста великі та розлогі, і їхні межі можуть бути нечіткими. Так, місто має географічну межу, визначену статутом і зафіксовану в реєстрі актів, але чи багато людей точно знають, де вона знаходиться – чи цікавляться цим?

Запитувати, чи є браузер частиною операційної системи, все одно, що запитувати, чи є автобусна лінія частиною міста. Зрештою, це залежить від того, що ви маєте на увазі під “містом”.

Відповідь на це питання не має відношення до справи Microsoft.

Чи повинен код, який реалізує браузер, бути інтегрований з ядром операційної системи?

Це інженерне питання. На відміну від широкого терміну “операційна система”, термін “ядро операційної системи” має конкретне технічне значення, і на це питання є однозначна відповідь. З дуже серйозних інженерних міркувань, відповідь – ні.

Операційні системи організовані, фактично або умовно, шарами, як цибулина. Внутрішній шар зазвичай називають ядром.

Ядро – це перша частина ОС, яка запускається після увімкнення комп’ютера, і перше, що робить ядро – це бере під свій контроль все апаратне забезпечення комп’ютера

  • процесор
  • пам’ять
  • дискові накопичувачі
  • монітор
  • клавіатура/миша
  • мережеві з’єднання

Всі інші програми працюють під контролем ядра. Ядро

  • планує програми на виконання
  • розподіляє ресурси між програмами
  • відновлює ресурси з програм, коли вони їм більше не потрібні
  • видаляє програми з системи, коли вони завершують роботу

Важливо – апаратне забезпечення комп’ютера гарантує, що ядро відновить контроль, якщо програма зависає, вилітає або іншим чином поводиться неправильно. Коли це трапляється, ядро зупиняє програму, прибирає безлад і продовжує роботу.

Поки ядро функціонує належним чином, ОС може відновитися після будь-якої помилки у будь-якій іншій програмі. 

І навпаки, якщо ядро скомпрометовано, через

  • помилки
  • шкідливе програмне забезпечення
  • зловмисників

то помилкові програми можуть

  • втручатися в роботу інших програм
  • зависати або виходити з ладу комп’ютера
  • пошкодити дані

Зазвичай, єдиний спосіб відновити проблему з ядром – це перезавантажити комп’ютер. Якщо пошкодження даних поширюється на жорсткий диск, може знадобитися перевстановлення ОС.

З огляду на все це, хороша інженерна практика полягає в тому, щоб ядро було якомога меншим і простішим. З часом ядра мають тенденцію ставати великими і складними, тому що вони виконують багато складних речей. Однак принцип залишається незмінним: нічого не слід додавати до ядра без вагомої причини.

Вагомі причини

Вагомими причинами для того, щоб додати щось до ядра, є

  • необхідність
  • продуктивність
  • безпека

Необхідність

Деякі програми просто неможливо змусити працювати, якщо вони не знаходяться у ядрі. Веб-браузер не є однією з них. Існують веб-браузери – широко використовувані, повнофункціональні веб-браузери, які працюють у Microsoft Windows і не є частиною ядра. До них відносяться

Існування цих браузерів демонструє, що браузеру не обов’язково бути частиною ядра.

Продуктивність

Існують програми, які працюють швидше – набагато швидше – якщо вони є частиною ядра. Браузер не належить до таких програм. Internet Explorer від Microsoft не працює швидше всередині ядра, ніж інші браузери, що працюють поза ядром. Крім того, за нинішніх технологій та типових моделей використання, веб-браузери витрачають більше часу на очікування мережевого вводу-виводу, ніж виконання на процесорі.

Безпека

Деякі програми працюють всередині ядра, тому що їм потрібно бути всередині його кордону безпеки. Файлова система є гарним прикладом цього. Веб-браузер – ні. Згадані вище браузери, які працюють поза ядром, є безпечними – за багатьма оцінками, більш безпечними, ніж Internet Explorer, який працює всередині ядра. Безпека не є достатньою причиною для розміщення веб-браузера у ядрі.

Інтеграція

Іншою причиною, яку іноді називають для того, щоб зробити браузер частиною ядра, є інтеграція. “Інтегрований” – це просто вигадливе слово, що означає “частина”, тому цей аргумент, в кінцевому рахунку, є циклічним. При перевірці переваги інтеграції зазвичай виявляються претензіями на більшу продуктивність, безпеку або зручність. Ми вже бачили, що міркування продуктивності та безпеки не є виправданням для того, щоб робити браузер частиною ядра. Про зручність ми поговоримо нижче.

Не включати браузер

Оскільки немає жодних вагомих причин розміщувати браузер у ядрі, хороша інженерна практика полягає у тому, щоб тримати його зовні. Але це не просто питання хорошої практики: існують позитивні причини, чому браузер слід тримати поза ядром. Дві найважливіші з них

  • стабільність
  • безпека

Стабільність

Люди пишуть ядра операційних систем вже півстоліття. Ми знаємо, як

  • проєктувати їх
  • писати їх
  • робити їх стабільними та безпечними

Люди пишуть веб-браузери трохи більше десяти років. Дизайн, реалізація та основні вимоги до них все ще перебувають у постійному русі. Перетягування веб-браузера в ядро дестабілізує його роботу.

Безпека

Ядро встановлює межі безпеки на своїх інтерфейсах. Кожне значення, яке перетинає ці інтерфейси, має бути перевірено, щоб переконатися, що воно не порушує вимоги безпеки ядра. Ядро може бути складним, але його інтерфейси

  • добре визначені
  • зрозумілі
  • відносно прості

Ці властивості мають вирішальне значення для забезпечення безпеки ядра. Якщо інтерфейси ядра погано визначені, погано зрозумілі або просто занадто складні, то забезпечення безпеки ядра стає неможливим завданням.

Якщо ядро включає в себе веб-браузер, то межа його безпеки повинна поширюватися на інтерфейс між браузером і всесвітньою мережею. Цей інтерфейс включає в себе

  • веб-сторінки (текст, HTML, XML, …)
  • таблиці стилів
  • вбудовані програми (Java, JavaScript, ActiveX, …)
  • зображення (GIF, JPEG, PNG, …)
  • посилання
  • плагіни (Flash, …)

Словосполучення “всесвітня павутина” влучно описує розмір, складність і нечіткість даних, які повинен обробляти браузер. Перевірити ці дані неможливо, а перетягування браузера в ядро безнадійно ставить під загрозу його безпеку.

Підсумки

Для довідки, ось відповіді, які ми отримали на наші чотири запитання

1. Чи очікує клієнт, що на комп’ютері буде встановлений веб-браузер?

Так.

2. Хто повинен вибирати та інтегрувати браузер з комп’ютером?

ЕОМ.

3. Чи є браузер частиною широкого набору програмного забезпечення, що називається операційною системою?

Залежить від того, що ви маєте на увазі під “операційною системою”

4. Чи повинен код, який реалізує браузер, бути інтегрований з ядром операційної системи?

Абсолютно ні.

Тепер давайте подивимося, що насправді робить Microsoft з Internet Explorer

1. Корпорація Microsoft постачає Internet Explorer разом з операційною системою Windows

Досить справедливо; користувачі очікують отримати веб-браузер разом із комп’ютером

2. Microsoft примушує OEM-виробників постачати IE, а не будь-який інший браузер, на комп’ютери з Windows

Брудний басейн, до того ж незаконний. На жаль, OEM-виробники надто залежать від Microsoft, щоб скаржитися, а уряд США відмовляється накладати на Microsoft значущі санкції, очевидно, з політичних причин.

3. Microsoft стверджує, що браузер є частиною операційної системи

Вони мають право на свою думку.

4. Microsoft інтегрує код, що реалізує Internet Explorer, в ядро Windows

AAAAAAAAArrrrrgggggghhhhh!!!!!!!

Невже все так погано?

Так, все дійсно так погано.

Обговорення вище є технічним і дещо абстрактним, але проблеми, які воно описує, не є такими. Вбудовування браузера в ядро створює реальні проблеми для звичайних користувачів.

У всіх браузерах є баги; всі браузери виходять з ладу. Коли падає такий браузер, як FireFox, ви втрачаєте веб-сторінку, яку переглядали. Якщо ви хочете переглянути її знову, вам доведеться знову відкрити браузер і ввести URL-адресу. Коли Internet Explorer виходить з ладу, він забирає з собою ядро, операційну систему і комп’ютер. Відновлення зазвичай вимагає перезавантаження, а втрата даних в інших програмах не є рідкістю.

Всі браузери мають дірки в безпеці; всі браузери піддаються атакам з боку ворожих веб-сайтів. Якщо зламаний такий браузер, як FireFox, зловмисник отримує контроль над браузером. Якщо зламаний Internet Explorer, зловмисник отримує контроль над ядром, а через нього – над усім комп’ютером.

Навіщо вони це роблять?

Якщо інтеграція браузера з ядром є такою поганою ідеєю, ми повинні запитати, чому Microsoft це робить. Відповідь складається з двох частин

  • чому вони кажуть, що роблять це
  • чому вони це роблять насправді

Чому вони кажуть, що роблять це

Перша відповідь Microsoft, звичайно, полягає в тому, що браузер є частиною операційної системи. Однак ця відповідь ґрунтується на плутанині з більш детальними питаннями, про які йшлося вище. Ніхто не заперечує твердження, що загальний термін “операційна система” можна тлумачити досить широко, щоб включити в нього веб-браузер. Питання в тому, що змусило Microsoft затягнути браузер до ядра.

Microsoft не любить говорити більше про це питання, але якщо ви почитаєте їхню маркетингову літературу та рекламні матеріали, то побачите деякі інші заяви, які виходять подекуди за межі.

Microsoft рекламує зручності та можливості, які вони можуть запропонувати завдяки тому, що IE інтегрований з ядром. Він завжди там; він завжди увімкнений. Вміст з будь-якого джерела в Інтернеті може бути легко переданий в будь-яку програму на комп’ютері. Дані з будь-якої програми можуть бути відображені у вигляді веб-сторінки. Набридлива різниця між вашим комп’ютером та Інтернетом відходить на другий план: Windows піклується про все це за вас.

За іронією долі, саме така інтеграція робить Internet Explorer таким ефективним переносником шкідливого програмного забезпечення. “Зручність”, яку пропонує Microsoft, коштує величезних втрат у безпеці та стабільності.

Чому вони це роблять

На початку своєї діяльності компанія Microsoft продавала свої продукти, спираючись на їхні функції, продуктивність та зручність, і вона все ще на словах говорить про ці переваги для клієнтів. Однак сьогодні основна стратегія Microsoft щодо продажу своїх продуктів полягає в тому, щоб позбавити клієнта будь-якого іншого вибору.

Один із способів зробити це – витіснити конкурентів з бізнесу, наприклад, за допомогою пакетних пропозицій. Але просто постачати IE в одній коробці з Windows недостатньо: якщо все, що зробила Microsoft, – це поклала його в коробку, то хтось інший міг би так само легко його з неї витягти.

  • Якби суддя в антимонопольному процесі міг видалити IE з Windows, то Microsoft було б важче відстоювати своє твердження, що IE є частиною Windows.
  • Якби користувачі могли видалити IE з Windows, вони б з більшою ймовірністю використовували інші веб-браузери.

Існує також історична причина інтеграції IE з Windows. До початку 1990-х років Інтернет був, по суті, дослідницьким проєктом, який фінансувався урядом і був доступний лише університетам та великим корпораціям. Потім, збіг обставин зробив використання Інтернету практичним для споживачів. До них відносяться

  • падіння цін на обладнання
  • збільшене проникнення мережі
  • графічні користувацькі інтерфейси
  • політичні рішення щодо комерціалізації Інтернету та розширення доступу до нього.

Коли це сталося, Інтернет, а особливо веб-браузер, раптово привернули до себе увагу громадськості. Протягом короткого періоду часу існували серйозні припущення, що веб-браузер витіснить операційну систему як основний інтерфейс користувача до комп’ютера.

Перспектива цього, безсумнівно, налякала Microsoft. Якщо користувачі проводять весь свій час у веб-браузері, то їм байдуже, яка операційна система працює під ним. Тоді ЕОМ-виробники зможуть вільно продавати комп’ютери з конкуруючими операційними системами, і монополія Microsoft зникне.

Відомо, що Microsoft виявилася не готовою до комерціалізації Інтернету. Їхньою першою реакцією було створення власного веб-браузера, але вони також подбали про те, щоб цей браузер був вбудований прямо в операційну систему. Таким чином, навіть якщо б браузер якимось чином став ОС, користувач все одно використовував би Windows, а Microsoft все одно контролювала б робочий стіл.

Але так не сталося. Споживачі вже 10 років в Інтернеті, вони не проводять весь свій час у веб-браузері, і їм все ще не байдуже, яку ОС вони використовують. Але Microsoft ніколи не відступала від свого початкового рішення інтегрувати браузер з ОС – якщо вже на те пішло, вони працювали над тим, щоб зробити їх нероздільними, розкидаючи код для браузера по всій системі в декількох файлах і розмиваючи різницю між Інтернетом і робочим столом в інтерфейсі користувача.


Примітки

Netscape Communications Corporation

Вікіпедія подає коротку історію Netscape Communications Corporation. Назва Netscape збереглася як торгова марка компанії AOL.

ядро операційної системи

Це обговорення стосується переважно операційних систем з монолітним ядром, таких як GNU/Linux та Windows 95/98/ME. Для операційних систем з мікроядерною архітектурою, таких як GNU/Hurd та Windows NT/2000/XP, термінологія та деталі дещо відрізняються; однак, основні проблеми залишаються тими ж самими.

можливості, продуктивність та зручність

Я користувався чудовим компілятором C від Microsoft протягом більшої частини 1980-х років.

відступив

Джоел Спольскі стверджує, що Microsoft свідомо нехтувала розробкою IE, побоюючись, що більш потужний браузер, навіть їхній власний, може загрожувати їхній монополії на ринку настільних комп’ютерів.

Емануель Голдберг, пошук електронних документів і Мемекс Ванневара Буша

Майкл К. Бакленд,

Школа бібліотечних та інформаційних досліджень,

Каліфорнійський університет, Берклі, Каліфорнія 94720-4600.

Постскриптум від 20 липня 2013 р.: Для більш детальної та актуальної інформації дивіться біографію: М. Бакленд. Емануель Голдберг і його машина знань. Libraries Unlimited, 2006. ISBN 0-313-31332-6, особливо розділи 14 та 19. Німецьке видання: Vom Mikrofilm zur Wissensmaschine: Emanuel Goldberg zwischen Mediantechnik und Politik. Berlin: Avinus Verlag, 2010.

Анотація: У відомій роботі Ванневара Буша «Як ми можемо думати» (1945) описується уявна машина для пошуку інформації — Мемекс. Мемекс зазвичай не розглядається історично у зв’язку з подальшим розвитком цифрових комп’ютерів. У цій статті зроблено спробу реконструювати маловідому історію пошуку інформації до 1939 року, коли було написано “Як ми можемо думати”. Мемекс був заснований на роботі Буша протягом у 1938-1940 рр., яка розробляла вдосконалений фотоелектричний селектор мікрофільмів, технологію електронного пошуку, вперше започатковану Емануелем Голдбергом з Zeiss Ikon, Дрезден, у 1920-х роках. Розглянуто далековидні заяви Пола Отлета (1934) і Вальтера Шермейєра (1935) та розвиток технології пошуку електронних документів до Буша.

Вступ

Опис Ванневара Буша у 1945 році уявної інформаційної машини «Мемекс» постійно розглядається та цитується у зв’язку з подальшими розробками в обчислювальній техніці, пошуку інформації та гіпертексту. У такому вигляді Буш та його Мемекс виглядають разюче оригінальними та далекоглядними. Навпаки, Мемексу Буша було приділено мало уваги щодо його власного контексту: бачення та технологічний розвиток пошуку інформації в 1930-х роках. Буш і Мемекс, якщо дивитися на них в контексті, виглядають суттєво інакше, ніж більш звичне уявлення про них без контексту. У цій статті розглядається технологічна основа Мемекс та інших бачень того періоду, з особливим посиланням на Емануеля Голдберга.

«Як ми можемо думати»

Опублікований у 1945 році в Atlantic Monthly опис уявної персональної інформаційної машини Ванневара Буша в його статті «Як ми можемо думати» мав негайний резонанс (Bush, 1945a). Life опублікував ілюстровану версію під назвою «Видатний учений США передбачає можливе майбутнє, в якому створені людиною машини почнуть думати» (Буш, 1945b). Time коротко підсумував це під заголовком «Машина, яка думає» з фотографією Буша з, можливо, неоднозначним написом «Професор Буш: Просто поверніть руків’я» (Anon., 1945). Буш передрукував свою статтю в «Нескінченних горизонтах» (1946, 16-32) і написав про це далі у двох пізніших книгах: «Науки недостатньо» (1967, 75-101) та «Частини дії» (1970, 190-192).

«Як ми можемо думати» з того часу постійно цитується, цей розвиток проаналізував Сміт (1981), який зазначив, що стаття використовувалася як символ для ряду різних концепцій. Однак посилання на нього часто мають мало змісту. Стаття стала модною іконою сучасної інформаційної науки, зазвичай використовується як зручна відправна точка або як заклик до респектабельності. Буша навіть прославляли як «батька інформаційної науки» (Lilley & Rice, 1989).

Зараз, читаючи «Як ми можемо думати», важко не подумати про те, як пропозиції Буша втілюються в життя завдяки висхідній потужності та універсальності сучасних цифрових комп’ютерів. Якщо розглядати розвиток інформаційних систем з 1945 року, то Мемекс Буша легко побачити в якості маяка, що вказує на те, що має бути далі. Але це неповна та неісторична перспектива. Хоча стаття була опублікована в 1945 році, спочатку вона була написана в 1939 році (Nyce & Kahn, 1989) і вона не мала нічого спільного ні з цифровими комп’ютерами, які тільки починали винаходити, ні з аналоговими комп’ютерами, над якими працював сам Буш. 

Мемекс

Сам Мемекс — це уявна персональна інформаційна система, розроблена навколо складного пристрою для зчитування мікрофільмів і має більше функціональних можливостей, ніж будь-який зчитувач мікрофільмів, створений коли-небудь. Буш обговорює це у зв’язку з потребами в науці, а не в ділових звітах.

Уявний Мемекс має такі компоненти:

1. Збірник документів на мікроформі. У цьому Буш дотримується давньої традиції. Ідея надання зручних копій документів на мікрофільмах датується принаймні 1853 роком (Stevens, 1968: 363) і стала загальноприйнятою. Наприклад, Пол Отлет (1868-1944), бельгійський документаліст, та Роберт Б. Ґольдшмідт (1877-1935), бельгійський винахідник, запропонували стандартизовану мікрофішу в 1906 році (Goldschmidt & Otlet, 1906; Otlet, 1990, 87-95).) та портативну бібліотеку мікроформ у 1925 році (Goldschmidt & Otlet, 1925; Otlet, 1990, 204-210).

2. Робоча станція, яка містить збережені документи, щоб окремі сторінки могли проєктуватися на екран за бажанням. Робоча станція, розроблена Georges Sebille для зберігання 300 000 сторінок на дванадцяти рулонах 330 мм, стала досить відомою серед документалістів (наприклад, Sebille, 1932; Otlet, 1934a). Проте малюнок Мемекс в Life, намальований Альфредом Д. Сімі за консультацією з Бушем, більше нагадує робочу станцію Леонарда Г. Таунсенда (1938).

3. Забезпечення додавання нових зображень до сховища мікрофільмів.

4. Можливість не просто знайти відомий запис, але й ідентифікувати та вибрати всі й кожен запис окремо з будь-яким вказаним кодуванням.

5. «Асоціативні тропи». Буш був невисокої думки про індекси та схеми класифікації:

«Наше невміння отримати доступ до записів значною мірою викликано штучністю систем індексування. Коли дані будь-якого типу розміщуються в сховищі, вони подаються в алфавітному або цифровому порядку, а інформацію (якщо вона є) знаходять шляхом її відстеження від підкласу до підкласу. Він може бути лише в одному місці, якщо не використовуються дублікати; потрібно використовувати правила щодо того, за яким шляхом його знайти, а правила громіздкі. Крім того, знайшовши один предмет, потрібно вийти із системи та знову вийти на новий шлях». (Буш, 1945a, 106).

Цей звіт не показує здатність систем індексування та класифікації об’єднувати пов’язані матеріали за допомогою колокації та синдетичної структури та вказує на те, що розуміння Буша про пошук інформації було дуже неповним. Буш фактично заявив, що пошук повинен функціонувати не так, як звичайні індекси, а як людський мозок, тобто «як ми можемо думати». Буш вважав, що створення довільних асоціацій між окремими записами є основою пам’яті, тому він хотів створити «mem(ory-)ex» або «Мемекс замість індексу». Результатом став персоналізований, але поверхневий та за своєю суттю згубний дизайн. Замість того, щоб індексувати документи безпосередньо за їхнім змістом або характеристиками, Буш запропонував кодувати документи за їх передбачуваною відповідністю певній темі, наприклад перевазі короткого турецького лука під час хрестових походів. Таким чином, документи, що відносилися до тієї самої теми, були пов’язані один з одним спільним кодуванням, яке забезпечувало «маршрут» через колекцію документів. Насправді, кожен маршрут — це концепція індексування, а код для кожного сліду — це, по суті, термін індексації.

Однак судження про релевантність, як відомо, є непослідовними, ситуативними та можуть змінюватися в міру розвитку знань. Оскільки сліди Буша ґрунтувалися не на змісті документа, а на сприйнятій відповідності документів до маршрутів, схема маршрутів будь-якої особи навряд чи буде задовільною для будь-якого іншого користувача. Персоналізована інформаційна система може бути корисною для окремої людини, але має обмежену корисність для інших. Крім того, сприйняття релевантності є менш стабільним, ніж сприйняття змісту теми. З цієї причини звичайне тематичне індексування залишається прийнятним, навіть кращим на практиці, оскільки система, заснована безпосередньо на релевантності, як у Мемекс, не може змінюватися автоматично, щоб відобразити постійно змінювані уявлення про релевантність. Сліди, бувши заснованими на особистих знаннях і уявленнях про релевантність однієї людини, були б дуже застарілими. Зі збільшенням знань користувача змінювалося сприйняття релевантності, і сліди потрібно було б переробити. Будь-який заданий шаблон маршрутів залишатиметься доречним лише до тих пір, поки користувач нічого не навчиться з використання Мемекс або будь-яким іншим способом.

Технологія Мемекс

Мемекс Буша спирається на два головні джерела: його погляд на асоціативні зв’язки як механізм, за допомогою якого працює мозок; фотографічні та інші технології, доступні наприкінці 1930-х років. Зазначені вище особливості та інші вдосконалення, такі як невелика камера, прив’язана до лоба дослідника, щоб фотографувати все, на що він або вона дивляться, були більш-менш можливими окремо з технологією 1939 року, хоча об’єднання їх в одну робочу станцію, ймовірно, було б непрактичним.

У 1939 році Буш фактично був відповідальним за проєктування та створення машини для пошуку документів, набагато швидшої та технологічнішої, ніж будь-які попередні спроби. Цей прототип сформував контекст, впізнавану технологічну основу (впізнавану на малюнках Сімі) і, ймовірно, стимул для його роздуму «Як ми можемо думати».

Селектори мікрофільмів

У 1920-х і 1930-х роках мікрофільм став популярним засобом для зберігання записів, особливо в банках, і всі види людей активно винаходили обладнання для мікрофільмів (Stewart & Hickey, 1960). Мікрофільмування заощадило місце для зберігання, і банки виявили, що мікрофільмування анульованих чеків було корисним заходом проти шахрайства (Johnson, 1932; Schwegmann, 1940). Але оскільки документи навряд чи були мікрофільмовані в порядку, зручному для ідентифікації окремих записів, постало питання, як шукати будь-який документ. Перфокарти були добре відомі, але пристрої для зчитування карток були відносно повільними — 150 карток на хвилину — і пошук потрібної картки давав лише одну адресу електронний документ на мікрофільмі. Було б зручніше мати «інтегральну» пошукову систему, яка поєднує в собі індекс і документ. Існувало дві логічні можливості. Можна було прикріпити кадри мікрофільму до картки («апертурні картки») або записати логічний еквівалент перфокарти на мікрофільмі поряд із зображенням документа. Можна було пробити отвори в плівці або розташувати непрозорі та напівпрозорі плями на плівці, щоб позначити отвір чи відсутність отвору. Кожен із цих прийомів був випробуваний. Звичайна форма технології селектора мікрофільмів полягає у створенні «пошукової картки» (перфокартки) або шаблону, що містить шуканий шаблон кодування, і вирівнювання його з кодованими ділянками на мікрофільмі між джерелом світла та фотоелементом. Див. малюнки 1 і 2.

https://lh3.googleusercontent.com/C5ffUshzOe1cYbT9ZmJireRKWOvWztyGVP-3-AubBWzhEqRjzk1wXm5l0A2XSQjUjACMeB_P3lya_C24CR6vTQ4YuapnrrWiS6rHexlX42HS0670gyPBPWPbamC-rhOyXuQ1R7drbZOjLuCboNnx_LQ

Коли коди мікрофільму проходять повз пошукову картку, збіг візерунка на мікрофільмі з рисунком на пошуковій картці вплине на потік світла від джерела світла до фотоелемента і, таким чином, на потік електричного струму від фотоелемента. Так ідентифікується потрібний запис і запускається відповідна дія, наприклад створення копії.

https://lh3.googleusercontent.com/fGNMB4RntSi9yMxmnEhsRMgURMLtauRiUrfVGPCIe47QqASBygptuogYYr7fAAVju1-1tksskIPwAwXy3T40SAA31upasfRLLulh_h1WKwn7FZkaiDYWZ8BlXg5AE1bYJKGSgOZQZB_J29yJAjDTvY0

Наскільки потужними обіцяли бути ці машини, невідомо. У 1925 році на Міжнародному конгресі фотографії був продемонстрований беззернистий мікрофільм із роздільною здатністю, еквівалентною зберіганню всього тексту Біблії в 50 разів на одному квадратному дюймі плівки. G. W. W. Stevens (1968, 302) називає мільйон біт на квадратний міліметр плівки як теоретичну, але на практиці недосяжну межу для мікрофільму. До 1961 року швидкість пошуку 15 000 кодів за хвилину була досягнута на експериментальному мікрофільм-селекторі (Bagg & Stevens, 1962, App. B). Селектори мікрофільмів були розроблені для невеликих прямокутних шматків («чіпів») плівки, а також для рулонів мікрофільму.

В книзі «Гігантські мізки; або «Машини, які думають», популярний вступ до цифрових комп’ютерів, у 1949 році передбачалося, що в майбутній «автоматизованій бібліотеці» записи каталогу (і, зрештою, документи) будуть на мікрофільмах і витягуватимуться цифровим комп’ютером:

«Ви зможете набрати в каталозі машини «виготовлення печива». У машині буде тріпотіти кіноплівка. Невдовзі це припиниться, і перед вами на екрані буде спроєктовано частину каталогу, яка показує назви трьох-чотирьох книг, що містять рецепти печива». (Берклі, 1949, 181).

Згодом індексування було переміщено з плівки на цифрові комп’ютери, підключені до пристроїв для зчитування мікрофільмів: комп’ютерна система пошуку (CAR) замінила фотоелектричні селектори мікроплівок.

У бібліотечній літературі іноді стверджується, що Ральф Р. Шоу (1907-1972), видатний бібліотекар і професор, винайшов або «сконструював» швидкий селектор мікрофільмів (наприклад, Н. Д. Стівенс, 1978). Але це неточно. Машина, оприлюднена Шоу в 1949 році, була заснована на попередньому прототипі, розробленому з 1938 по 1940 рік групою з Массачусетського технологічного інституту (MТI) під керівництвом Буша. Керівником проєкту прототипу Буша був Джон Х. Говард, а асистентами з дослідження були Рассел С. Койл, Джон Кумбс, Клод Шеннон і Лоуренс Стейнхардт. Компанії Eastman Kodak і National Cash Register надали по 10 000 доларів кожен. Мета проєкту полягала в тому, щоб протягом двох років розробити прототип машини, здатної швидко вибирати мікрофільмовані бізнес-записи з мікрофільму: швидкий селектор мікрофільмів. Селектор Буша справді був швидким, оскільки він використав переваги двох нових розробок: удосконалена технологія фотоелектричних елементів; та стробоскопічну лампу, вперше розроблену його колегою Гарольдом Е. Еджертоном. Створюючи яскравий спалах світла тривалістю лише одну мільйонну частку секунди, стробоскопічна лампа дозволяла копіювати вибране зображення мікрофільму «на льоту», не зупиняючи фільм (та пошук) для створення копії. Селектор мікрофільмів Буша ніколи не використовувався оперативно, за винятком того, що він, здається, використовувався для криптоаналізу: він, зрештою, був розроблений, щоб бути ефективним для ідентифікації (вибору) кожного входження зазначеного коду.

Після Другої світової війни Кумбс, Говард і Стейнхардт працювали разом в Engineering Research Associates (ERA) у Сент-Полі, Міннесота (Томаш, 1980). До Буша звернулися його колишні студенти, які зараз навчаються в ERA, щоб отримати підтримку для подальшої роботи над селекторами мікрофільмів. Зрештою Міністерство торгівлі США уклало контракт з ERA на створення нового селектора мікрофільмів. Бібліотекар Ральф Шоу, тодішній директор Національної сільськогосподарської бібліотеки, отримав фінансування для кодування тестового матеріалу та тестування нової машини ERA. Кажуть, що Керролл Вілсон, який займався патентами Буша в Массачусетському технологічному інституті, а зараз працює у Комісії з атомної енергії (AEC), організував надання AEC фінансування Міністерству торгівлі на розробку селектора мікрофільмів (Coile, 1990; Engineering Research Associates, 1949; Pike & Bagg, 1962).

Була певна критика тесту та деякі припущення, що і Буш, і Шоу сумніваються в майбутньому технології селектора мікрофільмів. Шоу розрекламував швидкий селектор мікрофільмів ERA, зробивши його та себе широко відомими у всьому світі (Шоу, 1949a; 1949b). Згодом він відмовився від нього як незадовільного.

У літературі існує загальна думка, що Буш винайшов перший швидкий селектор мікрофільмів. Але чи це насправді так? У 1960 році журнал Fortune повідомив, що в 1949 році:

«Невдовзі після публічної демонстрації швидкого селектора Шоу відвідав інженер, на ім’я Голдберг, який до війни працював у відомій німецькій оптичній фірмі Zeiss-Ikon. Голдберг сказав, що він радий побачити, що хтось нарешті знайшов застосування його ідеї запису на мікрофільмах в поєднанні з індексним кодом – по суті та сама ідея, що ідея Буша. Голдберг отримав патент США на цю ідею в 1931 році». (Белло, 1960, 167).

Шоу сказав Голдбергу, що він не знав про роботу Голдберга, і згодом згадав патент Голдберга (E. Goldberg, 1931) у двох своїх основних статтях про селектор мікрофільмів ERA (Шоу, 1949a; 1949b). Пізніше Роберт Ферторн (1958) обговорював «Як ми можемо думати» в Computer Journal. Фейрторн критично оцінив ідеї Буша, зазначив, що «небагато з його пропозицій були оригінальними», а також згадав попередню роботу Голдберга. Стаття Фейрторна була передрукована в його книзі Towards information retrieval (1961, 135-146). У 1960 році Хоукінс у книзі під редакцією Шоу стверджує:

«Шоу приписує доктору Е. Голдбергу перше практичне застосування електроніки для відбору даних на плівці, а доктору Ванневару Бушу — основні принципи організації знань і базову електронну систему, що використовується в Rapid Selector». (Hawkins, 1960, 145).

Гокінс цитує та, можливо, лише підсумовує статтю Шоу 1949 року (Shaw, 1949a). У докладній історії селекторів мікрофільмів Бегг і Стівенс (1962) згадують патент США Голдберга. Тож до 1962 року в інформаційно-пошуковій літературі було кілька побіжних посилань на попередні винаходи Голдберга, але, здається, відтоді майже нічого. У 1957 році в ізраїльському технічному журналі Нойман поскаржився, що в розповіді Ванневара Буша про швидкий селектор в Life не згадується Голдберг, «справжній винахідник, який насправді побудував і продемонстрував таку машину багато років потому». (Neumann, 1957, v).

Виникає кілька запитань: ким був Голдберг? Що саме він винайшов? Чи справді він створив селектор мікрофільмів? Що Голдберг опублікував на цю тему? Чи знав Буш про роботу Голдберга? Якщо селектор мікрофільмів Буша надихнув його фантазію про Мемекс, то чи робота Голдберга надихнула на якісь подібні бачення? Нікому не вистачило цікавості дізнатися? Чи можемо ми зробити якісь висновки щодо соціології чи науки про інформацію з разючого контрасту між постійним визнанням Буша та тривалим порівняльним забуттям Голдберга?

Емануель Голдберг

Емануель Гольдберг народився в Москві, Росія, у 1881 році. Він закінчив Московський університет, переїхав до Німеччини та здобув ступінь доктора наук у Лейпцизькому університеті в 1906 році, захистивши дисертацію про кінетику фотохімічних реакцій. У 1917 році він переїхав до Дрездена, щоб стати директором компанії Ica AG., яка пізніше була об’єднана з іншими фірмами (Contessa-Nettel, Ernemann, Goertz і Hahn), щоб утворити Zeiss Ikon AG., контрольовану Фондом Карла Цейса з Єни. Голдберг став першим провідним директором Zeiss Ikon. Живучи в Дрездені, він також був професором Інституту наукової фотографії Технічного університету.

Починаючи з бакалаврату, Голдберг уже до 1931 року вніс чудовий та блискучий ряд ідей та винаходів, переважно пов’язаних із фотографією. Це включало процес цинкування, першу ручну кінокамеру (Kinamo), раннє залучення до телевізійних технологій і добре прийняту книгу Der Aufbau des photographischen Bildes (Побудова фотографічного зображення) (Е. Голдберг, 1922). Також Голдберг розробив мікрофільм із дуже високою роздільною здатністю, згаданий вище, і технологію, що лежить в основі мікроточок, які пізніше використовувалися в шпигунстві (E. Goldberg, 1926; White, 1989; 1990).

Міжнародний конгрес фотографії 1931 року

8-й Міжнародний конгрес фотографії, що відбувся в Дрездені в 1931 році, слід вважати піком у кар’єрі Голдберга. Саме пропозиція, представлена ​​від імені Комітету з сенситометрії Голдбергом і його колишнім інструктором Робертом Лютером щодо стандартного вимірювання швидкості плівки, стала основною темою обговорення. Ця пропозиція призвела до прийняття знайомих стандартів швидкості плівки DIN та ASA.

Робота конгресу була складною в технічному плані. Однак для широкої публіки була призначена спеціальна сесія більш популярного характеру, на якій Голдберг приголомшив публіку. «Доктор Е. Голдберг… прочитав надзвичайно добре ілюстровану популярну лекцію на тему «Основи розмовних фільмів», — повідомляв Journal of the Society of Motion Picture Engineers (Шеппард, 1932). Журнал The Zeitschrift für angewandte Chemie прокоментував «дивовижно прості експерименти» професора Голдберга (Anon., 1931). У своїй лекції він продемонстрував, як коливання стрілки фонографа, що відтворюють запис увертюри «Егмонт», можна перетворити на електричний струм, який створює візерунки на осцилографі, а також коливання в обертовій лампі розжарювання, які потім перетворюються за допомогою фотоелемента зі світла назад до електричного струму і подаються в гучномовець для відтворення музики, записаної на фонографі (E. Goldberg, 1932a).

На бенкеті конгресу в ратуші Голдбергу була вручена престижна медаль Пеліго Французького товариства фотографії та кінематографії. Ці події, здається, затьмарили доповідь, яку Голдберг представив на одній із технічних сесій під назвою «Neue Wege der photographischen Registertechnik» («Нові методи фотографічного індексування»). Стаття з’явилася в опублікованих матеріалах конгресу під назвою «Das Registrierproblem in der Photographie» («Проблема пошуку у фотографії». Голдберг, 1932c). Цей чіткий і стислий документ описує конструкцію селектора мікроплівок із використанням фотоелектричного елемента. Можливо, це перша стаття про пошук електронних документів і описує, здається, першу чинну систему пошуку документів з використанням електроніки. Був продемонстрований прототип. Британський журнал фотографії визнав важливість цієї статті та зробив надзвичайний крок, перевидав її англійською мовою з буквальним і безкорисним перекладом назви «Метод фотографічної реєстрації» (Е. Голдберг, 1932b). (Новий переклад див. у цьому номері).

Два кроки, які на той час були незвичайними для німецької промисловості, свідчать про те, що Голдберг вважав свій фотоелектричний селектор мікроплівок потенційно важливим: німецький патент був виданий на його ім’я, а також Zeiss Ikon, і, продовжуючи свій трудовий контракт, він домовився про частку в будь-які майбутні відрахування за цей конкретний патент (H. Goldberg, 1990). Було створено два різні прототипи (H. Goldberg, 1990), але вони не були розроблені в продукт, і ми поки що не знайшли інших записів про них. У детальній офіційній історії досягнень і продукції Zeiss Ikon та її попередніх фірм, виданої у 1937 році, фотоелектричний селектор мікроплівок не згадується. Існує цікава згадка про «так звану машину для пошуку чеків і документів, створену для банків і промислових фірм, яка дозволяла… постачати фотокопії» (Zeiss Ikon, 1937, 122. Transl. MKB), але ми вважаємо, що це має бути посилання на неелектронне обладнання, включаючи антверпенську жиромашину, зазначену нижче.

У 1933 році, коли Гітлер прийшов до влади, Голдберг, бувши євреєм за походженням, зазнав фізичного насилля з боку нацистів, був звільнений з посади професора та став біженцем. Він емігрував до Парижа, де з 1933 по 1937 рік керував Optica та Iconta, дочірніми компаніями Zeiss у Франції. Офіційна історія Zeiss Ikon 1937 року, опублікована в епоху нацизму, не згадує Голдберга, всупереч провідній ролі, яку він грав протягом більшої частини існування фірми. У 1937 році він переїхав до Тель-Авіва, заснував Goldberg Instruments Ltd, допомагав військовим зусиллям союзників, продовжував цікавитися пошуком інформації та помер у 1970 році.

Не тільки нацисти приховали досягнення Голдберга. У 1946 році, через двадцять років після публікації класичної статті Голдберга про технологію мікроточок (E. Goldberg, 1926), Reader’s Digest опублікував хвалькувату статтю про шпигунство та мікроточки за підписом Дж. Едгара Гувера, директора Федерального бюро розслідувань США. Не згадуючи імені Голдберга, Гувер пише про «знаменитого професора Заппа, винахідника мікроточкового процесу, у Вищій технічній школі в Дрездені». Очевидно, Гувер пов’язує досягнення та академічне призначення Голдберга з ім’ям Уолтера Заппа, винахідника мініатюрної камери Minox, яка також використовувалася шпигунами, але з зовсім іншою технологією та нездатною виробляти мікрокрапки. Помилковий опис виробництва мікрокрапок був зроблений нижче (Hoover, 1946, 3. Обговорення «цієї суміші напівправди та відкритої дезінформації» див. в White, 1990, 191-195. Reader’s Digest надрукував твір Гувера як головну статтю в номері від 1 квітня).

Хто знав що коли? 

Як зазначалося вище, Голдберг особисто привернув увагу Шоу до свого патенту, який згодом згадували Шоу, Фейрторн, Бегг і Стівенс, а також іноді в оглядах методів документування (наприклад, Міжнародна федерація документації, 1964, 298).

Актуальність патенту Голдберга для пошуку документів неочевидна ні з його назви, ні з анотації в Патентному бюлетені США, де він був опублікований 29 грудня 1931 року. Він, як і інші до Буша, назвав свій винахід «статистичною машиною». Німецький патент, поданий у 1927 році, мав назву «Пристрій для відбору статистичних і облікових даних» (Zeiss Ikon & Goldberg, 1938). Electronics (1932)  включив американський патент Голдберга в список регулярних патентів із таким коротким описом: «Статистична машина. Використання світлового променя та фототрубки для додавання, сортування та інших статистичних операцій».

Також було досить марним те, що Голдберг використовував німецьке слово «Register» і його похідні, які мають багато значень, пов’язаних із записом, індексуванням і, у контексті фотографування та виробництва документів, вирівнюванням. Гірше того, дослівний англійський переклад 1932 року «Метод фотографічної реєстрації» вводить в оману і не пропонує статті про пошук документів.

Селектор мікрофільмів Голдберга був відомий дослідницьким лабораторіям Kodak у Рочестері, штат Нью-Йорк, до того, як Kodak профінансував Буша для створення «швидкого» селектора мікрофільмів. Двоє провідних вчених з дослідницьких лабораторій Kodak, Семюел Едвард Шеппард і Адріан Пітер Герман Трівеллі, були присутні на Конгресі 1931 року та були особистими друзями Голдберга і, ймовірно, бачили демонстрацію прототипу. У 1937 році син Голдберга, Герберт Голдберг, пішов працювати в Eastman Kodak Research Laboratories. У 1938 році співробітник лабораторій Річард С. Морс подав заявку на отримання патенту на удосконалення кодового розпізнавання на мікрофільмоселекторі, а пізніше передав його компанії Eastman Kodak (Морс, 1942).

Селектор мікрофільмів Голдберга був відомий і в IBM. Джеймс Вер Брайс (1880-1949), головний науковий директор IBM у 1930-х роках, стежив за новими розробками в електроніці та цікавився мікрофільмом як носієм для зберігання даних. (Про Bryce див. Anon., 1949, і Bashe et al., 1986). Коли в 1931 році з’явився патент Голдберга в США, IBM негайно придбала на нього ліцензію. Один із 400 власних патентів Брайса, поданий у 1936 році, стосувався вдосконаленого селектора мікрофільмів (Bryce, 1938).

Знаючи про патент Ґолдберга, можна знайти доповідь конгресу, якщо впізнати її з назви, заглянувши під Голдберга в Internationale Bibliographie der Zeitschriftenliteratur (IBZ або «Dietrich»), (Abt. A, v. 70, 1932) , головному німецькому покажчику періодичної літератури, або в записі для Голдберга у виданні 1937 р. (але не у виданні 1970) провідного довідника вчених Дж. К. Поггендорфа (1937). Шоу, який вільно володів німецькою мовою і знався на бібліографії, не важко було б її знайти. Однак, ця стаття, здається, залишилася майже повністю невідомою та нецитованою.

У США в журналі Journal of Documentary Reproduction, який видавався з 1938 по 1942 рік, повідомлялося про дослідження та розробки, пов’язані з мікроформами в документації. Велика бібліографія в першому випуску включає як англійську, так і німецьку версії доповіді Голдберга на конгресі та інший безкорисний дослівний переклад німецької версії: «Проблема реєстрації у фотографії» (Berthold, 1938, 100). Жодних інших згадок про Голдберга в Журналі не було помічено, хоча є заява без джерел або пояснень, що «вже була проведена робота з вибору пристроїв стробоскопічного та фотоелементного типу» (Carruthers, 1938, 269).

У 1937 році В. Д. Тейт підготував доповідь під назвою «Сучасний стан обладнання та витратних матеріалів для мікрофотографії» для Комітету науково-допоміжних засобів навчання Національної дослідницької ради. Буш був членом цього комітету. Доповідь, передрукована як спеціальний випуск Journal of Documentary Reproduction (Tate, 1938), містить короткий опис роботи Мерла Е. Гулда (відомого як Мерл С. Гулд):

«Фотоелектричні елементи в поєднанні з системою ключів, вбудованих в оригінальний мікрофільм, дозволять машині вибирати заздалегідь визначені типи… Попередні моделі показали значну перспективу» (с. 48)

Один із патентів Гулда, на який подано заявку в 1936 році, стосувався «засобу ідентифікації», який використовував масив фотоелектричних елементів для виявлення певних шаблонів світла, такий самий загальний підхід, як і в наступному швидкому селекторі мікрофільмів Буша (Gould, 1940). Можна було очікувати, що Буш, як член комітету, прочитав звіт і, отже, знав про попередню роботу Гулда. Голдберг у звіті не згадується.

Незабаром після війни проєкт розробки селектора мікрофільмів в ERA отримав кодову назву «Голдберг», що, можливо, було посиланням на Емануеля Голдберга (Берк, 1991). Якби ця кодова назва мала якийсь інший референт, як-от Руб Голдберг, це був би іронічний збіг.

Європейські документалісти

Наскільки добре машина Голдберга була відома європейським фахівцям із пошуку інформації (тоді це називалося «документацією») у 1930-х роках? Якщо прототип селектора мікрофільмів Буша надихнув його концепцію Мемекс, чи попередній прототип Голдберга також надихнув будь-які подібні, більш ранні ідеї персональних інформаційних машин серед документалістів? Література про документацію в 1930-х роках була настільки ж стурбована технологією мікрофільмів, як зараз – комп’ютерною технологією, і з тієї ж причини, кожна з яких є найперспективнішою технологією пошуку інформації на той час. Основним міжнародним журналом, виданим Міжнародним інститутом документації (I.I.D., нині Міжнародна федерація інформації та документації (F.I.D.)), був I.I.D. Communications, в якому привернули увагу два споріднені винаходи фірми Голдберга. Одним з них був пристрій для зчитування мікрофільмів, створений для адміністрації Антверпену Гіро, який дозволяв візуально знаходити та сканувати мікрофільм попередньо відсортованих анульованих чеків зі швидкістю до 3000 чеків на хвилину (Keegstra, 1933). Фото машини можна побачити в I.I.D. Communicationes 1, Fasc. 3 (1934): Таблиця XLV. Іншим був додаток для мікрофільмів, який зменшив витрати на оплату праці та технічні помилки під час підготовки щомісячних рахунків для телефонних абонентів у міській телефонній системі Амстердама (Maitland, 1931). Зображення обладнання також з’являється в I.I.D. Communicationes 1, Fasc. 3 (1934): Таблиця XLIV. Прототип селектора мікрофільмів Голдберга, безсумнівно, мав би значний інтерес, якби він був відомий, але, здається, є мало доказів, що це так.

Найбільш ґрунтовним розглядом інформаційного пошуку в той період був Traité de documentation Поля Отле (1934). Ідіосинкратичний текст Отлета досить перспективний. На телебаченні він визнає потенціал використання телекомунікацій для віддаленого доступу до документів:

«Незабаром телебачення стане проблемою, яка, по суті, вирішена, як це вже є в теорії: зображення відтворюється на відстані без дроту. Можна уявити собі електричний телескоп, який дозволяє читати вдома, «телечитаючи» книги, викладені в читальних залах великих бібліотек, на заздалегідь запрошених сторінках». (с. 238. Пер. МКБ).

Пізніше він перераховує винаходи, такі як машинний переклад, які необхідні для пошуку та обробки інформації. Підкресливши важливість телекомунікацій та потребу в технічних стандартах, Otlet надає стислий план персональної інформаційної системи, включаючи передбачення гіпертексту:

«Ми повинні мати комплекс пов’язаних машин, які б виконували такі операції одночасно або послідовно: 1. Перетворення звуку в текст; 2. Копіювання цього тексту стільки разів, скільки буде необхідно; 3. Налаштування документів таким чином, щоб кожна дані мали власну ідентичність і свої відносини з усіма іншими в групі, з якими їх можна повторно об’єднати за потреби; 4. Присвоєння класифікаційного коду кожним даним; [поділ документа на частини, по одній для кожної даної , та] перегрупування частин документа відповідно до класифікаційних кодів; 5. Автоматична класифікація та зберігання цих документів; 6. Автоматичний пошук цих документів для консультації та доставки або для перевірки, або до машини для створення додаткових нотаток. 7. Механізоване маніпулювання всіма записаними даними за бажанням для отримання нових комбінацій фактів, нових відносин між ідеями, нових операцій з використанням символів».

«Машина, яка б задовольнила ці сім вимог, була б справжнім механічним і колективним мозком». (с. 391. Пер. МКБ)

Отле, який сам був піонером у використанні мікроформ для документування та брав активну участь у попередніх Міжнародних конгресах фотографії, ймовірно, знав про Голдберга та його мікрофільм високої роздільної здатності. Однак коротке обговорення Отлетом «вибору машин» (с. 390) не виходить за межі обладнання перфокарт. Здається, що в Traité немає впізнаваного натяку на фотоелектричне відновлення з мікрофільму.

Німецька версія доповіді Голдберга включена без анотації до анонімної бібліографії в I.I.D. Communicationes 1935 (Анон., 1935, 19). Це також зустрічається в бібліографії, складеній Вальтером Шермейєром і Т. П. Луз’єсом (1937), також опублікованій в I.I.D. Communicationes у 1937 році. Але Голдберг не згадується в наступному підручнику Луз’єса з документації, хоча він включає історичну довідку та обговорює селектори мікрофільмів (Лузьє, 1967), що свідчить про те, що саме Шуермайер додав статтю Голдберга до бібліографії.

У 1930-х роках Вальтер Шермейер працював бібліотекарем в Бібліотеці мистецтва й техніки у Франкфурті, Німеччина, та брав активну участь у документалістських колах (Habermann, Klemmt, & Siefkes, 1985, 315-316). Він очолював I.I.D. комітет з технічних методів документації. У статті, представленій на 29-й конференції Німецької асоціації бібліотекарів (VDB) у Дармштадті в 1933 році та опублікованій у Zentralblatt fuer Bibliothekswesen, провідному міжнародному журналі з бібліотечної справи, Шермейєр (1933) звернув увагу на чекову машину Zeiss Ikon Giro, яка підходила для бібліотечних каталогів і для 35-мм камери Contax, розроблену в Zeiss Ikon під керівництвом Голдберга. На Міжнародному конгресі з документації в Копенгагені 1935 року Шермейер (1936) представив статтю про використання мікроплівки, яка містить параграф про методи фотоелектричної селекції, який не містить цитат, але, здається, посилається на селектор Голдберга:

«Таку документацію на плівці можна повністю автоматизувати за допомогою фотоелектричних методів відбору. Це нове відкриття дозволяє будь-які сигнали у формі точок, а також цифр або літер, записаних на прозорих аркушах або плівках, сканувати та відбирати за допомогою фотоелементу. Очікується, що незабаром ми матимемо автоматичну машину, яка, перемикаючи фотоелемент на заданий код, зупинятиме збережені плівки з тим самим кодом, робитиме копії та зберігати їх знову в тій самій послідовності. Таким чином, за дуже короткий час бібліографія, зведення наявних посилань та інші документи, включаючи ілюстрації, можуть бути складені повністю автоматично». (Col. Schü. 8. Перекл. MKB)

Шурмейєр також передбачив потенціал телекомунікацій:

«Але яку революцію для пошуку інформації та особливо для бібліотек може принести телебачення! Можливо, одного дня ми побачимо наші читальні зали пустими, а на їхньому місці кімнату без людей, у якій виставляються книжки, які замовляють телефоном, які користувачі читають у себе вдома за допомогою телевізійного обладнання». (Col. Schü. 9. Перекл. MKB).

Бібліограф Отлет і бібліотекар Шуермейер були більш перспективними у своїх ідеях щодо технології пошуку інформації, ніж Буш, професор електротехніки десятиліттям пізніше.

Переоцінка Буша

Буш, здається, мало сказав у своїй опублікованій праці про попередників свого Мемекс або швидкого селектору мікрофільмів. Три міркування свідчать про те, що він не знав про деталі роботи Голдберга, коли створював свій прототип у 1938-40 роках:

1. Рассел С. Койл, науковий співробітник у розробці швидкого селектора мікрофільмів Буша, не пригадує жодних посилань на роботу Голдберга в той час (Coile, 1990).

2. Шоу, чия участь була прямим розвитком роботи Буша, сказав Голдбергу в 1949 році, що він не знав про роботу Голдберга (Bello, 1960; H. Goldberg, 1990).

3. Різниця в технічній конструкції. Голдберг співставляв за допомогою доповнення або «згасання»: при зіставленні напівпрозорих кодів на пошуковій картці з непрозорими мітками на плівці (як на рис. 1), поява шуканого коду була виявлена шляхом миттєвого блокування всього світла на одному фотоелементі. Проте конструкція Буша збіглася випадково: отвори як коди на пошуковій картці зіставлялися з напівпрозорими кодами на плівці. Появу шуканого коду було виявлено шляхом визначення наявності світла в кожній позиції, визначеній шаблоном пошуку, але в жодній іншій позиції цього не було виявлено. Потрібен був банк фотоелементів, по одному для кожної можливої ​​позиції, та потрібно було визначити правильну комбінацію електричних вихідних сигналів. Це було набагато складніше завдання та менш оригінальна конструкція, ніж у Голдберга. Подальші розробники робили пошук шляхом доповнення (вимирання), як, ми припускаємо, зробив би Буш, якби знав подробиці роботи Голдберга.

З усім тим, швидкий селектор Голдберга був відомий принаймні в двох провідних дослідницьких центрах США: в IBM та в Eastman Kodak Research Laboratories, одному зі спонсорів Буша. Слід також пам’ятати, що про нові розробки часто відомо досить мало в неповній формі. Ми припускаємо, що Буш не самостійно створив поняття електронного селектора мікрофільмів, хоча це було можливо. Не дивно, що один і той же винахід іноді виникає незалежно і більш-менш одночасно, коли є потреба і зароджується технологія. Винахідники віддають перевагу винаходу, ніж копіюванню. Оглядаючись назад, винахід фотоелектричного селектора мікроплівок виглядає майже неминучим, оскільки він був логічним розвитком кожної з двох різних технологій: (i) це було логічне продовження перфокарт для перенесення кодування на мікроплівку, потім єдиний видатний носій для компактного зберігання; і (ii) це було дуже схоже на звукові фільми, де кодування, яке потрібно сканувати, розміщується на плівці поряд із зображеннями на плівці. За таких обставин слід очікувати багаторазового незалежного винаходу. Наприклад, здається, що Хелен М. Девіс, працюючи зі своїм чоловіком Уотсоном Девісом і Рупертом Х. Дрегером, винайшли селектор мікрофільмів незалежно один від одного в 1935 році (Bagg & Stevens, 1962, 17). Вотсон Девіс, як і Шуермейєр, виступив із доповіддю на Копенгагенському I.I.D. конференції, на якій він також згадав, досить туманно, методи фотоелектричної селекції та пошуку з мікрофільму.

Вотсон Девіс займав у всьому цьому цікаве місце. Його дуже цікавило використання мікрофільму для зберігання та розповсюдження документів. Він особисто знав Буша, Голдберга, Отлета, Шурмейєра та К. Е. К. Міса, керівника дослідницьких лабораторій Eastman Kodak. Ймовірно, він знав або знав більшість, якщо не всіх, інших осіб, згаданих у цьому документі. (Про Девіса див. Farkas-Conn, 1990).

Висновки

Наше розслідування передісторії Мемекс Ванневара Буша та його швидкого вибору мікрофільмів, звичайно, неповне. Проте знайдені докази вказують на те, що загальноприйнята точка зору потребує суттєвого перегляду.

У травні 1927 року Емануель Голдберг розробив фотоелектричний селектор мікрофільмів, який він назвав «статистичною машиною». До 1931 року в Zeiss Ikon було створено два прототипи, які, мабуть, являють собою першу успішну систему електронного пошуку документів. Технологія селектора мікрофільмів була відома принаймні у двох провідних дослідницьких центрах США (Eastman Kodak і IBM) до 1931 року або незабаром після цього, і в обох випадках можна продемонструвати прямий зв’язок із Голдбергом. Ця технологія була представлена ​​на міжнародних конгресах у 1931 і 1935 роках, та до 1938 року над нею працювало кілька американських винахідників (наприклад, Брайс, Х. Девіс, Гулд і Морзе).

Ванневар Буш зробив у цій галузі подвійний внесок: (i) значні інженерні досягнення команди під його керівництвом у створенні справді швидкого прототипу селектора мікрофільмів; та (ii) спекулятивну статтю «Як ми можемо думати», яка завдяки своєму вмілому написанню та соціальному престижу автора мала негайний і тривалий ефект у стимулюванні інших. Як зазначив Фейрторн, документ Буша був своєчасним і «відкрив людям очі та гаманці».

Довоєнні фахівці з пошуку інформації в континентальній Європі, «документалісти», яких післявоєнні спеціалісти з пошуку інформації здебільшого не поважали, мали ідеї, які були значно досконалішими, ніж зараз зазвичай усвідомлюються.

Додаток: Джерела.

Інформацію про Голдберга знайти нелегко. Найкращими ідентифікованими джерелами були коротка оцінка Ноймана (1957) у номері Goldberg Festschrift у журналі Bulletin of the Research Council of Israel, інтерв’ю 1969 року, опубліковане в Popular Photography (N. Goldberg, 1969), і запис у Міжнародному біографічному словнику центральноєвропейських емігрантів (1983, т. 2, 388). Інші короткі біографічні джерела включають життєпис, надрукований у кінці його докторської дисертації (E. Goldberg, 1906, 46), Browne and Partnow (1983, 234-235), Gubas (1985a; 1985b), Kaprelian (1971), J. C. Poggendorff. (1937; 1970), Sipley (1965, 58-59), Wer ist’s? (1928, ?) і Zeitschrift fuer wissenschaftliche Photographie (Anon., 1957). Кілька його публікацій можна знайти, переглянувши сучасні випуски IBZ («Дітріх»). Аспекти його роботи можна знайти за допомогою покажчиків стандартних наукових праць про фотографію, напр. Едер (1945), Міс (1966) і Уайт (1990).

Шоу (1949a) надає зручний вступ до селекторів мікрофільмів. У постскриптумі до цієї статті Е. М. Р. Дітмаса неправильно цитується технічний звіт Engineering Research Associates (1949) про швидкий селектор мікрофільмів ERA як PB 97 535 замість PB 97 313, помилка, повторена деякими наступними авторами. Бегг і Стівенс (1961) надають найкращий історичний опис розвитку селектора мікрофільмів, хоча й неповний щодо Голдберга, який може бути доповнений пізнішим описом Олександра і Роуза (1964). G. W. W. Stevens (1968, розділ 12) надає резюме, як і Міжнародна федерація документації (1964, розділ 9).

Використана література

Alexander, S. N., & Rose, F. C. (1964). The current status of graphic storage techniques: Their potential application to library mechanization. In Libraries and automation, ed. by B. E. Markuson. (pp. 111-40). Washington, D.C.: Library of Congress.

Anon. (1931). Versammlungsberichte. Zeitschrift fuer angwandte Chemie, 44: 875-78.

Anon. (1935). Ergaenzungen und Verbesserungen zu dem Artikel von Dipl. Ing. J. P. C. van Asperen ueber moderne photgraphische Reproduktionsverfahren. I. I. D. Communicationes, 2, Fasc. 2: 16-19.

Anon. (1945). A machine that thinks. Time 46:93-94.

Anon. (1949). The light he leaves behind. Think April 1949: 5-6, 30-31.

Anon. (1957). Professor Dr. Goldberg 75 Jahre. Zeitschrift fuer wissenschaftliche Photographie, 52: 105-106.

Bagg, T. C., & Stevens, M. E. (1961). Information Selection Systems Retrieving Replica Copies: A state-of-the-art report. National Bureau of Standards Technical note 157. Washington, D.C.: Government Printing Office.

Bashe, C. J. et al. (1986). IBM’s early computers. Cambridge, Mass.: MIT Press.

Bello, F. (1960). How to cope with information. Fortune (September 1960): 162-67, 180, 182, 187, 189, 192.

Berkeley, E. C. (1949). Giant Brains: or, Machines That Think. New York: Wiley.

Berthold, A. (1938). Selected biography on photographic methods of documentary reproduction. Journal of Documentary Reproduction, 1: 87-123.

Browne, T., & Partnow, E. (1983). Macmillan Biographical Encyclopedia of Photographic Artists & Innovators. New York: Macmillan.

Bryce, J. W. (1938). Statistical machine. U.S. Patent 2,124,906. July 26, 1938.

Burke, C. (1991). Personal communication.

Bush, V. (1945a). “As we may think.” Atlantic monthly 176: 101-108.

Bush, V. (1945b). As we may think: A top US scientist foresees a possible future world in which man-made machines will start to think. Life 19, no 11: 112-114, 116, 118, 123-124.

Bush, V. (1946). Endless Horizons. Washington, D.C.: Public Affairs Press.

Bush, V. (1967). Science is Not Enough. New York: Morrow.

Bush, V. (1970). Pieces of the Action. New York: Morrow.

Carruthers, R. H. (1938). The place of microfilm in public library reference work. Journal of Documentary Reproduction, 1: 263-268.

Coile, R. C. (1990). Personal communication.

Eder, J. M. (1945). History of Photography. New York: Columbia University Press.

Electronics (1932) 4, no. 1: 35.

Engineering Research Associates, Inc. (1949). Report for the Microfilm Rapid Selector. St. Paul, MN: Engineering Research Associates. (PB 97 313 often misscited as 97 535).

Fairthorne, R. A. (1958). Automatic retrieval of recorded information. Computer Journal, 1: 36-41.

Fairthorne, R. A. (1961). Towards Information Retrieval. London: Butterworths.

Farkas-Conn, I. (1990). From Documentation to Information Science. New York: Greenwood.

Goldberg, E. (1906). Beitraege zur kinetik photochemischer Reaktionen: Inaugural-Dissertation … Universitaet Leipzig. Leipzig: Barth.

Goldberg, E. (1922). Der Aufbau des photographischen Bildes. Halle: Knapp. 2nd ed., 1925.

Goldberg, E. (1926). A new process of micro-photography. British Journal of Photography, 73: 462-465.

Goldberg, E. (1931). Statistical Machine. U.S. patent 1,838,389. Dec. 29, 1931.

Goldberg, E. (1932a). Die Grundlagen des Tonfilms. In International Congress of Photography. 8th, Dresden, 1931. Bericht ueber den VIII. internationalen Kongress fuer wissenschaftliche und angewandte Photographie. Herausg. von J. Eggert und A. v. Biehler. (pp. 213-214). Leipzig: Barth, 1932.

Goldberg, E. (1932b). Methods of photographic registration. British Journal of Photography, 79: 533-534.

Goldberg, E. (1932c). Das Registrierproblem in der Photographie. In International Congress of Photography. 8th, Dresden, 1931. Bericht ueber den VIII. internationalen Kongress fuer wissenschaftliche und angewandte Photographie. Herausg. von J. Eggert und A. v. Biehler. (pp. 317-320). Leipzig: Barth, 1932.

Goldberg, H. (1990). Personal communication.

Goldberg, N. (1969). The other Goldberg: A visit with Zeiss Ikon’s practical prodigy. Popular Photography, 65, no. 5 (November 1969): 88-89, 154.

Goldschmidt, R. B., & Otlet, P. (1925). La conservation et la diffusion de la pensée: Le livre microphotique. (I.I.B. publication, 144). Brussels: Institut International de Bibliographie, 1925. English translation in Otlet, P. (1990). International organization and dissemination of knowledge: Selected essays. Transl. and ed. by W. B. Rayward. (204-210). Amsterdam: Elsevier.

Gould, M. E. (1941). Identifying Means. U.S. patent 2,231,186. February 11, 1941.

Gubas, L. (1985a). Emmanuel Goldberg. Zeiss Historica, 7: .

Gubas, L. (1985b). Who invented the Contax? Zeiss Historica, 7: .

Habermann, A., Klemmt, R., & Siefkes, F. (1985). Lexikon deutscher wissenschaftlicher Bibliothekare 1925-1980. Zeitschrift fuer Bibliothekswesen und Bibliographie Sonderheft 42. Frankfurt: Klostermann.

Hawkins, R. R. (1960). Production of micro-forms. State of the library art, ed. by R. Shaw, v. 5, part 1. New Brunswick, NJ: Graduate School of Library Service, Rutgers–The State University.

Hoover, J. E. (1946). The enemy’s masterpiece of espionage. Reader’s Digest 48: 1-6.

International Biographical Dictionary of Central European Emigrés, 1933-1945. (1983). Munich: Saur.

Internationale Bibliographie der Zeitschriftenliteratur. (1932). Abt. A, v. 70. (“Dietrich”)

International Federation for Documentation. (1964). Manuel practique de reproduction documentaire et de sélection. FID Publ. 353. Paris: Gauthiers-Villars.

J. C. Poggendorff’s biographisch-literarisches Handwörterbuch. (1937). Berlin: Verlag Chemie. VI, ii: 916; Also (1970) VIIb: Teil 3: 1685.

Johnson, W. E. (1932). “Protection and profits through photography.” Bankers Magazine, 125: 537-540.

Kaprelian, E. K. (1971). In Memoriam: Emmanuel Goldberg, 1881-1970. Photographic Science and Engineering, 15: 3.

Keegstra, H. (1933). Die Photographie in der Gemeinde-Giroverwaltung. In: International Institute for Documentation. XIIe Conférence. Rapports. (pp. 130-134). (I.I.D. Publ. 172a). Brussels: I.I.D.

Lilley, D. B., & Rice, R. W. (1989). A history of Information Science 1945-1985. San Diego, CA: Academic Press.

Loosjes, T. P. (1967). On Documentation of Scientific Literature. London: Butterworths.

Maitland, C. E. A. (1931). Die photographische Gespraechszahlerablesung und die optisch-mechanische Auswertung der Zaehlerstaende. Zeitschrift fuer Fernmeldetechnik, Werk- und Geraetebau, 12. Jg, 2. Heft (28 Feb. 1931): 17-20.

Mees, C. E. K. (1966). The Theory of the Photographic Process. 3rd ed. New York: Macmillan.

Morse, R. S. Rapid Selector-calculator. U.S. Patent 2,295,000. September 8, 1942.

Neumann, S. (1957). Prof. Emanuel Goldberg. Bulletin of the Research Council of Israel. Section C: Technology, 5C, no. 4: iii-v.

Nyce, J. M., & Kahn, P. (1989). “Innovation, pragmaticism, and technological continuity: Vannevar Bush’s Memex.” Journal of the American Society for Information Science, 40: 214-220.

Otlet, P. (1934a). Le livre photomicrographique. [Followed by] Notice sur les brevets Georges Sebille. I.I.D. Communicationes 1, Fasc. 1: 19-23.

Otlet, P. (1934). Traité de documentation. Brussels: Editiones mundaneum. Reprinted Liège, Belgium: Centre de lecture publique de la communauté Française, 1989.

Pike, J. L. & Bagg, T. C. (1962). The Rapid selector and other NBS document retrieval studies. In National Microfilm Association. Proceedings of the Eleventh Annual Meeting, ed. by V. D. Tate. (pp. 213-227). Annapolis, MD: National Microfilm Association.

Rayward, W. B. (1976). The Universe of Information: The Work of Paul Otlet for Documentation and International Organisation. (FID Publ. 520). Moscow: VINITI.

Rayward, W. B. (1986). Otlet, Paul-Marie-Ghislain. In ALA Encyclopedia of library and information services. 2nd ed. (pp. 626-628). Chicago: American Library Association.

Schuermeyer, W. (1933). Die Photographie im Dienste der bibliothekarischen Arbeit. Zentralblatt fuer Bibliothekswesen 50: 580-583.

Schuermeyer, W. (1936). Mitteilungen ueber einige technische Neuerungen und Anwendungsmethoden fotographischer Hilfegeraete fuer das Dokumentarische Arbeiten. I.I.D. Communicationes, 3, Fasc. 1, cols. Schü. 1-10.

Schuermeyer, W., & Loosjes, T. P. (1937). Literatur ueber die Anwendung von photographischen Reproduktionsverfathren in der Dokumentation. I.I.D. Communicationes, 4, Fasc. 3: 23-29.

Schwegmann, G. A. (1940). Microfilming in business and industry. Journal of Documentary Reproduction 3: 147-152.

Sebille, G. (1932). Method and Apparatus for Reading Books and the Like. U.S. Patent 1,889,575. Nov. 29, 1932.

Shaw, R. R. (1949a). The Rapid Selector. Journal of Documentation, 5: 164-171.

Shaw, R. R. (1949b). Machines and the bibliographical problems of the twentieth century. In L. N. Ridenour, et al. Bibliography in an Age of Science (pp. 37-71). Urbana: University of Illinois Press.

Sheppard, S. E. (1932). Resumé of the Proceedings of the Dresden International Photographic Congress. Journal of the Society of the Motion Picture Engineers, 18: 232-41.

Sipley, L. W. (1965). Photography’s Great Inventors. Philadelphia: American Museum of Photography.

Smith, L. C. (1981). “`Memex’ as an image of potentiality in information retrieval research and development. In Oddy, R. N. et al. (Eds.). Information Retrieval Research (pp. 345-69). London: Butterworths.

Stevens, G. W. W. (1968). Microphotography: Photography and Photofabrication at Extreme Resolution. 2nd ed. New York: Wiley.

Stevens, N. D. (1978). Shaw, Ralph Robert (1907-1972). In Dictionary of American Library Biography. (pp. 476-81). Littleton, CO: Libraries Unlimited.

Stewart, J. & Hickey, D. (1960). Reading devices for Micro-Images. New Brunswick, NJ: Graduate School of Library Service, Rutgers — The State University. State of the library art, v. 5, part 2.

Tate, V. D. (1938). The present state of equipment and supplies for microphotography. Journal of Documentary Reproduction 2: 3-62.

Tomasch, E. (1980). The start of an ERA: Engineering Research Associates, Inc., 1946-1955. In N. Metropolis, J. Howlett, & G.-C. Rota (Eds.). A History of Computing in the Twentieth Century (pp. 485-495). New York: Academic Press.

Townsend, L. G. (1938). Method of and Apparatus for the Indexing and Photo-Transcription of Records. U.S. Patent 2,121,061. June 21 1938.

Wer ist’s? (1928). 9. Ausg. Herausg. von H. A. L. Degener. Berlin: Degener.

White, W. (1989). The microdot: Then and now. International Journal of Intelligence and Counterintelligence, 3: 249-269.

White, W. (1990). Subminiature Photography. Boston: Focal Press.

Zeiss Ikon AG. (1937). 75 Jahre Photo- und Kinotechnik; Festschrift herausgegeben anlaesslich der Feier des 75-jaehrigen Bestehens der Zeiss Ikon AG. und ihrer Vorgaengerfirmen 1862 – 1937. [?Dresden: Zeiss Ikon].Zeiss Ikon AG. & Goldberg, E. (1938). Vorrichtung zum Aussuchen statistischer und Buchhalterischer Angaben. [German] Patentschrift 670 190. Dec. 22, 1938.

Original article: http://people.ischool.berkeley.edu/~buckland/goldbush.html