Выпускники американских университетов превосходят выпускников России, Китая и Индии

Автор оригинала: John Timmer
  • Перевод
Каждый месяц мы читаем новости о недостатках и провалах образования в США. Если верить прессе, то начальная школа в Америке не способна научить учеников даже базовым знаниям, знаний даваемых средней школой явно недостаточно для поступления в колледж, ну а школьники, сумевшие все же продержаться до окончания колледжа, оказываются абсолютно беспомощны за его стенами. Но недавно была опубликована весьма интересная статистика, показывающая что по крайней мере в одном конкретном аспекте подобное мнение весьма далеко от истины. Несмотря на известные проблемы американской системы среднего образования, выпускники американских колледжей специализирующихся на computer science оказались прекрасно развитыми и очень конкурентоспособными специалистами по сравнению со своими зарубежными конкурентами.

Исследование проведенное международной командой исследователей сравнивало между собой выпускников колледжей США с выпускниками школ трех крупнейших стран, в которые США аутсорсят разработку программного обеспечения: Китая, Индии и России. Эти три страны славятся своими первоклассными программистами и победителями международных олимпиад, их репутация безупречна, а успешные действия российских и китайский хакеров постоянно отражаются в новостях. К тому же в Китае и Индии существуют крупные внутренние рынки программного обеспечения, обслуживаемые большим количеством местных специалистов. Все эти факторы делают программистов из этих трех стран весьма релевантной точкой отсчета с которой можно сравнивать американских выпускников. При этом немало студентов из этих стран приезжает учиться в Соединенные Штаты.

Проведенное исследование не претендует на всеобъемлющность и, в частности, не сравнивает результаты американцев с результатами выпускников других развитых либерально-демократических стран подобных США. Так что нельзя сказать что полученные в нем результаты можно обобщить в пользу однозначной удачности и тотального доминирования американской системы образования во всем мире. Зато рассмотренные в исследовании страны анализировались очень глубоко и тщательно. В этих трех странах исследователи отобрали в общей сложности 85 различных образовательных учреждений методом случайной выборки среди «элитных» и «простых» ВУЗов занимающихся computer science. С каждым из этих ВУЗов исследователи договорились о проведении добровольного двухчасового экзамена среди учащихся последнего года обучения, специализирующихся на программировании. Экзамен был подготовлен специалистами компании ETS, известной
своим международным тестом GRE
, состоял из 66 вопросов с несколькими вариантами ответа в каждом, и проводился на местном языке. В число вопросов были включены дискретные структуры данных, алгоритмы и оценки их сложности, проблемы хранения и передачи информации, общие задачи на программирование и проектирование программ. Задачи не привязывались к какому-либо конкретному языку программирования и записывались в абстрактном псевдокоде (подобно тому как это делает Дональд Кнут в своем труде «Искусство программирования»). В общей сложности в исследовании приняли участие 6847 американцев, 678 китайцев, 364 индийца и 551 россиянин.

По результатам экзамена результаты американцев оказались гораздо лучше результатов выпускников из других стран. Несмотря на то что при сравнении с заокеанскими сверстниками американские студенты поступают в колледж с заметно худшими знаниями по математике и физике, к моменту окончания колледжа они стабильно набирают значительно лучший балл в тестах. Речь, конечно, идет о сугубо статистических различиях — результаты учеников зависят не только от колледжа, но и от индивидуальных способностей, так что результаты разных выпускников даже одного колледжа могут принципиально отличаться и выдающийся выпускник «плохого» колледжа может быть гораздо лучше плохого выпускника «элитного» ВУЗа. Однако в среднем результат американцев в тесте оказался на 0.76 стандартных отклонений лучше, чем результат россиян, индийцев или китайцев. Этот разрыв оказывается еще больше если разделить выпускников «элитных» и «обычных» ВУЗов и сравнивать их не в одной куче, а по отдельности — элитные ВУЗы России с элитными колледжами США, обычные ВУЗы России — с обычными американскими колледжами. Выпускники «элитных» образовательных учреждений, как и ожидалось, показали в среднем намного лучший результат чем выпускники «обычных» школ и на фоне меньшего разброса оценок у разных учащихся различия между учащимися разных стран стали выражены еще заметнее. Фактически результаты лучших ВУЗов России, Китая и Индии получились примерно такими же как результаты обычных американских колледжей. Элитные американские школы оказались в среднем настолько же лучше элитных российских школ насколько российские элитные ВУЗы в среднем лучше условных «заборостроительных» колледжей. Интересно так же что исследование не выявило статистически значимых различий между результатами выпускников ВУЗов России, Индии и Китая


Рис 1. Средние результаты теста, нормированные к стандартному отклонению, для учащихся разных стран и разных групп ВУЗов

Исследователи постарались учесть и исключить возможные систематические причины подобных различий. К примеру одной из проверенных гипотез стало то что лучшие результаты американских ВУЗов связаны просто с тем что лучшие иностранные студенты приезжают учиться в США тогда как в родной стране остаются лишь ребята похуже. Однако исключение из числа «американских» студентов тех для кого английский не является родным никак не изменило результаты.

Еще одним интересным моментом стал анализ гендерных различий. Во всех странах мальчики показали в среднем заметно лучший результат чем девочки, но найденный разрыв был значительно меньше, чем разрыв между выпускниками иностранных ВУЗов и американцами. В результате американские девушки благодаря лучшему образованию оказались в среднем заметно способнее иностранцев-парней. По всей видимости это свидетельствует о том что наблюдаемые различия в результатах парней и девушек возникают в основном из культурных и образовательных различий в подходах к обучению мальчиков и девочек а не из природных способностей поскольку девушка с хорошим образованием легко выигрывает у парня которого учили не так хорошо. В силу этого тот факт что девушкам-программистам в США в дальнейшем в среднем платят значительно меньше денег чем парням, по всей видимости, не имеет отношения к их реальным способностям.



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

Подводя итог всему сказанному хочется отметить что в США сегодня образование в сфере computer science ежегодно заканчивает 65 тысяч студентов. Это число значительно выросло в последние годы, но остается крайне далеким от показателей Китая (185 тысяч выпускников-программистов ежегодно) и Индии (215 тысяч выпускников). Но хотя отказаться от «импорта» иностранных программистов в обозримой перспективе США не удастся, данное исследование показывает что американские выпускники подготовлены намного лучше своих иностранных конкурентов.

От переводчика: Меня задело это исследование и я решил его перевести на Хабр поскольку мой личный 15-летний опыт в IT, к сожалению, косвенно его подверждает. Разные выпускники конечно имеют разный уровень подготовки и в России ежегодно выпускается по меньшей мере десяток талантов действительно мирового уровня; однако средние результаты выпускников, массовый уровень подготовки программистов в нашей стране, увы, изрядно хромает. И если уходим от сравнения победителей международных олимпиад с выпускником колледжа штата Огайо к сравнению более-менее сравнимых людей, то разница, к сожалению, впечатляет. Скажем я учился в МГУ и я читал исследования учеников MIT-а — и это, увы, совершенно другой уровень. Образование в России — даже не требующее капитальных затрат обучение программированию — следует за общим уровнем развития страны и при общем низком уровне зарплат в отрасли с годами по-моему становится только хуже. Можно ли еще как-то переломить данную тенденцию или детей уже однозначно настала пора отправлять на обучение в Штаты? Предлагаю обсудить это в комментариях.

Оригинальное исследование можно почитать здесь
Поделиться публикацией

Комментарии 637

    +11
    Я знаю многие полезли, вот пример теста www.ets.org/Media/Tests/MFT/pdf/mft_samp_questions_compsci.pdf
      +4
      Спасибо, было интересно, но странно.
      В универ заглядывали лет эдак 20 назад, но тест не показался сложным, не увидели там применения особых университетских знаний (gre же предполагает поступление в магистратуру судя по описанию по ссылке). Объем знаний требуемый — чуть больше школьного курса, он скорее подходит для поступления в универ на специальность с программированием не связанную.
      Это точно пример того теста?
      p.s.: У нас было больше проблемы с пониманием задачи, чем с их решением, может в этом секрет того, что штатовские студенты справлялись лучше чем иностранные?:)
        +8

        Конечно же нет, просто у нас образование и профессия не связанные как правило

          +15
          Кстати, распространённые IQ-тесты на мой взгляд грешат своим… «американизмом» чтоли — там присутствуют, например, задачи «сортировки» букв алфавита. А поскольку в США принято оценки ставить буквами, а не цифрами, то численное ориентирование по алфавиту для них привычнее. Это к вопросу национальных оттенков в задачах.
            0
            IQ, это немного иное, нежели качество обучения. Если человек не справится с сортировкой английского алфавита в тесте на качество обучения, его смело можно вносить в списки необученных.
              0
              Просто системы тестов, да и обучения в целом, должны как-то учитывать местные/национальные особенности. Американцы вон небось в обыкновенных дробях быстрее наших шарят. Ибо у них эта имперская система настолько вплетена в обыденность, что сообразить сходу, что больше — 5/12 или 11/25 — не проблема. Мы как-то всё больше по десятичным дробям. А китайцы по слухам вообще в числах шустрее европейцев, ибо письменность в этом плане образнее. Для нас числа — сама абстрактность, поэтому на мозг ложатся медленнее.

              Ну и так далее. Модный нынче «эмоциональный интеллект» и всё такое. Женский мозг лучше интуичит. Ну и где теперь взять такой универсальный тест, который объективно сравнивал бы мозги, невзирая на половую, лингвистическую, культурную, этническую и прочие разницы?
                0
                Поскольку тут речь идёт конкретно об IT-образовании, можно опираться на более-менее признанные учебные программы. Например, существуют рекомендации ACM, которые можно адаптировать с учётом уровня и направленности конкретного вуза, сохраняя при этом общую структуру. Многие именно так и делают. Поэтому тест может (и, вероятно, должен) быть привязан к такого рода учебной программе — как уже сказано, это не IQ-тест, а профессиональный, как у врача. Мы же хотим от врача сходных навыков, независимо от того, китаец он или американец.
          +7
          Вероятно стоило бы увидеть и текст «на местном языке».
            –1
            Хотел бы я ошибаться, но думаю что текст не был переведен на местный язык, так как по логике это бы поставило испытуемых в неравное положение, так как после перевода тест будет другим…
              0
              Экзамен был подготовлен специалистами компании ETS, известной
              своим международным тестом GRE, состоял из 66 вопросов с несколькими вариантами ответа в каждом, и проводился на местном языке.

              А тогда об чем это?
                +2
                Тест естественно переводился и об этом прямым текстом написано.
                Вопрос только в степени «локализации» вроде вопроса о том заменялся ли синтаксис регулярных выражений на синтаксис более понятный для местных студентов.
                  +1
                  Вопрос еще и в используемых терминах. Не всегда прямой перевод в принципе будет работать, часто бывает что локально уже прижились какие-то свои названия. Показательный пример с хэш таблицами — то, что в английском называется closed hash в русском могут называть открытым хэшем (потому что открытая адрессация). Я лично сталкивался с таким, это не теоретизирование. Но если переводчик не знаком с локальной терминологией, то он переведет с обратным значением. Результат теста в таком случае, как вы понимаете, будет несколько иной.
              –11
              Чушь какая-то, а не тест. С первого задания. Верные утверждения I и II, но в вариантах ответов такого нет.
              A — ошибка
              B — ошибка, так как I утверждение не единственно верное
              C — ошибка
              D — ошибка
              E — ошибка

              Либо задание составлял лопух, либо оно составлено специально чтоб завалить.
                +11
                Там есть правильный ответ. В последнем абзаце вы упустили еще один вариант, кто тут может быть лапухом.
                  –7
                  Они никак не могут быть все истинными одновременно. Варианты только
                  110
                  100
                  101
                    +15
                    Если j = 6, то мы умножали на i=1, 2 и 3. После умножения на 3 сделали i+1 и вышли по условию i==x, следовательно x==4.
                    Так что верны все три утверждения.
                  +12

                  Это тест на внимательность.
                  По-видимому именно внимательность — сильная сторона граждан США.


                  Следите за руками:


                  j ← 1 * 1 // 1
                  i ← 1 + 1 // 2
                  if (i == 4) break;
                  
                  j ← 1 * 2 // 2
                  i ← 2 + 1 // 3
                  if (i == 4) break;
                  
                  j ← 2 * 3 // 6
                  i ← 3 + 1 // 4
                  if (i == 4) break; // Опаньки!
                  +2
                  Неплохой тест для школьной олимпиады где-то. Большая часть вопросов на внимательность и умение выудить из каждого слова криво поставленные начальные условия, а не какую-то прям сообразительность или знания. Другая часть на знание банально формулы, вроде той же сортировки или пинкода, где формула ложится на задачу как по учебнику.

                  Вот только 5 задание совершенно не укладывается в голове. Я либо совсем свихнулся, либо знаки здесь означают совершенно не то, что я привык в регулярках видеть, либо может это вообще не те регулярки. (1+e)(01+0)* — уже первая группа нагенерит сколь угодно единиц подряд.
                    0
                    Там как я понимаю запись из математической теории регулярных выражений. У нас насколько я знаю в образовательной программе не встречается. Знак + там означает дизьюнкцию («или»). Думаю что в российских текстах эту регулярку должны были адаптировать к более привычной нам POSIX-записи
                      +1
                      Да, мне такое не преподавали. В зарубежной литературе встречается частенько, но не думал, что это регулярками называется в математике. Википедия говорит, что совпадение с привычными регулярками не случайно — базируются они как раз на этом математическом аппарате, судя по всему.
                        0

                        Хмм, ну в СПбГУ читают теорию автоматов и рв используя запись как в тесте.

                          0
                          В бауманке на ИУ тоже читали по учебнику А.И. Белоусов, С.Б. Ткачев
                          Дискретная математика
                          , читал сам Белоусов — офигенный товарищ, обожала его лекции.
                        0
                        Да, мне вопрос 5 тоже показался непонятным. Ещё накосячил в 10 и 13 из-за невнимательности. В первом случае проигнорил слово «connected», во втором — «preemptive», из-за чего дал неправильный ответ.
                        0

                        Странно, на ЕГЭ у дочери такие задания были.

                          0
                          А ответы к пробнику есть?
                            +10

                            Ответы только для избранных, сумевших долистать пэдээфку до последней страницы.

                          +36
                          Можно ли еще как-то переломить данную тенденцию

                          Конечно, можно. Достаточно:

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


                          P.S. Хотя очень интересно, что там за задачи в тесте такие были. Вдруг студентов американских вызов всё время обучение натаскивали на решение чего-то подобного. Как у нас в школах «натаскивают» на ЕГЭ...
                          Увидел ссылку выше…
                            –18
                            вместо паскаля
                            сразу ассемблер, чего мелочиться? Перед тем как учить нечто аморфное а-ля питон — стоит все же попробовать что-то более со строгой типизацией. И да… Pascal->Delphi

                            всякую культурологию, политологию и прочую физкультуру
                            и получить на выходе дрыща/слонопотамчика, который не может связать двух слов. Зато супер специалиста в своей узкой специальности, которая загнется еще до окончания обучения. И без диплома бакалавра/специалиста/магистра. Потому как это уже не высшее образование, а «курсы по ...»

                            чтобы привлечь в вузы нормальных специалистов, а не только теоретиков, ни разу в жизни не написавших ни одной серьёзной программы
                            видать мне повезло. 2 раза из двух.

                            больше уделять средств на развитие науки и образования
                            кафедра должна сама искать себе гранты на развитие (НИР) своих сотрудников/студентов. Ибо ждать у моря погоды — много не получишь. Да и обычно сразу работает с некоторым предприятием/НИИ: кафедре — преподаватели с опытом в нужной области, предприятию/НИИ — выпускники с опытом.
                              +13

                              В целом с вами согласен, предложения не вполне продуманные, но вот тут с вами я не согласен


                              и получить на выходе дрыща/слонопотамчика, который не может связать двух слов. Зато супер специалиста в своей узкой специальности, которая загнется еще до окончания обучения. И без диплома бакалавра/специалиста/магистра. Потому как это уже не высшее образование, а «курсы по ...»

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

                                +7
                                связать два слова на тему отличную от специальности.
                                культурология, политология, философия, экология и прочие подобные «ненужные» предметы вводят из-за требования к получению диплома. Ну и для общего развития кругозора.
                                Проблема в том, что государство требует наличие предмета, но не особо предъявляет требования к содержанию. Вот тут и выходит развилка: хороший преподаватель — вынесешь что-то полезное для себя; плохой — зря потерянные часы (ну или выспался).
                                  0
                                  «Чему нас учит семья и школа...» Я полностью согласен: абитуриента мотивирует не получение знаний, а возможность получение диплома и дальнейшего трудоустройства, хоть куда. Радует, что работодатель чаще стал обращать внимание на профиль диплома.
                                  Факультативность части предметов выявит невостребованные, что может испортить статистику и финансирование.
                                  Кстати о финансировании. Мое мнение: ЗП не влияет на качество преподавания, нормальный человек либо работает, либо работает, там где лучше условия. Условия ~= ЗП, Но 2хЗП != 2 х человека. Я предлагал почитать информатику в школе, даже безвозмездно, мне отказали, тк нет педагогического образования и часы своим нужны как приработок.
                                  Учился в 80х. Денег на было, пристраивались работать на кафедры, в лаборатории. Преподавали, влюбленные в профессию, люди. А как иначе, на заводе рабочий получал больше профессора. А сейчас: деньги в зачетку и жди диплома. Да, не все, но такие демотивируют нормальных преподавателей.
                                    0
                                    связать два слова на тему отличную от специальности.

                                    Зачем?


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

                                      +3

                                      «Кто ясно мыслит — ясно излагает». Так что неспособность связать слова происходит от низкого общего уровня. А если студент за время учебы сделал и оформил сам десяток крепких курсовиков — то у него и с изложением будет хорошо.

                                        +1
                                        Именно!

                                        И (а на самом деле даже «или») если он програйндил десяток крепких монографий.

                                        Ну и, как известно, учить надо именно математику (а не уже умершую от икоты культурологию, скажем) по причине приведения ума в порядок. Но это так, скорее в шутку.
                                          +2
                                          Только то что происходит в универе обычно ухудшает возможность излагать.
                                          Особенно курсовые.

                                          Например работа Канэмана за которую он получил нобелевку — 15 страниц+20 страниц датасета.
                                          Работа МакКарти в которой он изобрел Лисп только в одном из подразделов мимоходом вся занимала 34 страницы.

                                          Что есть такого у типичного нашего студента что он 25-50 страниц должен использовать? В 99% случаев ничего. У него есть смысл на две страницы и он просто портит его пока не выйдет 30.
                                            0
                                            У нас на математическом факультете не было требования по количеству страниц. (Беларусь)
                                              0

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

                                          +1

                                          Если ты умеешь работать с текстом по специальности, то и не по специальности получится. Может, не так, как у профессиональных журналистов или филологов, но достаточно.
                                          А так у нас и приходят студенты, которые базы матлогики не знают, зато «разбираются» в экономике и политике. Только и в этом они не сильны, потому что для экономике нужна сильная математика, а они вместо математики учили политологию с плохим преподом (потому что откуда в техническом ВУЗе вдруг будут хорошие политологи?)

                                            +5
                                            Как экономист по специальности скажу что байки про сильную математику в экономике это рак разводимый теми кто хочет большей наукообразности.

                                            Например программу экономической теории для поступления в магистратуру KSE можно выучить по двум книжкам Мэнкью.
                                            Там 1400 страниц в сумме, но входной порог — знания среднего семиклассника.

                                            Есть, конечно, некоторые сферы где бывает тяжелая математика. Но по моему опыту чтения исследований 95% исследований плохие потому что сознательно совершили очевидную глупость и я не видел ни одного которое было бы плохим потому что автор не знал более сложной математики.
                                              +1

                                              Омг, ну из очевидного нужны: статистика, тер.вер, теория игр, лин.ал., мат.ан., методы оптимизации… а это все тянет за собой еще целую охапку дисциплин.
                                              Если это все не требуется в этом вашем KSE, то не понятно, какой там вкладывается смысл в термин “экономист”

                                                +1
                                                тер.вер

                                                На каком уровне? С полноценной теорией меры и прочим Лебегом? А зачем так?


                                                лин.ал.

                                                Именно алгебра? Или матричного анализа на базовом уровне хватит?

                                                  0
                                                  На каком уровне?

                                                  Ну статистическая динамика по идее должна быть на приличном уровне. Понимать, что такое эргодичность процесса, как мы можем получить коинтегрированность процесса и зачем на это вообще нужно, кто такие Виннер и Хопф и чего такого полезного они сделали...

                                            +3

                                            Я думаю, вопрос не в (не)нужности непрофильных предметов, а в масштабах их преподавания. Я иногда отвисаю в одной технической группе, и туда иногда заходят организмы с просьбой помочь…
                                            Смотришь, значит, в задание и какое-то оно подозрительное. Выясняешь, ну точно, "зачётное" а ВУЗе или техникуме. Начинаешь индивида чморить… так знаете как он оправдывается?
                                            По философии много задали!!! Не успеваю сделать ОТЭЦ!!!
                                            Удивляюсь: "Так ты на филосо́фа учишься или на инженера? Если уж так не успеваешь, купи философию, а по специальности сделай сам..."
                                            Так ФИЛОСОФИЮ ПОКУПАТЬ НЕЛЬЗЯ!!! Потому что сдавать её устно, а электричество письменно, а т.к. задачи типовые, то хрен кто проверит сам сделал или списал.
                                            Я, конечно, понимаю что "не успеваю" это отговорки. Но приоритеты понятны. Философия важнее т.к. её строже спрашивают.
                                            Такие дела...

                                              +2
                                              Выясняешь, ну точно, «зачётное» а ВУЗе или техникуме
                                              На киберфоруме таких много больше половины вопрошающих.
                                              Начинаешь индивида чморить… так знаете как он оправдывается?
                                              По философии много задали!!! Не успеваю сделать ОТЭЦ!!!
                                              А вот тут не беспокойтесь. Философу он отмажется словами «да я код всю ночь писал, когда мне вашу философию делать было?..»
                                              Тут главное не перепутать, кому цветы а кому мороженое, и как минимум до сессии все будет хорошо.
                                                +4
                                                Да куда уж там. Обычно по левым предметам и спрашивают как по самим строгим профильным. Я так не ни каком предмете не потел, как на метрологии и ОБЖ (БЖД).
                                                  +3
                                                  Потому что преподаватель понимает всю бессмысленность своего существования, обижен на кафедру за то, что его отправили принимать у каких-то ничего не знающих математиков (или кого там), и в целом скорее всего имеет не очень высокий уровень знаний (что зачастую и является причиной предыдущего пункта). И срабатывает такая разновидность синдрома вахтера. Это совершенно логично и ожидаемо. В результате страдают все — и студенты которые зубрят то, что им никогда не понадобится и вообще не интересно, и преподаватели, которым приходится рассказывать что-то, что никому из слушающих неинтересно и забудется сразу после зачета/экзамена.
                                              0

                                              У нас были эти предметы, из них помню только храп аудитории на 300 человек.


                                              Ну и кому это нужно было в итоге? Если человеку предмет неинтересен, то не надо в него вдалбливать его насильно. Западные программы это понимают, там обязательное только ядро, остальные дисциплины набираются факультативно самостоятельно.

                                            +4

                                            Бред несёте.

                                              –1
                                              который не может связать двух слов
                                              Попробуйте спросить у филологов или историков, есть ли у них в вузовской программе математика? Хоть какая-нибудь, самая лайтовая и завалящая? Спойлер — нет, от слова совсем. Они по вашей логике не способны посчитать дважды два.
                                              Школьного образования должно быть достаточно для овладения предметом на уровне, пригодном для обывателя-неспециалиста. Напомню, что один из выпускных экзаменов — сочинение.
                                                +11

                                                Омг, курс высшей математики в вузах является общеобразовательным и на первом курсе есть даже на гуманитарных факультетах. В МГУ на филфаке предмет «математика и информатика» идет 1.5-2 года

                                                  0
                                                  Ну только ведь у «сиплых»?
                                                  Сколько помню, на русском отделении никакой математики не было.
                                                  +44
                                                  Закончил истфак. Весь первый курс была линейная алгебра, весь второй курс — комбинаторика и тервер.
                                                  И да, я считаю, что студенты, которые учатся на технических специалистов, должны изучать в университете необходимый минимум гуманитарных предметов. Уверен, это убережет их от узкости мышления, выражающейся в безапелляционных суждениях, которые я наблюдаю довольно часто. На том же хабре это, увы, встречается повсеместно, особенно в дискуссиях на темы, отличные от технических.
                                                    +1
                                                    Не могу поставить плюс, так что поддерживаю на словах.
                                                    К сожалению, проблема ещё и в преподавателях – на гуманитарные кафедры в технические вузы идут те, кто не смог больше никуда. За десять лет высшего образования (институт плюс аспирантура) встретил всего двух преподавателей-гуманитариев, с которыми было действительно интересно. К счастью, один из них был в аспирантуре и вёл философию, так что на свою диссертацию я уже смотрел с учётом критерия Поппера=)
                                                    Если серьёзно, гносеологию надо было бы читать с первого же курса, причём всем. Но увы(
                                                      +3
                                                      У нас в магистратуре был обратный случай: на кафедре промэлектроники появился доктор философских наук, которая преподавала синергетику. И что самое удивительное, она хоть и заканчивала эту кафедру 30 лет назад, но потом занималась исключительно философией и синергетикой. Почему этот преподаватель оказался приписан к этой кафедре?
                                                      И нам на полном серьёзе читали курс целый семестр, заставляли ходить и отмечаться, выполнять задания, хотя у всех студентов была работа на полставки, была куча важных технических предметов.

                                                      Потом выяснилось, что препод-профессор была (или есть) женой завкафедры. Может, конечно, она появилась у нас после 2-х семестров философии, чтобы закрепить материал и рассказать про точки бифуркации и какая наука синергетика самая важная, сильная и ключевая в развитии специалиста. Но чот мне кажется, что нет.
                                                        0
                                                        Синергетика — вообще популярный сейчас предмет, к сожалению. Нам её тоже рассказывали в магистратуре, причём преподаватель был вообще с другой кафедры, а занятия шли в тридесятом корпусе.
                                                      +1

                                                      Почему изучение, скажем, физики и математики не убережёт, а изучение некоторого минимума гуманитарных предметов убережёт?

                                                        +2
                                                        Таки физику и математику гумманитариям тоже дают.
                                                          0
                                                          Непонятно, как это отвечает на мой вопрос.
                                                            +2
                                                            Прямо.
                                                            В современном мире специалист только в одном — нужен мало кому, особенно, если про окружающий мир имеет познания уровня плоская земля. В том числе и о том, как выстраивать общение с прочими. Если конкретно вам это не нужно — ок. Но кроме вас в конторах работают те, кто общается с клиентами, управляет, принимает решения.
                                                              +3
                                                              В современном мире специалист только в одном — нужен мало кому, особенно, если про окружающий мир имеет познания уровня плоская земля.

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


                                                              В том числе и о том, как выстраивать общение с прочими.

                                                              10 лет в школе, 6 лет в вузе, общение с преподами и сверстниками меня, значит, этому не научит, а семестр социологии и семестр психологии резко сделают мои скиллы приемлемыми?


                                                              Но кроме вас в конторах работают те, кто общается с клиентами, управляет, принимает решения.

                                                              Тем, кто общается с клиентами и принимает (продуктовые) решения, не нужен этот мой сиплюсплюс (или этот мой линал, или эта моя абстрактная алгебра, или этот мой теорвер, или эта моя теория типов).

                                                                +2
                                                                нет, они вам не позволят забыть, что кроме вашего направления есть прочие.
                                                                ну или вам нужна не вышка, а образовательные курсы.
                                                                и да, решать кому и что надо, особенно когда люди ещё даже толком не работали — это сильно. это сразу заточка узких спецов под непонятно что. ибо в реальности они никому не будут нужны
                                                                  0
                                                                  нет, они вам не позволят забыть, что кроме вашего направления есть прочие.

                                                                  А кто-то забывает так, что начинает от этого страдать?


                                                                  и да, решать кому и что надо, особенно когда люди ещё даже толком не работали — это сильно.

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


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

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

                                                                    +1
                                                                    Так у каждого спеца свой набор навыков, который ему пригодится по жизни. Если делать по тому, что кому пригодилось — вы будете учиться 20 лет и ещё больше получите не нужных лично вам навыков.
                                                                    Предполагается, что люди идут в вуз, понимая, что они хотят от жизни. Если человек не знает, хочет он быть программистом или культурологом, то в вуз идти рано.
                                                                    А что, обучившись на программиста человек не может стать менеджером или ПМом, где умение программировать не всегда главное?
                                                                    Нет. Не надо выкидывать матан, заменив его на курсы по эджайлу, ноде.жс и тензорфлоу.
                                                                    А кто то считает, что — надо. А кто-то за третий набор навыков. И все эти люди — тоже программисты.
                                                                    А кто-то забывает так, что начинает от этого страдать?
                                                                    Судя по хабру — большая часть этим наслаждается. Но при этом мнение не по своей проф.деятельности имеют сплошь экспертное…
                                                                      +2
                                                                      Так у каждого спеца свой набор навыков, который ему пригодится по жизни. Если делать по тому, что кому пригодилось — вы будете учиться 20 лет и ещё больше получите не нужных лично вам навыков.

                                                                      Так я до сих пор не могу понять, почему выбирается некоторое конкретное их подмножество (а не финансовая математика или лингвистика) и объявляется, что это решает какие-то проблемы.


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


                                                                      1. Потому что востребованы люди с широким кругозором.
                                                                      2. Чтобы люди помнили, что они не сосвем спецы [в изученных гуманитарных предметах] (и, видимо, чтобы в интернет-срачиках не выпендривались).
                                                                      3. Чтобы люди могли связать два слова.

                                                                      Наверняка я что-то забыл ещё.


                                                                      А что, обучившись на программиста человек не может стать менеджером или ПМом, где умение программировать не всегда главное?

                                                                      Может. Пойдёт и выучит, что там надо выучить.


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


                                                                      А кто то считает, что — надо. А кто-то за третий набор навыков. И все эти люди — тоже программисты.

                                                                      Мы обсуждаем сами необходимые навыки на object level, или то, как люди выбирают нужные навыки, на meta level? Это два немного разных вопроса, не надо их смешивать.

                                                                        0
                                                                        Наверняка я что-то забыл ещё.

                                                                        Для возможности коммуникации с люди, имеющих другую специализацию. Чтоб человек вообще понимал, что от него хотят. Ну и чтоб они при общении хоть как-то друг друга понимали. Заточить человека на заворачивание гаечек на конвейере проще, чем на проектирование конвейеров.
                                                                        Может. Пойдёт и выучит, что там надо выучить.
                                                                        Тогда уже будет поздно. То есть он до этого уровня даже не поднимется.
                                                                        Вот вы научились общаться с другими людьми и выстраивать отношения в реальности?
                                                                        Это два немного разных вопроса, не надо их смешивать.
                                                                        Так наоборот, все тут эти вопросы смешивают с аргументацией уровня «мне не пригодилось, значит никому не надо», а не «я специалист в области образования, так вот факты 1, 2 и 3».
                                                                          +3
                                                                          Для возможности коммуникации с люди, имеющих другую специализацию.

                                                                          Ну вот мне надо было фьючерс от опциона отличать — я потратил день на чтение релевантных вещей и понял.


                                                                          Надо было понять, о чём речь в алгоритмах по биоинформатике — потратил чуть больше времени, но тоже понял. Даже без вузовских курсов по генетике, протеомике, органической химии и спектрографии (или -метрии, хрен её знает).


                                                                          Надо было приятелю замоделировать там что-то — почитал про физическую суть процесса, понял, замоделировал.


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


                                                                          Ну и вообще есть вопросы к тому, насколько часто эти гуманитарные предметы вылезают на стыках дисциплин, ну да ладно.


                                                                          Тогда уже будет поздно. То есть он до этого уровня даже не поднимется.

                                                                          А мы говорим о ресёрч-левел-работе в междисциплинарной лабе?


                                                                          Вот вы научились общаться с другими людьми и выстраивать отношения в реальности?

                                                                          Вы меня прямо разочаровали, я конкретно этот аргумент ожидал раньше.


                                                                          Ну, во-первых, по рабочим вопросам всё вполне себе. Да, я тоже делаю ошибки, но я не думаю, что семестр чего-то там мне бы помог. Тем более, что тут вопрос альтернативных издержек — что полезнее, семестр психологии или семестр дополнительных глав дискретного анализа?


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


                                                                          Так наоборот, все тут эти вопросы смешивают с аргументацией уровня «мне не пригодилось, значит никому не надо»

                                                                          Урматы, квантмех и статфиз мне тоже не пригодились, но против них я не топлю, например.


                                                                          а не «я специалист в области образования, так вот факты 1, 2 и 3»

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

                                                                            –2
                                                                            Ну вот мне надо было фьючерс от опциона отличать — я потратил день на чтение релевантных вещей и понял.
                                                                            Ок, вперёд и в школы объяснять. И так все предметы.
                                                                            Надо было понять, о чём речь в алгоритмах по биоинформатике — потратил чуть больше времени, но тоже понял.
                                                                            Я ж правильно понял, что кроме математике вас ничему с младенчества не учили и вы успешно всё сами?
                                                                            Надо было приятелю замоделировать там что-то — почитал про физическую суть процесса, понял, замоделировал.
                                                                            И базиса у вас никакого никогда не было.
                                                                            Ну и вообще есть вопросы к тому, насколько часто эти гуманитарные предметы вылезают на стыках дисциплин, ну да ладно.
                                                                            Они общие и перпендикулярны основному направлению.
                                                                            А мы говорим о ресёрч-левел-работе в междисциплинарной лабе?
                                                                            Мы говорим о том, что узкий специалист не вырвется из своей узкой специализации и в том числе потому, что не будет понимать ничего прочего. И даже что это ему вообще надо.
                                                                            Ну, во-первых, по рабочим вопросам всё вполне себе. Да, я тоже делаю ошибки, но я не думаю, что семестр чего-то там мне бы помог. Тем более, что тут вопрос альтернативных издержек — что полезнее, семестр психологии или семестр дополнительных глав дискретного анализа?
                                                                            А это зависит от того, что вы всё планируете делать исключительно сами или всё таки в команде разных специалистов? Особенно, если область знаний вообще левая относительно вашего образования. Например, в химии занимаетесь разработкой научного ПО.
                                                                            Во-вторых, межличностные отношения в нерабочих плоскостях — это, ну, немного другое. Вы не учите родной язык по учебникам, вы учите родной язык, находясь в обществе других людей. Да и, говорят, иностранные языки лучше и эффективнее учить в среде, а не по учебникам.
                                                                            В межличностных отношениях учебники и язык вообще дело десятое.
                                                                            Вы меня прямо разочаровали, я конкретно этот аргумент ожидал раньше.
                                                                            Потому что с точки зрения общества — оно весьма сомнительно потратили средства на ваше образование, ибо ветвь тупиковая получилась. Хотя по конкретным задачам вы и решили задачи и принесли прибыль, но это сиюминутное, а не общее. А так глядишь, смогли бы ещё 1-2 хороших члена общества оставить выше среднего уровня.
                                                                            Для меня лично куда больший интерес представляет обсуждение, почему люди считают, что те или иные предметы нужны или не нужны.
                                                                            Да по мне хоть семестр средневековой поэзии, лишь бы это было в бок от основного для переключения мозгов.

                                                                            Философию и уж тем более её историю — ненавижу, да. Особенно за два семестра И экзамен. Вот там бы именно научные принципы вдалбливать, это да. А всё прочее — по сути это переключение мозгов с узкой специализации.
                                                                              +1
                                                                              Ок, вперёд и в школы объяснять. И так все предметы.

                                                                              Я не понял этот аргумент.


                                                                              Я ж правильно понял, что кроме математике вас ничему с младенчества не учили и вы успешно всё сами?

                                                                              На самом деле с младенчества меня учили в основном физике, а математику я ненавидел курса до первого-второго.


                                                                              Всю био- часть, да, сам, на достаточном для понимания уровне.


                                                                              Впрочем, ту математику, что мне сейчас интересна, я тоже как-то в основном сам.


                                                                              И базиса у вас никакого никогда не было.

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


                                                                              Они общие и перпендикулярны основному направлению.

                                                                              Что это значит? Что они будут везде вылезать на любом стыке? Или что?


                                                                              Мы говорим о том, что узкий специалист не вырвется из своей узкой специализации и в том числе потому, что не будет понимать ничего прочего. И даже что это ему вообще надо.

                                                                              Так а это-то на самом деле ему надо? И в какую из 100500 прочих дисциплин мы будем готовить вырыва… вырва… переход?


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

                                                                              Это значит, что я спрошу у химиков рекомендованную литературу и пойду её почитаю.


                                                                              Кроме того, у меня есть некоторые соображения, что те дисциплины, которые с программированием вообще могут хоть как-то стыковаться, для них математика — этакая lingua franca. Поэтому да, математика, а не культурология и не социология.


                                                                              В межличностных отношениях учебники и язык вообще дело десятое.

                                                                              Именно! Так помог бы мне курс социологии быть романтически успешным?


                                                                              Потому что с точки зрения общества — оно весьма сомнительно потратили средства на ваше образование, ибо ветвь тупиковая получилась. Хотя по конкретным задачам вы и решили задачи и принесли прибыль, но это сиюминутное, а не общее. А так глядишь, смогли бы ещё 1-2 хороших члена общества оставить выше среднего уровня.

                                                                              Да, чё-то давненько не было тредов про смысл жизни.


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


                                                                              Во-вторых, опять же, вопрос альтернативных издержек — что эффективнее, потратить несколько лет на решение каких-то задач или на семейные дела?


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

                                                                              Ну так вам в ваше личное время никто не запрещает переключать мозги так, как угодно вам, хоть физкультурой, хоть этанолом. Зачем остальным это навязывать?

                                                                              +1
                                                                              во первых Вам было где почитать эту релевантную инфо, да еще и так хорошо структурированную, что вы смогли ее понять за день другой. В современном мире, особенно ИТ далеко не всегда так везет. Иногда за время жизни ИТ продукта так и не выходит сколь нибудь грамотно структурированного справочника по нему. С академическим стилем, внятным понятным изложением и т.д. Согласитесь, приятно же когда есть люди, которые так научены, что их труды приятно и, это главное, эффективно читать, чем, к сожалению далеко не все овер1000строчные ИТ труды могут похвастаться. И я понимаю что семестр культурологии успешно прогулянный вряд ли сделает из студента писателя, но подскажут где могут находится те двери, через которые надо пройти что бы копать в тех направлениях при необходимости
                                                                                0
                                                                                Но так как научить всему по чему нет внятного справочника невозможно, то и аргумент это бессмысленный. Да и учить чему-то по чему нет внятных учебных пособий вообще не то чтобы сильно просто, что только усугубляет.
                                                                                Ну и семестр культурологии, как я уже писал где-то тут в комментариях, хоть и покажет где копать, но если человек не воспользуется этим знанием сразу, то уже к концу обучения знаний где копать у него уже не будет. Как вы думаете какой процент студентов воспользуется знаниями по культурологии (например) пока эти знания еще будут?
                                                                                  0
                                                                                  сама культурология мне не пригодилась. Время же зря потрачено не было — я его проспал, что запишу в скорее в актив. Но во первых — выработалась некоторая стрессоустойчивость к чужой предметной области, что сейчас играет в плюс при работе с гуманитарно-ориентированными клиентами. Во вторых когда я все таки просыпался я получал наглядный пример другого образа мышления, в других, не математических, образах. Это вот ценное — не замыливаться на привычном, искать альтернативные решения. Кардинально альтернативные. Это чем то сродни переходу с процедурного на объектно-ориентированный язык. И брагодарю за ЧЮ)
                                                                                  0
                                                                                  В современном мире, особенно ИТ далеко не всегда так везет.

                                                                                  Так мы же говорим о других дисциплинах, разве нет?


                                                                                  Да и словари, как правило, давно устоялись. А нужно это скорее именно как словарь, чтобы понимать, о чём другие специалисты в команде говорят.


                                                                                  Иногда за время жизни ИТ продукта так и не выходит сколь нибудь грамотно структурированного справочника по нему. С академическим стилем, внятным понятным изложением и т.д.

                                                                                  Я совсем потерялся. Причём справочники по IT-продуктам к прочим дисциплинам?


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

                                                                                  А я и не претендую и не собираюсь претендовать на должность писателя документации. Даже если бы у меня был необходимый бекграунд.

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

                                                                        Это, скорее, вопрос словаря (который я уже снова не помню, к слову об эффективности сторонних курсов).


                                                                        Кстати, математика — она большая. Я могу что-то там понимать в логике и алгебре, но быть бесконечно далёким от численных методов и уравнений в частных производных.

                                                                        0
                                                                        Конечно не нужен, а в следующий раз не надо удивлений, когда у вас просят семь взаимоперпендикулярных линий вчера.
                                                                          0

                                                                          У меня и в прошлые разы не просили.


                                                                          Наверное, стоит выбирать те места для работы, где ответственность разделяется эффективно.

                                                                          0
                                                                          Ну да. Если я программист на сиплюсплюс и иду писать HFT-системы, то мне придется немножко стать специалистом по биржам и финансам. А если я иду писать парсеры человеческих языков, то мне будет нужно немножечко лингвистики. В какой области будет цениться мое знание социологии, культурологии или философии науки?


                                                                          Не специалистом, а студентом, который получил представление об этих дисциплинах в рамках обучающей программы.
                                                                          А в результате, будет больше программистов, которые смогут вместо задрачивания условного «pixelperfect», просто потому что они знают только сиплюсплюс, правильно расставлять приоритеты в бизнес проекте.
                                                                            +1
                                                                            Не специалистом

                                                                            Не претендовал и не собирался.


                                                                            А в результате, будет больше программистов, которые смогут вместо задрачивания условного «pixelperfect», просто потому что они знают только сиплюсплюс, правильно расставлять приоритеты в бизнес проекте.

                                                                            Из-за знания философии? Культурологии? Истории России?


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

                                                                    0
                                                                    Возможно, мне стоило уточнить, что я говорил о суждениях на не технические темы. Если иметь это ввиду, то ответ станет очевиден — чем больше человек разбирается в теме, тем менее вероятно он будет мыслить стереотипно и узко. Или если ещё проще — в исторической/политической/социологической дискуссии исторические/политологические/социологические знания более релевантны, чем значение физики и математики.

                                                                    То, что знание математики и физики больше пригодится, например, в обсуждении схемы платы никто не спорит. Проблемы начнутся тогда, когда люди, вооружёнными только этими знаниями, будут претендовать на экспертное мнение в социально-гуманитарных вопросах.
                                                                      +1
                                                                      Или если ещё проще — в исторической/политической/социологической дискуссии исторические/политологические/социологические знания более релевантны, чем значение физики и математики.

                                                                      Тогда возникает два вопроса.


                                                                      1. Разумно ли ожидать от вуза того, что он «технарям» будет давать историю-политику-социологию, например, исключительно для поддержания уровня дискуссии в этих вещах. Впрочем, я этот вопрос уже задал выше, но люди с ним, по-видимому, несогласны :(


                                                                      2. Действительно ли семестр каждого из этих предметов способен на что-то качественно повлиять.



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

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

                                                                        0
                                                                        Действительно ли семестр каждого из этих предметов способен на что-то качественно повлиять.
                                                                        У меня есть впечатление что может. Но только ввиде «я начал понимать что читать чтобы разобраться». То есть за семестр можно понять как вообще к предмету подступиться, что входит в этот предмет, какие есть авторитетные учебники по предмету — что-то такое.
                                                                        Другое дело что если сразу же после (или во время) не взяться за самообразование, то я уверен что 95% студентов через полгода забудут вообще все что давалось. Так что смысл достаточно сомнителен даже если ответ на вопрос 2 «Да».
                                                                          0
                                                                          Но только ввиде «я начал понимать что читать чтобы разобраться». То есть за семестр можно понять как вообще к предмету подступиться, что входит в этот предмет, какие есть авторитетные учебники по предмету — что-то такое.

                                                                          Есть такой лайфхак — посмотреть список литературы по этому предмету у более профильных кафедр/курсов/вузов.

                                                                            0
                                                                            Понятно что потратить на сторонний предмет целый семестр — это не единственный способ. Я скорее попытался вообще найти как это может работать, то что это все равно не имеет смысла я согласен.
                                                                          +1
                                                                          Кроме временного параметра (семестр) есть еще и качество изложения, уровень преподателя, база для обучения, в связке с какими предметами идет целевой (к примеру гуманитарный), и вообще достаточность методики для успешного приобретения навыков, если такие требуются. К примеру для понимания принципов дифференциально-интегрального исчисления нужно 2 часа, для приобретения устойчивых навыков использования 2 года. Но это лирика. Понятно что ВУЗ не может гарантировать успешного специалиста, слишком много печальной реальности. Но он делает что то, что по его мнению приближает к специалиста к успешности.
                                                                            +1

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

                                                                              0
                                                                              Ох, у вас тоже такой был? Я правда не помню где я с таким персонажем сталкивался, как бы вообще не в Красноярском ВУЗе.
                                                                                0

                                                                                Он у нас бывшим воякой ещё был. Вдруг у вас тоже?

                                                                                  0
                                                                                  Вроде бы да. Это видимо профессиональная деформация какая-то.
                                                                            0
                                                                            >Действительно ли семестр каждого из этих предметов способен на что-то качественно повлиять.

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

                                                                              Это называется "гносеология" или "эпистемология". И в рамках предмета "философия" их обычно не проходят, несмотря на то что они являются разделами философии.

                                                                                0
                                                                                Это в курсе философии для аспирантов, что подтверждает стремление учащегося заниматься исследованиями.
                                                                                0

                                                                                Только философии не было в этом списке.


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

                                                                          +3
                                                                          ВУЗ должен готовить специалистов. А Вы предлагаете часть программы по подготовке специалистов отдать на развитие кругозора. Ну были у нас т.н. «развивающие» предметы, и по большей части на них балду пинали. Потраченные впустую академические часы, которые можно было отдать, к примеру, на нечто вроде «курса молодого бойца»: студенты поступают в университеты с различными уровнями подготовки по математике и физике, — кто-то поступает не по баллам ЕГЭ, а по целевому или контракту, — и то время, которое тратится на эту чушь собачью, можно было бы потратить на подтягивание студентов. Например, первый семестр матанализа пустить на изучение и закрепление материала мат. анализа 11 класса физмата. Насколько мне известно, в некоторых ВУЗах так и делают.

                                                                          Кругозор, общее развитие — это все семья и школа.
                                                                            +3
                                                                            вы описали колледжи и технари
                                                                              0
                                                                              Нет, они не дают фундаментального образования.
                                                                                0
                                                                                Так значит ВУЗы должны выдать не узкого специалиста? А готового работать в науке или на стыках дисциплин?
                                                                                И вообще, вон ниже человек ненавидит математику. Тоже вычеркиваем?
                                                                                  0

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


                                                                                  За ненависть к математике вычеркиваем, конечно!


                                                                                  Хотя я вот урматы ненавижу и чуть не вылетел из-за них, кек.

                                                                                0
                                                                                Да нет, колледжи и техникумы тут ни при чем. Я исключительно про ВУЗы.
                                                                                  0
                                                                                  Но описали вы именно их, требуя того же от ВУЗов, хотя у тех другие задачи.
                                                                                    +10
                                                                                    Каждый раз одно и то же. Каждый раз «не хотите философию/культурологию — идите в ПТУ, а не в ВУЗ». Ну так дайте, дайте мне тот самый ПТУ, где меня научат на высшем уровне программированию и смежным наукам без всего этого бесполезного ГОВНА! А гуманитарщина в технических вузах, напиханная туда для галочки — это именно бесполезное ГОВНО на котором пинают балду, которое отбирает ценные академические часы у профильных предметов и несет лишний стресс на сессиях, так как преподы там обычно особо злые от осознания собственной бесполезности. Дайте мне такое ПТУ и я туда радостно пойду.

                                                                                    Но хрен там. НЕТУ ИХ. Ну во всяком случае не было когда я поступал, не думаю что сильно ситуация изменилась сейчас. Вот и приходится идти в ВУЗ и страдать безальтернативно.

                                                                                    Да, это наверное проблема системы образования, что выбора нет. Но бьет она в итоге по ученикам.
                                                                                      0
                                                                                      Ваш оппонент имел в виду ВТУЗы. Я не знаю, есть ли приличные по программированию в данный момент в РФ. Когда то было несколько очень сильных по физике в союзе.
                                                                                  +5
                                                                                  Нет, различие между ПТУ и ВУЗом не в том, что в ВУЗе учат вообще всему. Различие в том, что в ПТУ должны учить практическим навыкам и теории только на том уровне чтобы можно было дать эти практические навыки. А в ВУЗе дается в первую очередь теория и чуть-чуть практики для иллюстрации как эта теория применяется. Но и там и там это будет узкая область, и там и там готовят специалистов, а не людей эпохи возрождения. Это просто физически невозможно дать общее образование по всем возможным направлениям.
                                                                                0
                                                                                Вот расписание истфака МГУ.
                                                                                Где линейка? Я не там смотрю?

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

                                                                                PS. хабр ссылку ест, гад. ccs2.hist.msu точка ру, дальше найти несложно.
                                                                                  0
                                                                                  А я считаю, что учить в универе урезанную версию тех гуманитарных предметов, которые уже были пройдены в школе — маразм.
                                                                                  Ни один из непрофильных предметов не был нормально раскрыт, максимум это было похоже на повторение 1/3 того, что по ним давали в старших классах.

                                                                                  Чего действительно не хватает — так это актуальных знаний и практических занятий. Начинать изучение программирования с ассемблера, и иметь целых два практических занятия за 4 года: по обжимке витухи и по настройке роутера — вот в чем проблема.
                                                                                    0
                                                                                    очень зависит от преподавателя и программы обучения. Взять историю. В школе Вы читаете учебник. В ВУЗе Вам могут рассказать о методах работы с историческими документами, с теорией археологии, с доказательной базой и прочем. В идеале ученик должен остаться с ощущением что история — живая наука, где есть ошибки, методы оценок ошибок, переоценить знания полученные в школе как «скорее всего вероятно неточные» и получить собственное представление о том, что такое историческое знание. И после этого конечно да — то что учили в школе надо будет как минимум переосмыслить.
                                                                                      0
                                                                                      В школе Вы читаете учебник. В ВУЗе Вам могут рассказать о методах работы с историческими документами, с теорией археологии, с доказательной базой и прочем...

                                                                                      … но реально в ВУЗе студенты слушают лектора и читают конспекты.

                                                                                        0
                                                                                        да, такая лажа имеет место быть. Талантливых преподавателей мало, но если вдруг удается с таким пересечься, предмет начинает играть совершенно неожиданными красками. Мне повезло с преподавателем биологии, который ничего не заставлял учить и сходу развенчивал общепринятые биологические теории, указывая на то, где они работают и какие феномены они не могут описать. Показал что биология — не завершенная наука даже в своих базовых теориях, открыта для изменения, в чем нуждается, как именно моя прикладная деятельность может помочь в решении этих вопросов. Это не было учебником где автор прав, а ты дурак. Тебе предлагался творческий процесс где ты будешь полезен даже со своими сходящимися рядами, предлагай свои теории, ищи им подтверждения и опровержения. Но реальность большинства ВУЗов это лекции под диктовку и списанные курсовые с 0 заинтересованности в них, с этим я спорить не буду. Тут может лучше бы давали проф. предмета побольше, но ведь у них и на него нет толковых преподавателей.
                                                                                          0

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

                                                                                        0
                                                                                        А ещё учебник вузовский по истории окажется глубже проработан, не говоря уже о том, что только за школы ты эту историю два-три раза будешь учить, вот только в первый раз лайтовенько, второй раз уже поглубже, но в основном всё равно по верхам, а вот в институте ты вдруг понимаешь, что история в реальности не то гладкое школьное повествование, а столкновение кучи векторов, планов и идей.
                                                                                    +2
                                                                                    За филологов не скажу, но у лингвистов математика такая, что глаз дёргается)
                                                                                      0
                                                                                      У филологов есть математика на первом и втором курсе. Ребенок на 4 курсе филфак МГУ.
                                                                                      Также есть информатика, где проходили как запускать IE целый триместр.
                                                                                      +8
                                                                                      сразу ассемблер, чего мелочиться? Перед тем как учить нечто аморфное а-ля питон — стоит все же попробовать что-то более со строгой типизацией. И да… Pascal->Delphi

                                                                                      И сколько ваших студентов за последние пару лет устроились работать delphi-программистами?

                                                                                      и получить на выходе дрыща/слонопотамчика, который не может связать двух слов.

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

                                                                                      Потому как это уже не высшее образование, а «курсы по ...»

                                                                                      Нет, это «высшее» образование, после которого нужны «курсы по ...», потому что иначе никому ты не нужен со своим Delphi и без опыта работы.

                                                                                      кафедра должна сама искать себе гранты на развитие

                                                                                      Да что уж там! Студент вообще сам должен позаботиться о себе. Ведь задача ВУЗа «научить учиться», ведь как иначе-то? Разве ж «научишься учиться» без просиживания на парах культурологии, психологии, или ещё какой-нибудь «болтологии» в попытках сдать очередной зачёт престарелому маразматику, который хочет, чтобы ты знал наизусть названия всех полотен Рембрандта. Ведь всем известно: не один программист без этого не то что двух слов не свяжет, но и двух строчек кода не напишет. Вы правы.
                                                                                        +6
                                                                                        И сколько ваших студентов за последние пару лет устроились работать delphi-программистами?

                                                                                        Паскаль учат не для того, чтобы ученик выучил синтаксис языка, а чтобы показать основные приёмы, алгоритмы для решения тех или иных задач. А питон можно изучить самому дома, если есть желание. А от того, что ученикам покажут как делать циклы и условия в питоне — они не станут сразу программистами. Программирование — это, в первую очередь, нахождение алгоритмов для получения нужного результата, а только потом уже кодинг и всё остальное.
                                                                                        Сам не особо люблю паскаль, но рад, что моим первым языком был именно он — там есть многое, что пригодилось в будущем при изучении других языков — статическая типизация, область видимости переменных и прочее. Поэтому не понимаю, почему паскаль считают плохим для первого языка. Основы программирования хорошо на нём познаются.
                                                                                          +4
                                                                                          Программирование в подавляющем числе случаев — это нифига не алгоритмы, а решение прикладных задач. Поэтому наше образование «по матчасти» даёт хорошие результаты в исключительных случаях (олимпиадники и так далее), но в среднем — так себе.

                                                                                          И уж особенно если говорить про школу — этот Паскаль и иже с ними настолько далеки от реальности, что обьяснить ребёнку зачем оно надо (соответсвенно и мотивировать) — это уже даже задача вторая. Первая — не отбить желание на старте, используя допотопный и не нужный стек технологий, который без шаманизма даже и не запустишь.
                                                                                            +9
                                                                                            В чем именно эта реальность? Чему учит Питон и не учит Паскаль?
                                                                                              +9
                                                                                              Выпускник, свободно владеющий питоном, найдёт адекватную работу в разы быстрее, чем владеющих паскалем. И не рассказывайте сказки, как за неделю можно переучиться с одного на другое. Нынче важен не синтаксис и языковые конструкции, а окружение, библиотеки и прочее, никак не связанное с алгоритмами, а всё оно требует массу времени на овладение.
                                                                                                +1
                                                                                                Окружении и библиотеки конкретно пайтона важны если только в вузе человек учится на факультете пайтоноведения.
                                                                                                Человек умеющий писать алгоритмы и подбирать правильные структуры данных, в контексте задачи, всегда сможет разобраться с парой библиотек пайтона.

                                                                                                  +3
                                                                                                  Речь не о том, может или не может, а сколько времени это займёт, что бы человек был готов с этим работать не в позиции джуна, а повыше. И это далеко не неделя. На свободное освоение основных методологий на каждом конкретном языке уходит как минимум несколько месяцев, а чаще год-два. Вот и спрашивается, какого эти год-два люди тратят в универах, где и могли бы освоить основные навыки, необходимые на рынке труда. И нет, рынок не требует обход графов.
                                                                                                    +1

                                                                                                    В python можно налегать на фреймворки для какого-нибудь Machine Learning, или для WEB-разработки, или для системного администрирования… в ВУЗе все возможные фреймворки изучать углублено, или выборочно? А если через год спрос на Scala превысит спрос на Python, то резко переписывать все учебные программы?


                                                                                                    Университет дает фундаментальные знания в области, узкопрофильные знания идут либо спецкурсами на кафедрах (у меня, например, были всякие CUDA, MPI и прочие параллельные программирования в ВУЗе в качестве спецкурсов), либо в качестве самообразования во внеучебное время.


                                                                                                    Насчет требований рынка я бы не был столь категоричен, в R&D и всяких Labs весь университетский матан востребован.

                                                                                                      +9
                                                                                                      то резко переписывать все учебные программы?

                                                                                                      Внезапно, но да, нужно переписывать учебную программу. И внезапно, это и есть работа преподавателей, методистов. И ещё более внезапно — они и так этим занимаются, сто раз переписываю одно и тоже по новым стандартам минобразования. А могли бы и актуализировать эту самую учебную программу. Замена одного языка на другой не должна вызывать какие-то неимоверные затраты на обновление.

                                                                                                      Университет дает фундаментальные знания в области

                                                                                                      Каким образом изучение паскаля или всё того же питона мешает освоению фундаментальных знаний? Они ведь на то и фундаментальные… Так почему их не получать на чём, что имеет прикладное применение? Что может мотивировать студентов, которые увидят вакансии на условном «питоне» и поймут, что учат что-то полезное и востребованное.
                                                                                                        +5
                                                                                                        Замена одного языка на другой не должна вызывать какие-то неимоверные затраты на обновление.

                                                                                                        Так тут выше народ не про простую смену языка говорит, а про то, что к черту алгоритмы — давайте изучать фреймворки. Вот с этим я и не согласен, а какой синтаксис использовать — не принципиально.

                                                                                                          0
                                                                                                          Понял вас. Согласен, синтаксис не принципиален, а вот алгоритмы важны. Но опять же это не противоречит установке, что нужно учить не только фундаментальные знания, но и как-то уметь применять их на практике и после выпуска из ВУЗа быть готовым к работе специалистом. С этой точки зрения, посвятить времени каким-то актуальным прикладным вещам было бы не плохо.
                                                                                                            +1
                                                                                                            Для этого есть стажировка. Всё продуманно.
                                                                                                              +1

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

                                                                                                                0
                                                                                                                Стажировка максимум несколько месяцев(преддипломная, а то и месяц). Предлагаете потратить несколько недель(в лучшем случае) на изучение актуального ЯП, его инструментария и применяемых библиотек?
                                                                                                                Даже если студент будет достаточно сообразителен для этого, задание сложнее автозамены я бы ему не доверил.
                                                                                                    0
                                                                                                    Нынче важен не синтаксис и языковые конструкции, а окружение, библиотеки и прочее, никак не связанное с алгоритмами, а всё оно требует массу времени на овладение.

                                                                                                    Основной код тоже без своих алгоритмов писать будете? А разбирать ошибки в сторонних библиотеках- забьёте?
                                                                                                      +2
                                                                                                      Вы не поверите, но на реальной работе первые 2-3 года 90% джунов никаких сложных алгоритмов не пишут.
                                                                                                        +2
                                                                                                        Мне не надо от джуна сложных алгоритмов. Мне от джуна надо, чтоб он не выбирал три случайных элемента из вектора при помощи random_shuffle и понимал, почему. Вот об этом «нюансе» часто забывают, когда начинают холивар про «нужны ли программистам алгоритмы».

                                                                                                        И да, пример не придуман.
                                                                                                          0
                                                                                                          Интересно сколько на рынке такой работы для джунов, где вообще понятие «вектор» мелькает, кроме как на интервью.
                                                                                                            0
                                                                                                            Простите, ЧТО?
                                                                                                              0
                                                                                                              Да хотя бы то, что «вектор» это жаргонное обозначение массива в некоторых библиотеках. Векторными свойствами эти «вектора» не обладают.
                                                                                                                0

                                                                                                                Почему жаргонное? В C++ он, вообще-то, так и называется.

                                                                                                                  0

                                                                                                                  Потому что операции над ним имеют мало общего с операциями над математическим вектором.

                                                                                                            0

                                                                                                            ЕМНИП в андроиде так и делали, где-то в сорцах находили. И да, не вижу проблем так написать, если код не находится на hot path. var result = items.Shuffled().Take(3).ToArray() читается проще и понятнее, чем оптимальная реализация.

                                                                                                              0

                                                                                                              Простите, что? Чем не нравится вот этот, вполне оптимизированный код?


                                                                                                              Set<Object> getRandomThree(List<Object> list) {
                                                                                                                  if (list.size() <= 3) {
                                                                                                                      return new HashSet<>(list);
                                                                                                                  }
                                                                                                                  return new Random().ints(list.size()).distinct()
                                                                                                                      .limit(3)
                                                                                                                      .mapToObj(list::get)
                                                                                                                      .collect(toSet());
                                                                                                              }

                                                                                                              Что до hot path — не думаю, что всегда и у всех есть ресурсы отслеживать, когда что-то становится "горячим" после очередного изменения. При написании оно может и вызывалось раз в год, но спустя месяц кто-то возьмёт и применит это в более горячем месте, в полном соответствии с DRY.
                                                                                                              И по времени написания мой вариант от вашего отличается настолько мизерно, что проще сразу писать по-моему.

                                                                                                                0

                                                                                                                Это если у рандома есть метод ints. В моем языке, например, у рандома есть только GetBytesю

                                                                                                                  0

                                                                                                                  Да, это действительно серьёзная проблема.


                                                                                                                  public static IEnumerable<int> Ints(this Random R, int maxValue)
                                                                                                                  {
                                                                                                                      while (true)
                                                                                                                      {
                                                                                                                          yield return R.Next(maxValue);
                                                                                                                      }
                                                                                                                  }

                                                                                                                  Ну и если это действительно hotpath (в чём я сомневаюсь), то можно просто написать код явно, без функциональщины, имеющей довольно большой overhead:


                                                                                                                  T[] GetRandomThree<T>(List<T> list, Random random)
                                                                                                                  {
                                                                                                                      if (list.Count <= 3)
                                                                                                                          return list.ToArray();
                                                                                                                  
                                                                                                                      int first = random.Next(list.Count);
                                                                                                                  
                                                                                                                      while (true)
                                                                                                                      {
                                                                                                                          int second = random.Next(list.Count);
                                                                                                                          if (second == first)
                                                                                                                              continue;
                                                                                                                  
                                                                                                                          while (true)
                                                                                                                          {
                                                                                                                              int third = random.Next(list.Count);
                                                                                                                              if (third == first || third == second)
                                                                                                                                  continue;
                                                                                                                  
                                                                                                                              return new[] { list[first], list[second], list[third] };
                                                                                                                          }
                                                                                                                      }
                                                                                                                  }
                                                                                                                    0

                                                                                                                    Этого кода уже сильно больше, чем в первом варианте, а значит он хуже, если мы конечно же не считаем это миллион раз в секунду.

                                                                                                                  0

                                                                                                                  Лично мне не нравится тем, что результатом является Set. Лишняя и достаточно тяжёлая сущность. В чём проблема вернуть просто массив?

                                                                                                                    0
                                                                                                                    Мне кажется, или тут бага?

                                                                                                                    Random.ints() вполне может вернуть все значения одинаковые. Соответственно distinct() вернёт одно значение, и мы вернём клиенту один элемент из list, вместо трёх.
                                                                                                                      –1

                                                                                                                      Да, бага. Спасибо неочевидному API в Java. Должно быть, видимо, .ints(0, list.size()).

                                                                                                          +4
                                                                                                          Питон учит писать читаемый код. Это его основное достоинство для обучения. Программа с неправильными отсутпами просто не компилируется.
                                                                                                          Ну и второе — он автоматом сам более читаемый и проще для понимания.
                                                                                                            +7
                                                                                                            Правильные отступы — еще не залог читаемости :-)
                                                                                                              +1
                                                                                                              Согласен, видел ужасный код. Но все же, в большинстве случаев, код на питоне читаемей.
                                                                                                              +3
                                                                                                              Зависит от инициативности преподавателя. Заставить всех сдавать через кафедральный git и поставить хуки на вызов clang-format (нас заставляли прогонять через astyle) — вполне реально. Да, все студенты просто поповторят непонятные действия под копирку, но понятие о культуре останется.
                                                                                                              Языки с динамической типизацией проще для понимания? Может, если с самого начала учить, оно и нормально будет, но мне сложнее даётся чтение кода, где нельзя средствами статического анализа понять, что и откуда передаётся.
                                                                                                                0
                                                                                                                В таком случае, в номинации на самый читабельный язык Haskell теснит Пайтон влёгкую.
                                                                                                                  0

                                                                                                                  Ну так так ведь и есть.

                                                                                                                    0
                                                                                                                    Тоже так полагаю, однако, «в народе»(среди студентов и свежих выпускников знакомых как минимум) бытует мнение, что это эзотерика из разряда брейнфака
                                                                                                                      0
                                                                                                                      Насколько будет читабелен и просто код для генерации release notes из JIRA тикетов на Хаскеле и на Пайтоне (в котором библиотека для работы с JIRA ставится одной командой?)

                                                                                                                      Язык — не самое главное в современное время, важна инфраструктура. Иначе JS бы не взлетел.
                                                                                                                        0
                                                                                                                        Насколько будет читабелен и просто код для генерации release notes из JIRA тикетов на Хаскеле и на Пайтоне (в котором библиотека для работы с JIRA ставится одной командой?)

                                                                                                                        Какая разница? Release notes можно генерить как из джиры, так и из гитового репозитория. Связи с языком ровно ноль.

                                                                                                                    0
                                                                                                                    Ок, если говнокод на любом языке прогнать сквозь автоматическое форматирование отступов, он сразу становится более читаемым.
                                                                                                                    +3
                                                                                                                    Питон позволяет показать практику и решения прикладных задач, а не работу с кодом в вакууме
                                                                                                                    0

                                                                                                                    Но основы алгоритмов тоже нужны, чтобы при решении прикладных задач не возникали вопросы наподобие вот таких: https://ru.stackoverflow.com/q/826277/178779 (вопрос написан по мотивам четырех других, которые вызвали у меня неконтролируемую злость)


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

                                                                                                                      0
                                                                                                                      Представленный вопрос вообще никакого отношения к алгоритмам, по мне, не имеет. У человека будто отсутствует логическое мышление и представление о движении хода выполнения программы. До алгоритмов тут еще очень далеко. Ну или я чего-то упускаю, потому что не могут представить, что такие вещи могут быть непонятны. Меня вопрос даже в ступор ввел — как такое может быть непонятно? Этому в школе учат с помощью черепашек всяких. Отличие только, что записано на языке программирования.
                                                                                                                        0

                                                                                                                        А вот так. Вот клепал кто-то полгода формочки на WinForms или сайтики на JQuery — и тут в очередной задаче потребовался цикл… И сразу же то самое незнание основ вылезло. Да-да, именно "представления о движении хода выполнения программы" и нет.


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


                                                                                                                        А черепашка в школе тут ничему не научит — там все задания можно выполнить не вникая в их смысл, просто подгоняя программу под ответ. Чем большинство школьников и заняты.

                                                                                                                          0
                                                                                                                          Там вопрос нарочито простой и адекватный ответ дан тем же кто спрашивал с задержкой 0 минут. Профиль у человека вроде нормальный. Не знаю может быть это накрутка рейтинга или «перевод», не в курсе как это все устроено на SO. 100% вопрос задан не ради поиска ответа.
                                                                                                                            0

                                                                                                                            Спасибо, что признали меня адекватным :-)


                                                                                                                            вопрос написан по мотивам четырех других, которые вызвали у меня неконтролируемую злость
                                                                                                                        0
                                                                                                                        Ну это совсем основы, без них какая практика? :)
                                                                                                                          0

                                                                                                                          Ну так их же тоже нужно дать?

                                                                                                                            0
                                                                                                                            Я не совсем понимаю какое отношение это имеет к моему посту выше. Пример вопроса по ссылке это не про алгоритмы, это вообще базовая логика.
                                                                                                                              0
                                                                                                                              Ну так «алгоритмы» на Паскале дальше этой базовой логики и не проходят. Мы, во всяком случае, не проходили.
                                                                                                                        0

                                                                                                                        Художника не учат писать только маслом, или пастелью. Его учат общим правилам построения композиции, технике рисунка, постановки руки, что схоже с алгоритмами. А в "свободное" от лекций и семинаров, каждый выбирает, что делать самостоятельно. И в конце концов, художника оценивают не по диплому, или ВУЗу, а по его картинам.

                                                                                                                          0
                                                                                                                          Только вот 80% работы не для художников, а для маляров. А учат всех по программе художников, причём техниками 18ого века.
                                                                                                                            +1
                                                                                                                            Такая статистика, наверное, верна и в отношении программистов? ;-)
                                                                                                                        +6
                                                                                                                        Алгоритмы можно показывать на любом языке, не вижу причин, почему их нельзя показывать на каком-то из ТОП-5 гитхаба. Ну, причина тому скорее всего в том, что банально нет преподавателей, знающих современную разработку.
                                                                                                                          0
                                                                                                                          Алгоритмы можно показывать на любом языке, не вижу причин, почему их нельзя показывать на каком-то из ТОП-5 гитхаба.

                                                                                                                          Причина в том, что то, что меняется каждые 5-10 лет это мода. Попсе в образовании делать нечего. Преподаваться должна наука.

                                                                                                                          Во-вторых, для того чтобы не делать причина не нужна. Причина нужда для того чтобы что то сделать. Вы видите какую-то причину перейти на ваш любимый язык? Покажите ее. (Вход в ТОП-5 гитхаба не причина).
                                                                                                                          0
                                                                                                                          Паскаль в этом плане худшее орудие — там тонны произвола/легаси, у него нет живого комьюнити, все средства работы с ним достаточно громоздкие.

                                                                                                                          В нем никаких особых достоинств как средства обучения нет кроме того что так традиционно сложилось в вузах СНГ.

                                                                                                                          Если бы мы изначально брали язык для обучения алгоритмам это был бы диалект лиспа.
                                                                                                                          Если бы мы брали язык для легкочитаемости это был бы питон.
                                                                                                                          Если бы мы брали язык для самого быстрого фидбека это был бы js

                                                                                                                          У Паскаля просто нет преимуществ ни по одному из этих пунктов ни над одним из крупных языков

                                                                                                                          П.С.
                                                                                                                          Забыл напомнить, компиляторы Паскаля, мать их, проприетарные и платные. Или свободные, но плоходокументированные.
                                                                                                                          Это для академического инструмента уже как-то совсем неприлично

                                                                                                                          П.П.С.
                                                                                                                          И главное — ученик нифига не усваивает материал на уроке, он его усваивает сам. Паскаль это полная гарантия что ученик никогда ничего толкового для себя не закодит и если у него хватит наивности поверить что это и есть программирование — просто бросит.
                                                                                                                            +3
                                                                                                                            У паскаля есть большое преимущество — он не обременен многими глупостями и сложностями других языков. Джаваскрипт — хуже нет ничего, чем язык, где даже опытные люди себе в ноги стреляют. Питон — тоже, сильно расслабленный язык. Вообще, динамические языки для обучения азам сразу нет. Лисп — не изучал, ничего сказать не могу. Паскаль же строгий, простой язык, предельно очищенный он специфики языка, рантайма и прочего. Ученик на нем прекрасно поймет азы программирования, логику выполнения программ и как из кубиков if else while составлять программы. А практически все ошибки, кроме логики, будут наказаны строгим компилятором. Другие языки после этого будут уже вопросом синтаксиса и конкретных особенностей.

                                                                                                                            На замену ему нужно искать такой же строгий простой язык. Си может вполне подойти, если не лезть в его дебри, хотя тоже сильно расслабленная система типов местами.
                                                                                                                              0
                                                                                                                              Хм, а если на какой-нибудь Rust? )
                                                                                                                                0
                                                                                                                                Не жалко вам школьников/студентов? У них мозги в трубочку свернутся от правил владения, которые их непременно настигнут.
                                                                                                                                  0
                                                                                                                                  Не жалко вам школьников/студентов?
                                                                                                                                  Знаете, во времена моей бурной молодости, то бишь в школе стоял вопрос, будем классом учить Basic или Pascal. Мы выбрали второе, более слабые классы — первое. В институте, где я немного проучился, первый семестр был паскаль, со второго c++, на втором курсе курсач либо на VS, либо на Delphi.
                                                                                                                                  Так вот, на самом деле — не жалко, по направлению можно и серьезнее дать, быстрее соображать будут. Тут больше был вопрос про то, насколько задачи уровня «выведи в консоль сумму диагонали матрицы» будут сложнее на оном, чем на простых языках для обучения…
                                                                                                                                    0
                                                                                                                                    Так то и я после паскаля плюсы начал изучать и ничего, хорошо шло. Но все таки начинал с паскаля, когда программирование было вообще ноль. Rust надо действительно изучать на предмет проявления его сложностей с правилами владениями и прочими выкрутасами, которые и опытным людям мозг выносят. Потому что иначе это точно превратится в — у вас тут ошибка компиляции может быть, вот вам хак, чтобы компилятор не жаловался. Никто не будет объяснять ученикам это все, когда задача обучить if и while использовать. После паскаля вместо плюсов — вполне наверное пойдет. Будет и любопытный эксперимент, как подобная кардинальная смена мышления в плане владения ресурсами скажется на будущих программистах.
                                                                                                                                    0

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


                                                                                                                                    А вот когда придет время писать что-то посложнее — то без правил владения в любом случае никуда. Вся разница — в том, программисту за ними придется следить или компилятору.

                                                                                                                                  0
                                                                                                                                  … а потом свежеиспеченный Junior в новеньком императивном костюмчике встречает код на Akka/RxJS/Vertx и ломает об него мозг…
                                                                                                                                    +4
                                                                                                                                    И к чему это? Об эти ваши акки и реакты и я мозг сломаю, никогда не работав с этими конкретными фреймворками, даже с учетом, что идеи заложены в них довольно простые. Надо начинать с азов, а это процедурное программирование, if else while и вот это вот все, для чего паскаль отлично подходит. Про акторы пусть вон на курсах многопоточного программирования (я вот на MPI.net всякие интересные паттерны изучал) и распределенных систем рассказывают. Там и можно какой-нить фреймворк выбрать для примера, чтобы посмотреть в консольке как эти штуки работают, а не только в теории. Но лучше junior от этого их понимать не станет и универ из него чего-то большее подготовить не сможет. Для этого люди работать и идут, чтобы джуниором ломать мозг и учиться.

                                                                                                                                    Ежели вы предлагаете фреймворки в универе учить, то нахер такую программу обучения. Пустая трата времени, а специалист лучше из этого не получится. Тем более что фреймворк не угадаешь, и они постоянно устаревают.
                                                                                                                                    +7
                                                                                                                                    У паскаля есть большое преимущество — он не обременен многими глупостями и сложностями других языков.
                                                                                                                                    Но обременен своими. JS и питон не потому придумали что слишком просто было.
                                                                                                                                    А практически все ошибки, кроме логики, будут наказаны строгим компилятором.
                                                                                                                                    В том числе ошибки в самом компиляторе. Вот казалось бы — столько лет языку, можно же ждать что компилятор будет вылизан, так? А что в реальности в курсе? У нас было 3 основных компилятора (borland, freepascal и какой-то abc что ли, не помню точно название). 9 из 10 программ написанных на одном не компилировались на двух других. И это были программы уровня задачек на первом курсе, там ничего сложного не было. Прекрасно очищенный от всех не связанных с программированием проблем язык, не правда ли?
                                                                                                                                      0
                                                                                                                                      У нас было 3 основных компилятора (borland, freepascal и какой-то abc что ли, не помню точно название). 9 из 10 программ написанных на одном не компилировались на двух других.

                                                                                                                                      Может заодно припомнить и C\C++ с подобной проблемой.
                                                                                                                                        0
                                                                                                                                        У нас было 3 основных компилятора (borland, freepascal и какой-то abc что ли, не помню точно название). 9 из 10 программ написанных на одном не компилировались на двух других

                                                                                                                                        Странно, не представляю что нужно сделать чтобы программа написанная на Borland Pascal не скомпилировалась другими компиляторами. Вот в обратную сторону — запросто, язык-то развивается...

                                                                                                                                          0
                                                                                                                                          Я тоже не знаю (возможно знаю но забыл, не уверен). Но я рассказываю опыт моего потока. И это не было единичным случаем, это было правилом. Вроде бы что-то о том, что более современные компиляторы реализуют несколько измененный паскаль, который обратно не совместим. А обратно он не совместим потому что — ну кто будет об этом заморачиваться, обратная совместимость это дорогая штука за которую в данном случае некому платить. Так что я не удивлюсь если именно это и было причиной.
                                                                                                                                            0

                                                                                                                                            Ну а я говорю на основе своего опыта: язык остался обратно совместимым! В школе я часто ездил по олимпиадам, и мне было не важно на чём писать: на BP, на FP или на Delphi. ABC тогда уже был придуман, но особо слышно про него не было.


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

                                                                                                                                              0
                                                                                                                                              Ну значит либо вам повезло и тогда еще не было ничего сломано, либо вам повезло с задачами, либо нам не повезло с версиями компиляторов. Я не знаю что именно произошло и когда, мой опыт был в районе 2011-2013 годов.
                                                                                                                                                0

                                                                                                                                                Никакого везения, просто подходящие для обучения задачи. Если для решения задачи необходимо использовать платформо-зависимое API — эта задача не подходит для изучения азов программирования.

                                                                                                                                                  0
                                                                                                                                                  Я бы не назвал задачи которые специально подобраны так чтобы компилироваться во всех компиляторах — однозначно хороши для обучения. Для обучения нужны задачи на определенные алгоритмы, сложность, какие-то принципы. Работа во всех инструментах — это ортогональное к полезности для обучения свойство.
                                                                                                                                                    0

                                                                                                                                                    Типовая "задача на алгоритм" решается вот так:


                                                                                                                                                    1. Прочитали входные данные;
                                                                                                                                                    2. Применили алгоритм;
                                                                                                                                                    3. Вывели результат.

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

                                                                                                                                                      0
                                                                                                                                                      Все три шага могут компилироваться по разному. Чтение данных — любимый момент для падения вообще. Что применяется в алгоритме тоже может отличатсья.
                                                                                                                                                        0

                                                                                                                                                        Операторы чтения данных из BP работают и в более поздних версиях.

                                                                                                                                                          0
                                                                                                                                                          Ну хорошо если так. Мне не особо интересно раскапывать все три компилятора и проверять действительно ли все возможные операторы чтения данных будут работать одинаково.
                                                                                                                                                            –1

                                                                                                                                                            Еще раз, я помню делал программу, в pascal ABC была функция Milliseconds, а в borland pascal её не оказалось.