1939 г., 31 марта между компанией IBM и Гарвардским университетом было заключено соглашение о постройке первого американского программируемого компьютера Mark I, который впоследствии стал символом начала эры современных компьютеров, хотя и был наполовину механическим. Разработан и построен этот компьютер был молодым математиком Говардом Эйкеном (Howard Aiken, 1900—1973) и ещё четырьмя инженерами компании.
Компьютер содержал около 765 тысяч деталей (электромеханических реле, переключателей), соединенных проводами общей длинной более 800 метров. Длина компьютера составляла почти 17 м, а высота — более 2,5 м при весе около 4,5 т. Основные вычислительные модули синхронизировались механически при помощи 15-метрового вала, приводимого в движение электрическим двигателем мощностью в 5 л.с. (4 кВт). Общее же энергопотребление компьютера составляло 160 кВт.
Архитектура Mark I позволяла оперировать 72 числами длиной до 23 разрядов. Они могли складываться или вычитаться в течение одной секунды, деление занимало уже 15,3 секунды, а вычисление логарифмических и тригонометрических функций — более минуты. Кроме того, в составе Mark I имелось несколько отдельных модулей, предназначенных для выполнения операций умножения, подсчета степени числа, значения синуса. Управление компьютером осуществлялось посредством панели, содержащей 420 механических переключателей, не считая нескольких контрольных панелей, позволявших оператору управлять режимами работы машины.
Символом новой эры компьютеров Mark I стал во многом благодаря наличию возможности программирования. Именно на этом компьютере был впервые применен принцип независимо хранимой программы, носителем которой выступала перфолента, содержащая описание последовательности операций. Принцип разделения данных и инструкций получил известность, как Гарвардская архитектура. Кроме того, это была первая полностью автоматическая вычислительная машина, которая не требовала человеческого вмешательства в рабочий процесс.
Справедливости ради, необходимо отметить, что машина Mark I произвела первую операцию лишь через два года после того, как в Германии немецкий изобретатель Конрад Цузе (Konrad Zuse) создал вычислительную машину Z3. Но, тем не менее, с компьютероми Mark I и последовавшим за ним Mark II ассоциируются и многие другие знаковые, а порой и забавные события. Так, например, компьютерный термин "баг" (bug — жучок), обозначающий ошибку или сбой в программе, и соответствующий процесс их удаления "debugging" (отладка) имел в те времена буквальное значение. В процессе своей работы вычислительные машины Mark I и Mark II достаточно сильно нагревались и, соответственно, некоторые узлы испускали неяркое свечение. Свет и тепло привлекали многочисленных мотыльков и мелких бабочек, которые, забираясь внутрь компьютеров, зачастую вызывали короткое замыкание электрических схем.