Пользователь
0,0
рейтинг
28 июля 2013 в 14:54

Разработка → Опрос: Как вы научились/учитесь программировать?

Дорогие Хабравчане, думаю, не у меня одного возникал подобный вопрос. Если Вас не устраивает какой либо из предложенных вариантов — пишите в комментариях, исправлюсь.
Как Вы научились программировать?

Проголосовало 8625 человек. Воздержалось 1252 человека.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Андрей @portable
карма
20,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (58)

  • +3
    Образовательные курсы при институте дали хороший старт, а дальше — книги, Google и Stack Overflow.
    • +10
      Как легко определить ваш возраст :)
  • +1
    Учился на энергетика, параллельно брал второе высшее на программиста. Еще до этого второго высшего много чего умел делать сам, но чисто прикладного (системы контроля версий, организация кода, программерские редакторы, администрирование, компьютерные сети), благо отец тоже программист.

    Неосредственно сейчас понимаю, что важную общеинженерную теорию — статистику, матан, численные методы и т.д. — сам бы никогда не освоил. Более того, очень жалею, что вообще не пошел на прикладную математику, сейчас гораздо тяжелее закрывать всякие пробелы в этой области.

    Однозначно по знакомым могу сказать, что лучшие программисты выходят из физмехов, физматов, физтехов и т.д.
  • +4
    Если бы старался в ВУЗе, то был бы второй вариант, а так — третий)
  • +2
    Полностью самоучка. Начинал в конце 80-х на ZX-Spectrum будучи школьником. Позже ВУЗ научил общей работе с источниками информации и стал одним из источников для решаемых задач. Учился на химфаке (на английский не переводить!).
  • +1
    Начинал в кружке в городском дворце творчества юных (Аничков). Там изучал Logo, Pascal, C. Между ними был самостоятельно выученный QBasic и Visual Basic. Потом — самостоятельно плюс кружок по олимпиадному программированию (в школе). В институте — всё самостоятельно (программирование совсем на базовом уровне, думаю перевестись на другую специальность).
    • +1
      Зная, что речь идёт о мат-мехе, могу поделиться своими мыслями:
      Так ли нужно переводиться? Обычно преподаватели не против посещения пар студентами других групп (а там и до потоков недалеко). Я в своё время ходил на пары по программированию к другой группе (помимо собственных занятий), где многое узнал. Не скажу, что в моей было плохо (хотя в некоторых группах с программированием действительно было крайне печально), но мне хотелось больше :-)
      А вообще, я бы посоветовал обратить внимание на CS Center. ИМХО, там можно научиться гораздо большему.
      • 0
        В CS Center я на следующий год уже зачислен.

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

        Ну и диплом/курсовая на тему разработки чего-нибудь на специальности «фундаментальная математика» не должен прокатить.
  • +3
    в школе получил хорошую базу. она меня до сих пор поддерживает…
  • +2
    В школе у меня были огромные проблемы с точными науками, которые я так и не решил. После школы попробовал поступить на философский факультет в государственный ВУЗ и не прошел. По этому, окончив полиграфическое училище и поработав после него дизайнером в журнале, поступил в техникум на программиста. Вот тут то до меня окончательно дошло, что хрена с два меня кто-то сделает программистом. Взялся за самообразование и таки стал им)
  • 0
    в техникуме на 1 курсе была информатика и программирование на TP7.0… учили скверно не объясняя сути, купил книгу для самостоятельного изучения тут и понесло. До этого были попытки программирования на basic на БК 0010, но не пошло тогда.
  • 0
    В колледж пошел учиться на программиста, два года прогулял, а на третий начались интересности типа С++ и C#, тогда я и втянулся, толчок дал колледж, а дальше уже учился сам.
  • 0
    Учился в универе на экономическом факультете. Как-то раз увидел объявление про набор команды для создания сайта университета. Я тогда имел дело только с html, но откликнулся на объявление. Так начался мой путь программиста…
  • +7
    Ой, хорошо помню своё начало. В школе я попал в математический класс, у нас был факультативный урок информатики, там были повзаимствованные у пед. ВУЗа ямахи.
    image
    На уроках нам никто ничего не рассказывал, так как в понимании детей компьютер должен быть с мышкой и «цветным». Учительница давала маленькие кусочки кода на BASIC-е, которые мы набирали 30 минут и потом 5-10 минут любовались. На втором уроке дали нарисовать круг, квадрат и линии. Шутки ради учитель дала домашнее задание, нужно было че-то нарисовать. Мне стало очень интересно сделать что-то свое и весь вечер дома я писал код. Взял листик в клеточку, расписал координаты и высчитывал клеточки(координаты). В итоге программа занимала 1.5 двойных листа тетради и набрать за урок я не успел(вспомните себя первый раз за клавиатурой). К счастью это был последний урок и мне разрешили остаться после звонка и допечатать. Как же я был рад, когда всё срендерилось и всё было именно ТАК как я ожидал…
    После этого обратился с вопросом к учительнице «И это вот так как-то и игры пишут?». Она показала на «более новом десктопе» пример исходника игры «морской бой» написанной 11-классником на Pascal-е и тут я загорелся!
    К сожалению учитель ушла из нашей школы куда-то, где платили больше, на её смену пришла женщина далекая от всего этого и очень манерная, спросить не было возможности у кого-то, интернет был очень дорогой и не доступный для меня…
    Второе дыхание открылось на 1м курсе колледжа(10 класс школы). Мы начинали учить Pascal(да-да, это та штука, на которой можно сделать «морской бой»). Появилась страсть… Быстро перепрыгнул на Delphi, потом C, C++. Вот только в какой момент я начал писать на С и как перепрыгнул вспомнить не могу :)
  • +2
    Заинтересовался, не поверите, в детском саду. Нам давали поиграть в какие-то простецкие развивающие игры, типа раскрась витраж или что-то в этом роде. Потом в районе первого класса родители купили мне аналог Спектрума (Вектор-06Ц2) и все заверте… Местный диалект бэйсика, простые программки, попытки написать свою игру и т.д. Еще доводилось позалипать у друзей, у которых уже были IBM PC, 386-е, 486-е. Потом уже в классе 10-м наконец-то PC появился и у меня. А там qbasic, visual basic и т.д. Институт практически силой заставил освоить x86 ассемблер, за что большая благодарность. Ну а дальше самообразование, Pascal, Delphi (который терпеть не могу), PHP, Perl, C++ и т.д.
  • 0
    Результаты изумляют! Ладно, наше поколение — в наше время программеров не готовили вообще. Но сейчас, вроде, полно ВУЗов, где учат этому — и поди ж ты!
    • +6
      Учат то учат, но кто ж учится. А упустив в свое время начинают тоже самое учить самостоятельно.
      • +4
        Учат?! Везде по-разному.

        Я хорошо запомнил свою первую курсовую, где надо было написать программу для тестирования учащихся. На дельфи. Программа работала, всё ок. Но с точки зрения качества кода там был полностью похерен принцип DRY, например. Но препод, который принимал у меня работу (совершенно неглупый мужик, кстати), даже не обратил внимания на огромные куски повторяющегося кода. При этом я получил пятак.

        ООП на втором курсе мы неплохо изучили в теории, но практики у нас толком не было.

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

        Вся работа строилась или на беспристрастных и требовательных учителях старой школы, или на собственном энтузиазме в противовес похуизму молодых «кандидатов тех. наук».

        Очень верно подметил darkbyte:
        «Главное, чему учат в школе — самому находить ответы на вопросы. Главное, чему учат в вузе — отвечать на вопросы, ответа на которые не знаешь. Одного понять не могу, действительно ли на это требовалось тратить столько времени?»
        • 0
          Думаю будь специальность чисто программерской — учили б лучше. Хотя, как знать…
          … на собственном энтузиазме в противовес похуизму молодых «кандидатов тех. наук».
          Помню был у нас один молодой аспирант — как только пришел работать, то рвался из всех сил, чтоб знания какие то донести и нас дураками не оставить. Но поглядев как работают остальные, пыл свой поостудил и через год — полтора перестал выделяться из серой массы похеристов.
    • +1
      Учат достаточно посредственно, ориентируясь на минимальные умения людей. А там половина — случайных людей. Освоил некие азы программирования классе в 6, на паскале. Потом вышел в C. А прийдя в университет увидел, как на доске рисуют интерфейсы MS VS и дают описание элементов в VB. Хвала небесам, что хоть на практике было что-то не по книжке. Но большую часть того, что знаю, узнал сам. В универе единственное, что переключился с C на C++. Ну, по крайней мере, когда я учился несколько лет назад, было так. Сейчас, может быть, и получше ситуация.
      • 0
        Наверное я был из той половины случайных людей, потому что первый опыт программирования у меня как раз и пришелся на первый курс института. И таких у нас было большинство. Правда, специальность не программерская.
  • +1
    Не могу сказать, что после первого курса что-то узнал в институте, тк не ходил вообще на пары по плюсам. Все что надо — узнаю сам, помогая друзьям.
    А начал вообще с того, что нужно было девушке курсач сделать, а потом несколько человек из ее группы попросили помочь, уже за деньги. Так что курс института как минимум на 3 семестра в перед точно знаю.
    На мой взгляд в институте не правильно поставлен процесс обучения программированию. У нас синтаксис объясняют 3 семестра (вместе с классами). А могли бы объяснять алгоритмы, параллельно вникая в синтаксис.
  • +6
    У меня знакомство с компьютерами началось не как у всех. Ко мне подошел один знакомый и предложил «работать в IT». Я сначала подумал что это не для меня, ведь я не разбирался в компьютерах совсем. Но друг сказал что это просто. Мне нужно было всего то ходить раз в день в компьютерный зал и… выводить из строя компьютер(ы). Да, именно ломать систему определенным образом, чтобы мой друг потом мог быстро все восстановить, а не копаться подолгу с переустановками. Так начался наш первый совместный IT бизнес. Я ломал, он чинил, деньги пополам. Кстати, вот уже как несколько лет, он работает в Microsoft.
    • +3
      Сразу вспомнил распространение кривых апдейтов, когда WSUS затянет такой кривой патчик… А ты потом сидишь и гадаешь, почему ms sql2008 не ставится. А причина в обновлении msxml sp1 до msxml sp2, например… (из последнего, с чем столкнулся).
  • 0
    Проголосовал, что самоучка. Но программистом меня пока трудно назвать, учусь :) Книги, видеокурсы, всё помогает. Интересны java, c#, ruby, python. Придумал себе небольшой проект десктопного приложения с бд, реализую неспеша, много вопросов было по дизайну классов, отношениями между ними. Но как правильно говорят, надо просто что-то делать, идеально ничего в первый раз не получиться.
  • 0
    Основы Basic самостоятельно изучал в поздне-школьные годы, иногда их удавалось применить на информатике, потом в ВУЗе были курсы Паскаля, Фортрана, С/С++ по 1-2 семестру, но их изучали поверхностно, только чтобы получить инструмент для решения прикладных задач. Потом полностью самостоятельно осваивал 1С77, 1С8, сейчас экспериментирую с разработкой под Android.
  • 0
    В школе/вузе пришлось выучить синтаксис нескольких языков (из запомнившегося — TurboPascal 3.0 и FORTRAN-77). Но программировать умел с одной стороны до школы (в смысле до 10-го класса, когда информатика началась, в детском саду не программировал :) Начал классе в 5-м), а с другой — до сих пор не умею :( Если функциональное ещё худо-бедно освоил, то логическое вообще тёмный лес…
  • 0
    Аналогично тов. ivakin — самоучусь (Java, C#). Из школы вынесла светлые воспоминания о Корветах, бэйсике и пяти-шести учениках на одну машину. В универе училась на экономическом (хотя изначально хотела на программиста пойти, да испужалась), соответственно, ничего и близкого к ИТ не было, кроме информатики на 1-м курсе. После универа попала в ИТ (тестировщиком), и вот через какое-то время наступил таки момент грехопадения (первых попыток что-то покодить) — и дичайше захотелось еще:) Практические навыки нарабатываются в процессе написания автоматизационных тестов, плюс парочка мелких проектиков, связанных с работой (кривых-косых, но надо же с чего-то начинать). Из теоретического — книги (пока мало) и гугль (пока много).
  • 0
    Всё сам, к сожалению ВУЗ не дал хоть как-то актуальных знаний. Но все же я за ВУЗ, потому что какая-то система в голове появилась в ВУЗе даже не смотря на то, что ВУЗ была далеко не самый профильный в плане программирования и разработки ПО. Если ВУЗ профильный, то, наверное, всё может быть намного интереснее и полезнее.
  • 0
    Конечно, в ВУЗе. За его пределами доступных компьютеров не было.
    • +1
      Я вот долго думал, что имелось в виду под «в школе или в вузе». Решил, что не физическое расположение и не хронологические рамки, а именно в ходе учебного процесса. Ну а так, да, для многих где-то до середины, а то и до конца 90-х компы в учебных заведениях были единственно доступным машинным временем. Но одни его использовали строго в рамках программы, а другие далеко за неё выходили, как по содержанию, так и по времени.
  • +8
    С детства знал, что буду программистом. Именно так записано в моём первом детском дневнике (который я начал вести в 11 лет).
    Подаренную бабушкой книжку «Игры с Чипом» читал и перечитывал, как и любую другую книжку, в которой хоть что-то было про компьютеры.
    «Спектрум» или что-то подобное родители позволить себе не могли, самое «компьютерное», что у меня было в детстве — какой-то китайский клон NES. В начальных классах ходил в местный Дом Пионеров, где стояли «Агаты» и «Корветы», учился бейсику — но как-то быстро мне это наскучило, те компьютеры были жутко неудобными, совсем не такими, какими я их представлял.
    В классе седьмом шла запись на различные курсы в УПК (учебно-производственная практика), там, кроме прочего, была и информатика, куда я и подал заявку. По закону подлости, как раз, когда начали распределять курсы, я то ли заболел, то ли ещё что — и кто-то передвинул мою заявку с популярной информатики на отстойную автомеханику.Это был шок.

    Я нажаловался бате, батя повёл меня за руку в этот самый УПК, нашёл преподавателя курсов информатики — но тот нового ученика брать не стал, мол и так эти курсы самые популярные, народу уже больше положенного. В автомеханики я ни в какую идти не хотел; тогда батя сделал одну из немногих вещей, за которые я ему по сей день благодарен: нашёл директрису этого УПК, наорал на неё, велел найти мою оригинальную заявку… Нет, на информатику меня не впихнули (мест уже действительно не было) — меня вообще освободили от учебной практики! Весь учебный год у меня был один свободный день в неделю!
    В следующем классе я, естественно, зубами вцепился в информатику. Двухлетний «курс» (именно в кавычках, серьёзно к этому сейчас я относиться не могу) я нагнал за несколько занятий, а к концу года писал контрольные задания половине класса. Дома компьютера всё ещё не было — так что приходя домой, я открывал тетрадку, и писал там код на бейсике, надеясь, что когда-нибудь у меня появится собственная машинка, и тогда я перенесу все свои программки в неё.

    Естественно, в институт я поступил на ВТ и АС, но быстро разочаровался: слишком много непрофильной фигни, непрофессиональные преподаватели (преподаватель программирования не знала разницы между битом и байтом; а информатичка поставила мне трояк за экзамен потому, что имел наглость утверждать, что знаю предмет лучше её), ну и слишком много соблазна не идти на пары =). К счастью, были среди преподавателей и практикующие программисты и системные администраторы, которые учили не по методичке, а по собственному опыту. Не то, чтобы это было прямо великолепно в плане обмена знаниями, но, по крайней мере, в разы полезнее «откройте эксель, скопируйте значение одной ячейки в другую».
    Уверен, что если бы не тратил время на получение диплома, а больше бы посвящал времени самообразованию и практике, то достиг бы куда большего.

    Пользуясь случаем, передаю привет гнойной шараге под названием кафедра МИИТ ДИТУД (ныне — очередной филиал НИЯУ МИФИ, всё также успешно продающий дипломы в рассрочку).
  • +8
    А у нас как-то была у человека пересдача за то, что в Джаве он конекшн к базе сделал через jdbc а не через odbc & панель управеления windows как учили на лекции :)
  • 0
    Большинство значит начинали с бейсика, потом дельфи, плюсы, джава. Я в свое время пошел совсем другим путем. Сразу Ruby и Ruby on rails, поскольку хотелось делать веб проекты, прочитаны пару книг, сделаны пара проектов для себя, потом коммерческие. Далее php, javascript, lisp и clojure, которые кстати очень многое дали в плане идеологии и понимания сути предмета, чуть чуть C#, остановился в итоге все равно на рельсах и javascript, то есть веб программирование.
  • 0
    Программирую уже много лет и постоянно чему-то учусь. :) Программирование это такая область, в которой прогресс шагает вперед постоянно и за ним надо двигаться. Постоянно выходят какие-то новые клевые плюшки, которые хочется изучить. То стандарт С++ новый выйдет, то на python-е что-то надо будет написать, теперь Obj-C и iOS фреймворки опять таки.
  • 0
    Читал в своё время книжки по ЯП с фонариком под одеялом и на уроках (уроков информатики не было, с трудом добился потом чтобы в качестве одного из выпускных экзаменов по выбору разрешили информатику сдавать) :-)
  • +1
    А я и поныне не умею программировать. Ну, если не считать остаточные знания Паскаля.
    Наверное, стоит научиться.
  • 0
    В школе с интересом изучал бейсик и паскаль.
    Хотел поступить на программистов, но не прошел по конкурсу — слишком много было медалистов на место.
    В итоге, пошел на обычного инженера и с программированием не срослось.
    Хотя тягу к этому ощущаю довольно часто.
  • 0
    Кружок программирования в Аничковом дворце.
    Потом немного преподавал там же.
  • 0
    Как это опрос точно говорит о качестве подготовки программистов в нашей Стране.
  • +5
    Детский сад
    Любимая черепашка ниндзя — Донателло

    Начальная школа
    книга Лукьяненко «Лабиринт отражений» и странный компьютерный кружок в местом центре детского творчества.

    Средняя школа
    свой Intel Celeron 300MHz, 128 Mb ОЗУ, 6Gb жёсткий диск и дюк нукем 3D
    первый линукс, журналы, новая школа, где преподают Visual Basic, районные конкурсы

    Старшая школа
    методички по олимпиадному программированию, php (дань моде), Си (50% скидка на курсы за какой-то конкурс)
    первые друзья: один — сисадмин, второй — упоротый программист на asm, C++, шейдерах и фанат демосцены
    первые деньги за сайты, бизнес приложения

    Абитуриент
    Не взяли в ВУЗ по олимпиаде: преподаватель, которая проверяла заочный тур, не понимала си, хотя он был заявлен как один из возможных вариантов сдачи. В очный тур прошли те, кто решил 1,5 задачи. Мои 3 из 3х не устроили… поступал в общем порядке, два друга прошли.

    Студент
    На первом курсе ребята постарше организовали клуб Computer Science, каждую пятницу мы там зависали и общались, делали доклады, приглашали разных крутых чуваков. На следующий год, клуб загнулся.

    На втором курсе студенческая лаборатория ItLab, летние и зимние школы. Куча чуваков, которые давали правильные советы.

    На третьем курсе… не важно, после него я отправился на стажировку в Intel, а потом в армию

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

    По теме: вроде бы сам учил всё, но без того, что давали в ВУЗе и что подсказывали более опытные на тот момент ребята — всё было бы печальнее.
  • +1
    В ВУЗе дали понять где и как можно программировать.
    Дали азы обычного программирования и ООП.
    Теперь, учусь сам, накачал кучу книг, читаю(интернет бывает раз в неделю и гугл уже не первоисточник знаний), обожаю тесты скорости и производительности кодов.
    Бывает даже удивляет, что 50 строк кривого кода работают быстрее чем 10 строк аккуратного.(оставляю кривой ибо быстрее)
  • +1
    Полностью сам.
    В ВУЗе знаний по профессии не получил, но свой кругозор расширил.

    С другой стороны есть более эффективные средства для расширения кругозора (курсы) и, если бы была возможность выбирать снова, из ВУЗа бы после 2 курса отчислился.
  • 0
    В Колледже получил базовые знания. Реальная прокачка началась в девелоперской компании куда мне посчастливилось устроиться.
    Но сейчас у меня складывается мнение что по настоящему я стал разбираться в программировании после того как полностью сменил сферу деятельности и мне пришлось перестраивать сознание под новые инструменты и методы среды разработки. Вот тут я уже абстрагировался от конкретных инструментов. И более глубоко проникся идеей ООП. Как оказалось до этого я не полностью понимал эту концепцию. Но все ещё не считаю себя супер пупер гуру, всегда есть куда расти )
  • 0
    Началось все с кружка в школе, где учили делать простенькие игры на macromedia flash 5. В 6 версии выпилили работу с диском и пришлось разбираться с php, чтобы приделать сохранения :) Тогда же пытался разбираться с C/C++, но основательно руки до этого дошли только в университете.
  • +2
    Самый простой способ учиться писать хороший код — это писать много-много плохого. Только обязательно плохого, хороший код для прогресса бесполезен. Надо чтобы постоянно над головой висел знак вопроса: почему то что я делаю — плохо? Почему в тринадцатом году на двухядерном планшете тормозит то, что двадать лет назад тормозило на десктопе 80286? Почему алгоритм, который на Проджект Эйлере какой-то умник написал однострочником на джее, занимает полторы тысячи строк на джаве? Почему модуль, написанный три года назад, проще переписать, чем покрыть тестами и документацией?

    Если эти вопросы будут зарождаться, найдутся обязательно и книжки с ответами, и люди с подсказками. Ответов очень много, двадцать первый же век на дворе. Лишь бы вопросы были. А для зарождения вопросов нужен плохой код, тонны его.

    Остальное, в общем-то, вторично. ВУЗ — хорошо, потому что в ВУЗе можно писать много и плохо. Работа — еще лучше, потому что на работе писать много и плохо не просто можно, но и нужно. Все хорошо.
    • +1
      Но нужны обязательно какие-то индикаторы того, что код плохой. Если приемка кода проходит по принципу работает/не работает, а качество никто и никак не оценивает.
      • +1
        Определить, плохой код или нет, очень просто. Код плох всегда. Дело только во внутреннем восприятии.

        А «чем имеено плох мой код?» — тоже отличный вопрос. Если ответ на него не очевиден, можно найти его гуглом: «хороший код моей задачи» или «стандарты на хороший код моей задачи». По ознакомлению появятся более конкретные вопросы: «чем плох пятиэтажный лист-компрехеншн», например. Почему опасны привычнейшие вещи «continue» и «break»? «Нахрена нужны assertы?»

        Главное, чтобы вопрос был. Если приемка прошла, а вопрос, хотя бы у самого себя, не появился — на профессиональный рост можно начинать носить цветы.
  • НЛО прилетело и опубликовало эту надпись здесь
  • +1
    Грустная история моих познаний в программировании:

    Мама — ведущий программист. Когда мне было лет 10 (класс 5, если память не изменяет), мне обьясняли как устроены реляционные БД. Пробовал программирова ни Delphi. В общем к 11 классу я писал уже алгоритмы, а не бездумно переписывал код из книжек (как это было в 5м классе). Закончил МИЭМ. Сейчас учу студентов программированию, работаю программистом под Android.

    Порой мне кажется, что все дети в 10 лет хотели стать полицейскими или пожарниками, а я хотел с самого начала быть именно программистом. Меня это пугает.
  • +1
    На мой взгляд, не хватает варианта «А я и сейчас не умею.»
  • +2
    Все началось с бумажки :)

    В конце 90-х, в 6 классе увидел у двоюродного брата бумажку с кодом на бэйсике и заинтересовался. Он мне объяснил основные моменты, дал свою школьную тетрадку с «теорией», где были описаны операторы. С этого началось мое увлечение программированием — завел свою тетрадь и писал в ней программы, которые брат потом смотрел.

    Дальше пошло по нарастающей: первый компьютер, первые олимпиады по информатике, потом курс по языку Pascal, куда отправили меня с другом отправили от нашей школы — преподаватель на этих курсах был из университета и очень хорошо привел в порядок мои разрозненные знания, научил разным алгоритмам, определению их сложности, методу слепой печати. Потом опять олимпиады, конкурс рефератов (у меня был по стеку TCP/IP), изучение VB и написание программ для нашей районной локалки (очень гордился созданием аналога ICQ, клиент-сервер, с доставкой сообщений из оффлайна), параллельно шло изучение HTML/CSS/JS/PHP и первые заработанные на этом деньги.

    Как итог школьной поры — поступление на мат-мех УрГУ (Екатеринбург). В университете же была целая отдельная жизнь — там практически все было связано с IT и там я окончательно сделал выбор в пользу веб-разработки.

    Эх, ностальгия…
  • +1
    а как понять что научился-то?
  • 0
    Варианта «Папа научил азам, дальше сам» нет, к сожалению
  • +1
    Писал уже несколько раз об этом. На клоне спектрума под названием «Бином»(который а действительности был «Ленинградом») учился писать на Бейсике, прочитал книжки, которые шли в комплекте, потом отец еще докупил книжек. Сначала тупо переписывал и немного переделывал программы из книжек, в 8 лет написал первую самостоятельную — «звездное небо», подражая заставке из «Нортон коммандера» на IBM PC(писюки видел у бабушки на работе, в диспетчерской). Писал программы, проигрывающие простенькие мелодии. Отец объяснил нотную грамоту, и мы с ним периодически так развлекались, шарашили прямо из самоучителей игры и из сборников песен :) Помню, расстраивался тогда, что спекки не умеет аккорды, и гитарные мелодии ему не давались. Потом отец спаял кабель для магнитофона и головку мы научились подстраивать, и было много игр. Так что к программированию я вернулся только в старшей школе, когда у меня была замечательная учительница информатики и появился свой Celeron 366/32 Mb RAM/6,4 Gb Hdd/S3 Trio 3d/2x. А потом институт, Linux с башем, Pascal, Delphi, C, 1c :-), SQL, C#. Параллельно нахватался много чего смежного, так что при наличии времени могу разобрать очень многое, от ассемблера до функциональщины :-) Но вообще, считаю себя посредственным программистом.
  • 0
    Говнокодить начал в 2000 году, когда купил себе IBM совместимый 386 ПК. До этого кодил на ZX-Spectrum совместимых на Assemler.
  • +1
    Компьютер у меня был с детства, ажно с двух лет, 386 насколько я помню. Все дество — Master Of Orion, Civilization, Elite, Dune, прочие шедевры от Westwood, Sierra, Microprose… Программировать начал понемногу в 11 классе, так как в тот момент пришла учительница, которя могла хотя бы отличить дефрагментацию диска от форматирования (предыдущие преподаватели на этот вопрос зависали на какое-то время, а потом отвечали «не умничай мне тут»). Дала основы булевой алгебры и чуть-чуть переписывать бейсик с доски. Затем комп. курсы — паскаль, страшные программы с goto и отладочной печатью. Универ, дальнейшее изучение паскаля, изучение дельфи, понимание, что оно мне не пригодиться, переход на ближайший по синтаксису дельфи живой язык — C#, ну а затем много-много C#-кода, с параллельным изучением C/C++/TASM/Ruby/F#/Scala…

    Что могу сказать, если преподаватель по дисциплине «Системное ПО» говорил, что изобретателем юникса был «Линукс Тольвальдс», а все программы показывал на руби (при том, что половина кода не работало, а вторая полвоина — посвященная многопоточному программированию, сваливалась с дедлоком), а софт для кафедры в его исполнении представляет собой небольшой установщик интерпретатора руби на С++, которйы затем с его помощью запускает написанные им в императивном стиле руби-программы.

    Я рад, что поступил в универ, но из программирования он мне не дал практически ничего (кроме желания собственно учить программирование и понимания, что дельфи в наше время — не очень). Впрочем, и того, что он мне в этом плане дал — более чем достаточно, чтобы не жалеть произошедшего.

    А вот что действительно дал универ — это… математика! Отстойность преподавателей по программированию сторицей компенсируется преподавателями по математике! Всего за 3 курса дали очень прочную основу, начиная с матана, линала, дифуров и прочего базиса и заканчивая Твимсом, статдинамикой, теорией управления, системным анализом, исследованием операций, мат.программированием, формальной мат.логикой… В общем все то, что я по своей воле, не из-под палки, никогда бы не смог заставить себя выучить. На мой взгляд это и есть задача вуза — дать желание учить то, что тебе хочется, и заставить выучить то, что не хочется, но крайне необходимо, чтобы чего-то досичь по первому направлению…
  • 0
    Школа 10 класс: Начал изучать Паскаль (правда по большей части самостоятельное изучение). Компа не было, но благодаря учителю получил свободный доступ в компьютерный класс и писал код 4-6 часов в день.

    Школа 11 класс: Учитель ушла, а вместо нее пришло молодое недоразумение, которое заставляло писать программы в тетради. Компа так и не появилось, а в класс заниматься больше не пускали. Начал изучать C++ без практики. Во второй половине появился комп и начал практическое изучение.

    Универ, Примат 1-2 курс: Компа опять не было. Использовал машины друзей, расширял знания C++. Потом отчисление.

    Универ, ИСТ 2-3: Приняли на второй курс, углубление знаний С++, mfc, необходимый минимум VB и Delphi, ASM. Постоянный шабах курсовыми за пиво. Сплошное велосипедостроение, оптимизация алгоритмов и способов реализации, базовые понятия ООП.

    Универ, ИСТ 4-5: Наконец-то опять появился комп. C# и NET 2.0. Небольшие проекты на заказ. Первое знакомство с паттернами. Первые интеграции со сторонним софтом (Word, Excel, AutoCad).

    Работа 1-2 год: Углубление в .NET, изучение LabView на живых проектах, обработка массивов данных на C#. Первое знакомство с системой контроля версий и разбором кода чужих программ. Систематизация обучения, почти полный отказ от велосипедов, изучение фреймворков. Введение строгих правил к оформлению кода. Изучение способов реализации архитектуры приложений.

    Работа 3 год: Первый относительно большой проект. Тесное знакомство с MongoDb, углубление в архитектуру. Первый опыт автоматизированного тестирования. Параллельно основной работе открыли веб-студию, изучение ASP NET MVC, WCF, PHP и нескольких CMS.

    Работа 4-й год-настоящее время: Окончательный уход с первой работы. Углубление теоретических знаний, первые попытки разработки в рамках TDD. Углубление в ORM, IoC, DI и т.д. Изучение Java в качестве второго основного языка. Небольшие вспомогательные проекты.

    И только теперь могу с уверенностью сказать, что достиг уровня Junior'а. Посмотрим, что будет дальше.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.