[personal profile] alik_ntu
Я - программист, причем хотел им стать еще с детства. Но в моем детстве далеко не сразу появился вожделенный ПК, поэтому мой путь был извилист. Попробую напрячь свою память и приглашаю в путешествие по ключевым этапам.

Это второй пост серии, начало: Путь программиста - 1: МК-61.

Этап 2. Родители подарили мне книгу С.Ватт М.Мангада "Бейсик для детей" (перевод с испанского, издательство Киев "Радянська школа" 1990) [PDF ~10Mb]



В предисловии предлагалось, чтобы взрослые помогали ребенку в освоении материала (и по тексту присутствовали специальные "замечания для взрослых"), плюс, конечно, все программы надо было запускать на компьютере. Но, так уж сложилось, что книгу я штудировал самостоятельно и, поскольку доступа к компьютеру на тот момент у меня никакого не было, освоение Бейсика могло быть только теоретическое, в собственном воображении.

В книге фигурирует персонаж-помощник Артуро (помните? это перевод с испанского - поэтому не какой-нибудь Коля, а Артуро! кстати, именно он изображен на обложке), вместе с которым читатель знакомится с материалом.

И первым же делом излагается понятие алгоритма на примере игры в прятки:
 1. Я считаю до десяти
 2. Ты прячешься
 3. Я тебя ищу
 4. Если я тебя найду, то я выиграл
 5. Если я тебя не найду, то выиграл ты

Надо отметить, что это очень правильный подход:
 -- игру в прятки знают все - идеальный пример (просто и понятно без длительных пояснений: почему до десяти, как это "прятаться", что значит "искать");
 -- передается суть, идея, без акцентирования внимания на терминах (слово "алгоритм" вообще не упоминается, просто предлагают научить компьютер играть, рассказать ему правила, но точно, исчерпывающе и в правильном порядке);
 -- начинают с основ, объяснения общего подхода к составлению программ, а не каких-то тонкостей синтаксиса или механистического перечисления команд-операторов.

Таким образом первую программу ребенок видит, понимает и может составить еще даже до того, как узнает первый оператор непосредственно языка программирования Бейсик, и, что было идеально для меня, без необходимости использовать компьютер. (А то мало ли, если бы книга начиналась с "запустите редактор Turbo Basic, нажмите File - New", то вдруг я бы расстроился и сразу ее закрыл, и в итоге так и не стал бы программистом...)

Дальше предлагается чуть изменить программу - добавить в игру правило, что нельзя прятаться внутри дома ("Если ты спрячешься в доме, то игра прекращается"). Причем желательно поставить его между строками 2 и 3 (чтобы не искать зря, если кто-то спрятался в запрещенном месте), и тут нас обучают хитрому трюку - нумерации строк 10-20-30 вместо 1-2-3, чтобы при необходимости было легко вставить промежуточную строку (5-15-25) без перенумерации уже написанных команд.

И вот только затем идет первый оператор Бейсика - классический Hello, world!, куда ж без него:
10 PRINT "АРТУРО"

Одно из примечаний для взрослых гласило: "Ребенок должен выполнить на компьютере все программы, представленные в книге, даже если они кажутся очень простыми."
О, как же я мечтал о такой возможности... но приходилось довольствоваться листочком бумаги и ручкой (позже встречал шутку: чем отличается советский программист от иностранного - советский пишет программы на бумаге).
Кажется некоторые программы я адаптировал и запускал на МК-61, но это конечно же было "не то".

И вот однажды удалось упросить одноклассника тайно взять у его родителей навороченный калькулятор, в котором была встроенная поддержка вожделенного Бейсика. Кажется это была Электроника МК-85 [YouTube]
В нем было целых 2 килобайта оперативной памяти для введения программ!

Какой же это был экстаз для меня - наконец-то реально запустить программу! Как сейчас помню - ввел программу где компьютер загадывает число от 1 до 10, а ты пытаешься угадать:
10 LET A=0
20 LET R=INT(RND(X)*10)+1
30 PRINT "ЗАГАДЫВАЮ ЧИСЛО ОТ 1 до 10, ПОПЫТАЙСЯ ОТГАДАТЬ ЕГО"
40 PRINT "ДАЙ СВОЕ ЧИСЛО"
50 INPUT X
55 PRINT X
60 LET A=A+1
70 IF X<R THEN 200
80 IF X=R THEN 300
100 PRINT "ОШИБСЯ. МОЕ ЧИСЛО МЕНЬШЕ"
110 GOTO 40
200 PRINT "ОШИБСЯ. МОЕ ЧИСЛО БОЛЬШЕ"
210 GOTO 40
300 PRINT "ТОЧНО! МОЕ ЧИСЛО ";R
310 PRINT "ТЫ ЕГО ОТГАДАЛ ЗА "; A; " ПОПЫТОК"


Конечно довольно примитивная штука, но как же чертовски волшебно было впервые видеть работающую программу. Жаль только, что тот калькулятор мне попал в руки всего один раз и всего на часок (слишком дорогая вещь, одноклассник не хотел рисковать, и, кажется, калькулятор был "с работы", так что "удобных случаев" было не так и много)

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

Продожение следует...

Profile

alik_ntu

February 2024

S M T W T F S
    123
45678910
1112131415 1617
18192021222324
2526272829  

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 10th, 2026 06:52 pm
Powered by Dreamwidth Studios