avva: (moose)
[personal profile] avva
Расскажите, как вы научились программировать? В каком возрасте вы написали свою первую серьезную программу, на каком языке и компьютере, что она делала?

В 12 лет мне подарили программируемый калькулятор Электроника МК-52, и я загонял в него готовые программы из "Техники - молодежи" (который мы выписывали) и "Науки и жизни". Но сам писал только тривиальные примеры, и программированием это не считаю. Были умельцы; старший товарищ [livejournal.com profile] luarvique, например, написал в этом калькуляторе программу для решения кубика Рубика, если память не изменяет. Но мне не хватало для таких подвигов знаний и терпения.

В 13 лет - я начал ходить заниматься на настоящих компьютерах (!!!) в местном пединституте, где был компьютерный класс Yamaha MSX1 (по знакомству; там преподавал отец старшего товарища, и я ему безмерно благодарен). Молодое поколение не знает, наверное, что это было. 64KB памяти, восьмибитный микропроцессор Z80, зашитый в ROM интерпретатор Бейсика, который запускался по умолчанию, когда включали компьютер. Один центральный компьютер с цветным экраном (!!!) и дисководом, и дюжина периферийных, с монохромным зеленым монитором и приводом для чтения программ с магнитофонных кассет. Все компьютеры объединены в локальную сеть, и с центрального (который простым смертным не доверяли) можно было запускать программы на периферийных.

Моими первыми настоящими языками были Бейсик и ассемблер Z80. Первыми серьезными программами были простые игрушки, а также программа на Бейсике для вычисления числа пи, которой я гордился; она пользовалась, если не ошибаюсь, формулой Мэчина, про которую я сам нашел и прочитал в математической энциклопедии после того, как вначале попробовал более простую формулу, и убедился, что она очень медленно сходится. Когда я в 15 лет уехал в Израиль, то взял с собой трехдюймовую дискету, на которой было несколько любимых игрушек и исходники этой программы; эта дискета потом потерялась.

На MSX можно было делать довольно мощные игрушки на Бейсике благодаря аппаратной поддержке спрайтов (небольших битмапов, которые записывались отдельно в видеоконтроллер, и потом двигались по экрану атомарными операциями, заслоняя друг друга в определенном порядке). Перерисовывать весь экран несколько раз в секунду не получилось бы, Бейсик не успевал, но спрайты двигать было легко. Когда мне стало не хватать скорости, я начал добавлять куски на ассемблере, вставленные прямо из Бейсика (командой POKE). Потом я освоил операционные системы MSX-DOS (вариант MS-DOS 1.0) и CP/M, которые можно было загрузить из дискеты или кассеты вместо Бейсика. На ассемблере в них можно было писать целые отдельные программы. Довольно скоро в пединституте установили второй класс компьютеров помощнее, MSX2 (128KB памяти!!!). А еще через год, когда мне было 14, такой же класс установили даже в моей школе.

Постепенно я перешел на Турбо Паскаль, но не могу вспомнить, какие программы я на нем писал. А в 15 лет я уехал в Израиль, где про MSX никто ничего не знал. Через несколько месяцев мы купил свой собственный компьютер (!!!), он был на основе Intel 80486DX.

Расскажите о том, с чего вы начали программировать, и какие первые нетривиальные программы писали?

(P.S. у меня была похожая запись в прошлом, но там говорили почти исключительно о компьютерах, а в этой мне захотелось вспомнить именно программы, которые я писал)
Page 1 of 6 << [1] [2] [3] [4] [5] [6] >>

Date: 2013-04-30 10:01 am (UTC)
From: [identity profile] trueblacker.livejournal.com
всё-таки, зашитый в ROM, а не в RAM :-)

И кстати, удивительно, я тоже начинал с MSX и бейсика, потом был турбопаскаль. Никогда б не подумал что у нас столько общего :-)

Date: 2013-04-30 10:02 am (UTC)
From: [identity profile] bolk.livejournal.com
Первый компьютер был Радио-86РК. Его самостоятельно спаял дядя в 1989 и мы с братишкой ходили к нему в гости, очень часто, сначала играть, потом, в том же году, программировать. Сначала я за ночь проштудировал книгу про Бейсик и на следующий день принёс свою первую программу.

Следующим языком стал сразу Ассемблер. Выбора особо не было — машина такая слабая, что на Бейсике ничего и не напишешь. Документации по Ассемблеру не было, поэтому я выучил язык по комментариям к листингам ассемблерных программ в журнале «Радио-86РК».

Потом уже был «Спектрум», три года, а уже после — писюки.

Date: 2013-04-30 10:04 am (UTC)
From: [identity profile] raydac.livejournal.com
это началось в 13 лет с покупки книги Токхейма "Основы цифровой электроники" и прочтения колонки о калькуляторных играх в Технике-Молодежи, родители купили мне МК-61, но на нем почти не программил, а потом УПК с БК-0010Ш, первая коммерческая софтина проданная за три рубля была утилитой которая вырезала из программ для БК-0010 обращения к тайимеру, что позволяло запускать игру "King valley" юзающую таймерную музыку на компах на которых не было таймера, потом увлекса спеком, написал первую свою коммерческую игру на бейсике и бумаге вслепую, ввел у знакомого, все заработало, так что игру продал другому знакомому за 25 рублей.. потом паял ZX-Spectrumы и продавал, а писишку в виде б.у. 486-DX66 8Mb за 715 баксов смог позволить себе только когда служил в армии в 96м, после увольнения из армии в 97м стал работать как коммерческий программер, чем сейчас и живу

Date: 2013-04-30 10:06 am (UTC)
From: [identity profile] breqwas.livejournal.com
Пробовал учиться писать на турбопаскале ешё в школе, но без особых достижений. Первая программа всерьёз - курсовой проект по С на первом курсе института (15 лет в моём случае) - текстовый редактор под Unix с подсветкой синтаксиса С. Это первая и единственная программа на ncurses, которую я написал. :-)

( оказывается, синтаксис С можно вполне правильно подсвечивать, проходя код посимвольно и заглядывая на один символ вперёд, плюс какая-то спецобработка для ключевых слов. варварство жуткое, но работало! )

Date: 2013-04-30 10:09 am (UTC)
ext_668892: (Default)
From: [identity profile] phoienix.livejournal.com
А вот близко очень. Калькулятор, только кажется 61й. Тоже msx, тоже там-же первый опыт asm`a. Ну, бэйсик это ессна. Параллельно спектрум, там тоже z80, но домашний. Потом пошли писишки. Проги делал чисто для забавы. Игрушки писал, шалости по сети. Потом перестал. Теперь могу иногда в коде покопаться гденить, ну, just for lulz.

Забавно это всё ))

Date: 2013-04-30 10:10 am (UTC)
From: [identity profile] delimiter.livejournal.com
Лет в 13 - компьютер HP-85b, программируемый калькулятор HP-41
Через пару лет Электроника ДЗ-28, Искра-226, СМ-4.
Программы... Помню, на HP-85b писал программу для оптимизации укладки ящиков на поддоны для транспортировки. Потом её совершенствовал и портировал на Искру и СМку.
Впрочем, первое что написал для "Искры" - была "змейка", она же "питон". :-)

Date: 2013-04-30 10:13 am (UTC)
From: [identity profile] auto194419.livejournal.com
я тоже сначала пробовал что-то делать на калькуляторе, но уже не понмю, на каком именно. а потом купил себе Sinclair Spectrum ZX-80. было это в 1985м году, соответсвтенно, мне было 17 лет. напсал на нём игру в 21 очко (по неправильным, как потом выяснилось, правилам). писал на бейсике, потом освоил ассемблер и си. был безмерно горд собой, и в 87м пошёл работать в настоящий ВЦ, на ЕС (IBM VM/SP там стоял). где уже программировал на паскале, писал игру в 66 (вариант schnapsen). а по работе писал на os/370 assembler'е, на котором потом за друга сдавал экзамен (посрамил преподавателя :).
Edited Date: 2013-04-30 10:14 am (UTC)

Date: 2013-04-30 10:14 am (UTC)
From: [identity profile] ospf-ripe.livejournal.com
Моя первая программа (не считая школьных задачек по информатике) - проволочная модель куба, которая вращается. Поскольку в то время дома компьютера не было, писал в школе, на уроках информатики, урывками использую время, которое оставалось от школьных задачек. Написал на Borland Turbo Pascal, который изучил по книжкам Фарнова. Компьютеры в школе были на базе Intel 486 с MS-DOS. Было это когда я учился в старших классах школы, т. е. в середине 90-х годов.

Жаль исходники не сохранились - были записаны на 3.5'' дискетке, которая потерялась.

Date: 2013-04-30 10:15 am (UTC)
From: [identity profile] archaicos.livejournal.com
Same stuff pretty much, except MK-51 and MSX. Not sure which was the first "serious" program, though. Perhaps, a math library (written in asm) or a microcontroller simulator (written in Pascal) as they were among the first big and useful pieces of code (and I did sell a few copies of those). I was around 17 when I wrote that stuff. I still have a bunch of small Pascal apps from 1994. All ZX80 code is gone with the tapes and printouts.

Date: 2013-04-30 10:15 am (UTC)
From: [identity profile] zub4eg.livejournal.com
первый компьютер - Импульс-02, после него был Спектрум с 48к оперативки. Там были первые попытки написать несложные игры. Всё усложнялось тем что записать результат на носитель былоневозможно, пожэтому каждая программа жила максимум до выключения питанияю

Date: 2013-04-30 10:15 am (UTC)
From: [identity profile] tacente.livejournal.com
Я нисколько, разумеется, не программист, и сейчас совсем уже не разбираюсь в вопросе, но в начале-середине 90-х я писал программы на C++ для обработки стихотворных текстов, и основная (с моей точки зрения) часть моей диссертации базируется на результате обсчета корпуса текстов, которые я сначала разметил, а потом прогнал через собственноручно написанные программы. Сейчас этого добра довольно много (и я перестал за ним следить), но тогда таким только начинали заниматься; граалем этого направления мне казалось объединение любого текста с морфологическим словарем Зализняка, который сможет автоматически расставить бесспорные ударения и выделить все спорные места для ручной разметки, после чего метрико-ритмический анализ будет уже секундным делом. Я не знаю, существует ли сейчас удобный интерфейс такого рода; было бы странно, если не, но я совсем не уверен, что это так. (Но это для русских текстов, я размечал сербские и словенские, где есть дополнительные сложности и нет Зализняка.)

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

Date: 2013-04-30 10:16 am (UTC)
From: [identity profile] dzz.livejournal.com
Первый язык программирования номинально - фортран на ЕС-ках, в 13 лет у отца на кафедре. Не-номинально - С, на котором в те же 13 лет была написана текстовая игра а-ля dungeons для PDP-11 c RT11/FB. Где-то через полгода изучил ассемблер PDP. И поехало ;)

Программировать в школьные годы учился в местном политехе, первый действительно серьёзный "доинститутский" проект - интерпретатор LISP для PDP-11, затем - функциональный аналог нортон-коммандера для той же платформы, написанные на ассемблере. В перерывах писал на С, бейсике (с тех пор его не люблю), паскале, ассемблере IBM 360/370, Рапире (да-да, был такой эпизод в летней школе мелких программеров под Новосибом) и вообще всём, что попадалось под руку. А с MSDOS-ом и железом x386 впервые встретился уже после поступления в МИФИ.

Из нетривиальных программ того времени, о которых не стыдно вспомнить, написал на спор систему распознавания образов (букв, нарисованных звёздочками в текстовом файле) на макро-языке редактора MultiEdit :)))) Правда уже в институте, лет в 18.

А вот программируемые калькуляторы как-то прошли мимо.
Edited Date: 2013-04-30 10:21 am (UTC)

Date: 2013-04-30 10:18 am (UTC)
From: [identity profile] ushastyi.livejournal.com
Моя история: http://ushastyi.livejournal.com/28158.html и дальше http://ushastyi.livejournal.com/122033.html
Edited Date: 2013-04-30 10:20 am (UTC)

Date: 2013-04-30 10:19 am (UTC)
From: [identity profile] vinilium.livejournal.com
Первое, что написал - игрушку типа адвенчуры на Фокале для БК-0010. Картинки рисовал на миллимитровке, которые потом покоординатно отрисовывались через всякие PLOT и DRAW (точно сейчас уже не помню) средствами самого же Фокала. Геймплей заключался в выборе ответов из списка предлагаемых.

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

На ТрупоПаскале 5.5 не дописал квест. Перешел на 6.0, но там отказались работать какие-то спрайтовые библиотеки и пришлось забить. Дискета 5 дюймов с ТурбоПаскаль 5.5 и некоторыми исходниками до сих пор со мной.

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

А потом, в 1996 году, жизнь изменилась, и программированием больше не занимался.

Date: 2013-04-30 10:19 am (UTC)
From: [identity profile] taki-net.livejournal.com
Алгол-60, симплекс-метод,
Фортран, обработка статистики.

После универа - всякий САПР и АСУ и доморощенные БД на ПЛ/1.

Потом часть этого САПРа переводил уже на персоналки (на С без плюсов).

Date: 2013-04-30 10:20 am (UTC)
From: [identity profile] janatem.livejournal.com
У меня тоже началось с калькулятора (только почему-то помнится MK-52 с польской записью, у которого была энергонезависимая память). Я много с ним возился, правда не помню, что такого великого на нем запрограммировал. Потом были какие-то пэкашки или бэкашки на радиокружке, на которых я только поигрывал, поскольку творческой работы хватало и с паяльником. Дальше не помню, что за машины, но был бейсик (помню GW-Basic) и позже турбо-паскаль, на которых я писал какие-то игрушки в качестве задания в какой-то заочной школе и просто так, для себя. Первое осмысленное программирование, которое я помню — это рисование фрактала в 11 классе (мне приятель подкинул брошюрку с лекциями по дифгему, где описывались некие фракталы).

Date: 2013-04-30 10:21 am (UTC)
From: [identity profile] vinilium.livejournal.com
Почему невозможно? Я на кассеты все скидывал.

Date: 2013-04-30 10:22 am (UTC)
From: [identity profile] d-ohrenelli.livejournal.com
Начал с бейсика, еще в школе, в 14 лет (компьютеров в школе не было, меня отец к себе в институт водил).
Там была знаменитая БК-0010-Ш.
Первая серьезная программа - тест для студентов музучилища на построение аккордов и интервалов на бейсике для той же БКшки.
Потом мне удалось залезть в вычислительный центр нашего комбината, там я выучил Си и на нем писал аналог Нортон коммандера для ксеникса.
Далее было много разного, в диапазоне от обсчета сжатия трубок в прокатном стане до дискриминантного анализа детской смертности и построения расписания, но это уже во время института, 1 и 2 курс - и в программу обучения естественно не входило.
На дискриминантном анализе я заработал свой первый миллион ( рублей, в 1994) :)

Потом я уехал в Израиль и детские поделки кончились.

Date: 2013-04-30 10:22 am (UTC)
From: [identity profile] yan.livejournal.com
Мои школьные товарищи еще в десятом классе писали куски Рефала (Рефала-2) и придумывали интересные алгоритмы без применения железок, я же стал что-то слегка программировать на первом курсе, на лиспе, хотя не помню, что именно делали эти программы. Они нигде не пригодились.
Первую жизнеспособную программу я написал на Фортране, это была геометрическая библиотека, применявшаяся потом несколько лет для моделирования ЭЛТ (матриц для изготовления ЭЛТ, точнее, методом центрифугирования жидкого стекла).

Date: 2013-04-30 10:24 am (UTC)
From: [identity profile] mad-ghost.livejournal.com
с детства увлекался электроникой, интересовали компьютеры все детство РК-86 в журналах Радио, ходил в библиотеки читать про них, но позволить себе не было никакой возможности, во первых тут такое не распространено было, ну и денег родители не особо давали. В конце концов посчастливилось купить у друзей Компаньон (тот же ZX Spectrum), быстро наигравшись в игрушки, начал изучать как все это работает, нашел книгу по ZX по языку Бейсик и ассемблеру ) я был тогда счастлив, вспоминаю себя, вообще про все на свете забыл, попутно у одного хорошего дядечки отжал книгу про микропроцессоры, мне было очень интересно как это все работает, потом большой ZX-128 с диском, серьезные вещи я тогда не кодил, мне были интересны стыки железа и программы, т.е. как процессор заставляет работать все это, оживляет )
игры тогда не интересовали, а зря как я сейчас думаю (((
ближе к 15-16 годам купили Pentium-166, надыбал книжку по программированию под MS-DOS на ассемблере тоже, делал всякие вещи... покупал на рынке диске "хакерские", тогда же начал изучать Си/Си++, потом Pascal, Delphi, Perl, ASP, PHP, C#, ASP.NET. Сейчас очень понял как мне не хватает знаний по языку JavaScript (вот сам удивляюсь сколько всего сделал, и даже не знал как JavaScipt работает), вот только недавно начал его изучать, сейчас ещё Java тоже изучаю...
по поводу что конкретно писал, даже не помню ((( 80% моего кода это автоматизация производства, работаю в связи, это и обвесы к станциям, и автоматизация рутинных операций и куча всяких утилит по автоматической настройке оборудования. Сейчас 80% это офис, управление задачами, процессами, абонентами, работами, повреждениями, склад и т.п.

Date: 2013-04-30 10:26 am (UTC)
From: [identity profile] benjamin-vn.livejournal.com
Первый некалькулятор: Д3-28, бейсик, на первом курсе (мне было 16 лет). Использовал мало.
Потом записался в кружок и на Искра-226 на бейсике писал какую-то игрушку-стратегию, а потом шахматы.
Одновременно (все это было году в 86-87-м), изучал Фортран IV и гонял учебные проги на ЕС-1033.
После армии в 89-м решил выучить что-то более серьезное, чем бейсик и выучил паскаль. Использовал долгие годы, сначала турбо, потом дельфи. На паскале (и вначале на PC/XT) написал большую программу моделирования спектральных линий.
Потом решил использовать для правильных научных дел правильный язык, и с тех пор пишу только на Фортране, хотя последние пару лет использую еще и питон.

Date: 2013-04-30 10:26 am (UTC)
From: [identity profile] yarmola.livejournal.com
удивительно насколько совпадают первые шаги.
у меня еще был удаленный доступ к СМ-4 и БЭСМ-6 (!).

а потом повезло, в руки попал болгарский Эпл-2 с графортом + доступ к ЕС 1022 (!!) с перфокартами :)

Date: 2013-04-30 10:29 am (UTC)
From: [identity profile] aka-es.livejournal.com
Спектрум, в 1992-93, программа с последней страницы газеты для домохозяек "Волшебная шкатулка", непонятно зачем там была втиснута рубрика "Spectrum-коктейль". Программа рисовала "снежинку" чертя треугольники и поворачивая их в полярных координатах. Я ее тупо списал, вбил в бейсик, и только с пол-года спустя вник что, как и зачем. До этого менял константы и смотрел как меняются рисунки, ну и изучал ксерокопию переписанной от руки(!) книги по бейсику.

Date: 2013-04-30 10:31 am (UTC)
From: [identity profile] javax-slr.livejournal.com
Тоже самое - узнал о программировании из Науки и Жизни, калькуляторы (начинал с Б3-21, потом Мк-54), потом Ямахи MSX-1, MSX-2, на них MSX-Basic и турбо паскаль (помню день, когда понял указатели!), потом на PL/I программа по анализу результатов спорт лото за год - вводил у знакомых на ВЦ

А дальше покатилось, понесло ... (с)

Date: 2013-04-30 10:33 am (UTC)
From: [identity profile] pavelm123.livejournal.com
мой путь очень похож... тоже MK-52, только был еще ПК-01 Львов и Д3-28 в школе, Atari, 286, 386 и уже только потом 486.

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

Это был несомненный успех, определивший дальнейший жизненный путь.
Page 1 of 6 << [1] [2] [3] [4] [5] [6] >>

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 29th, 2025 09:29 pm
Powered by Dreamwidth Studios