• О программе обучения программированию в профильных вузов

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Начну с конца. Математический факультет готовит не инженеров. Инженерами занимаются технические вузы и там учат совершенно по-другому. Однако, практика показывает, что инженеры прекрасно осваивают готовые фреймворки и алгоритмы, но создают новые алгоритмы и языки — хорошо проработанные, а не такие, как JavaScript или PHP, — математики. Поэтому задача математического факультета дать такое образование, которое не ограничит дальнейшую деятельность никак. А инженерной практике, которую освоить после фундаментального образования гораздо проще, у нас учат на старших курсах, в том числе и люди от ИТ-компаний — их много и делают они это понятным причинам с большим энтузиазмом. Я и сама этим 5-й год занимаюсь.

    Деревья-то сами по себе и прочие структуры освоить нетрудно. На втором курсе это прекрасно делают. А многие это все знают еще со школы, т.к. олимпиадное программирование развито неплохо и Школа программиста работает 4-й год исправно.

    Функциональное программирование — не чистая наука. Оно станет повсеместной практикой в ближайшее время и толпы инженеров будут ломать себе мозг, изучая его.

    Почему я считаю, что более правильно начать изучать алгоритмы с функционального языка? Да потому, что основная борьба со студентами 1-го курса всегда шла на почве функций с побочным эффектом, использования глобальных объектов и неправомерного использования указателей. На функциональном языке это продемонстрировать во много раз проще. Там просто очевидно, почему функция должна работать только со своими параметрами и при одних и тех же их значениях давать одинаковый результат (если это, конечно, не Random :-)). Когда все это как следует уляжется в мозгу, дальше можно писать хоть на чем — спецификации будут четкими, программирование по контракту и юнит-тесты — естественными, как дыхание.
  • О программе обучения программированию в профильных вузов

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Спасибо, тоже посмотрю. Но все же это снова императивный стиль, который я и на Паскале неплохо объясняла. Язык не слишком сильно мешал сам по себе.

    Мне кажется, что после SICP возможностей для дальнейшего изучения больше и более правильные вещи вкладываются в мозг с самого начала. А затем уже продолжать можно на чем угодно, и структуры данных на 2-м курсе вполне можно дать — и сейчас деревья на 2-м курсе идут.
  • О программе обучения программированию в профильных вузов

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Обычный Borland Pascal, в нем есть уже Object и все остальное. Еще когда я училась в 94-95 году мы на нем писали реализации АТД, используя ООП. И с тех пор ничего не поменялось :-(

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

    Но вопрос в другом — SICP просто вообще не про ООП. И мне кажется, что в качестве вводного курса он сильно лучше. Понять ООП потом любой раненый заяц сможет, а вот если полоскать мозг с самого начала только ООП, то потом функциональщина воспринимается уже с гораздо большим трудом.
  • О программе обучения программированию в профильных вузов

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Основы программирования, структуры данных, ООП. И все это — на Паскале.

    На мой взгляд просто смена языка не решает.
  • О программе обучения программированию в профильных вузов

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Мотивации программировать на Паскале у них еще меньше. Если правильно рассказать, для чего нужно функциональное программирование и как сейчас вообще развивается индустрия плюс выдать отзывы о курсе от разных известных персон, то мотивацию можно и создать.

    Но, конечно, это все не факт что выйдет.

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

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Ну вот есть у меня ощущение, что для освоения этого курса на Лисп не требуется вообще никаких знаний о программировании. Он тем и прекрасен, что достаточно школьной математики для старта. А потом плавно подводится к крутым вещам, которые разъясняются буквально на пальцах
  • Обучение ИТ-специалистов — онлайн или оффлайн?

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Спасибо, спрошу у местных, что они о нем думают.
  • Обучение ИТ-специалистов — онлайн или оффлайн?

    AnnieOmsk
    @AnnieOmsk Автор вопроса
    Пока не совсем понятно, какие варианты предлагать. Пока просто хочется понять общую тенденцию.