Как я не научился писать программы, часть 1

Мой отец, который работает инженером-испытателем в индустрии оборудования (жесткие диски, сетевое оборудование), долгое время выступал за то, чтобы я научился писать программное обеспечение. Еще в 1985 году (в то время ему было пять или шесть лет) он подарил мне книгу «Как создавать компьютерные игры», которая, как он надеялся, заинтересует меня в изучении написания программного обеспечения. К сожалению, я не могу вспомнить его название… что, вероятно, связано с тем фактом, что я сомневаюсь, что когда-либо тратил на его листание больше часа.

Однажды он вытащил дискету из задней части книги, вставил ее в компьютер, замкнул переключатель блокировки дисковода гибких дисков (как эти вещи назывались?), Открыл текстовый редактор и показал мне код одного из них. игр. Я отчетливо помню огромную кляксу белого текста на синем фоне экрана. Я посмотрел код в книге. Да, это были одни и те же символы, расположенные в одинаковом порядке и на бумаге, и на экране.

Он объяснил мне, что эти инструкции, если они будут выполнены, позволят мне сыграть в игру. Я помню, как подумал про себя: «… но кто-то уже написал эту игру на компьютере, разве это не пустая трата времени, чтобы написать все заново?» Я уверен, что мы обсуждали это, и он, вероятно, объяснил, что я могу внести некоторые изменения в игру, которые будут моей собственностью, но зачем мне это делать?

Сама идея считывать код со страниц книги и дословно набирать их на компьютере казалась наименее эффективным способом использования моего времени.

Не поймите меня неправильно, я очень любил возиться с компьютерами (и до сих пор люблю). Видеоигры, настройка моей цветовой схемы подсказок DOS [1] и обучение друзей и семьи тому, как пользоваться их первыми домашними компьютерами [2], были одним из моих любимых занятий в помещении. В остальном я бы предпочел проводить время на улице, продолжая карьеру профессионального бейсболиста.

В конце концов, «Сан-Франциско Джайентс» нужно было, чтобы я был лучшим игроком на их драфте через 15 лет.

Это отсутствие интереса продолжалось годами. В последующие годы мой отец предпринял бесчисленные попытки заинтересовать меня кодированием - и, помимо нескольких пакетных сценариев DOS, я так и не научился программировать.

Сказав это, я очень ценю его усилия. Мне очень повезло, что у меня был кто-то, кто видел, что этот набор навыков будет огромным, и пытался помочь мне опередить кривую. В то время никто из нас не понимал, что такой подход к обучению чему-либо не согласуется с тем, как я учусь лучше всего.

Следование примерам в книге не помогло и до сих пор не работает для меня. Похоже, моему мозгу не нравится такой подход; Я быстро теряю интерес.

Если бы у Шер была способность [3], я бы попросил ее поговорить с моим отцом 25–30 лет назад и сформулировать проблемы, которые мы могли бы решить вместе, вместо того, чтобы следовать примерам из книг.

Например, когда я играл в бейсбол младшей лиги - меня увлекала статистика. Мой отец помогал нам отслеживать статистику каждого игрока в течение сезона. Для этого у нас было несколько таблиц Лотоса 1–2–3. Если бы он поставил задачу, «было бы неплохо, если бы после каждой игры компьютер просто просил нас ответить на несколько вопросов о каждом игроке, и он автоматически обновлял и распечатывал статистику на бумаге для поделиться с командой на следующей тренировке? »

Я был бы рад, чтобы это произошло.

Конечно, это потребовало бы от меня изучения некоторых основных принципов программного обеспечения по пути, но моей мотивацией было бы решение этой проблемы. Попутно научиться программировать было бы незначительной деталью (на мой взгляд). Распечатать эту статистику было бы призом.

Мы могли бы развить эту идею с годами. Как я был по сравнению с предыдущими годами? Что мне лучше было против подающих с левым или правым флангом? и Т. Д.

Я уверен, что есть много других проблем, которые мы могли бы решить вместе с помощью кода, который привлек бы мое внимание. Честно говоря, вполне возможно, что мой отец был из тех, кто учился на примерах [4]. Мне все еще трудно изучать что-то новое на примерах, и я никогда не читал целую книгу по программированию. Мне нужны реальные, осязаемые проблемы, которые нужно решить для себя (или клиентов), а затем я выхожу и выясняю, как это сделать.

Почти тридцать лет спустя концепция программирования без решения личных или деловых проблем все еще меня утомляет.

Здесь - вы можете спросить… Так как же я, в конце концов, построил карьеру в области разработки программного обеспечения и теперь управляю агентством дизайнеров и разработчиков?

Отличный вопрос! …продолжение следует.

p.s. Папа, если ты это читаешь ... твои усилия не были потрачены на меня полностью.

[1] Одно из моих первых увлечений по-прежнему остается страстью. Http://ohmyz.sh/

[2] Рассказ на другой день.

[3] https://www.youtube.com/watch?v=BsKbwR7WXN4

[4] Я спрошу его об этом в следующий раз, когда мы разделим бутылку виски.